C# 在OCR之前,如何知道图像是否颠倒?如果需要变换或校正方向,如何知道90/180变换是否正确?
我正在处理多页扫描文本文档,并使用FineReader 12 SDK作为基础OCR引擎。有时,文档被倒置或不同方向扫描,导致所有识别字符都是无法识别的符号C# 在OCR之前,如何知道图像是否颠倒?如果需要变换或校正方向,如何知道90/180变换是否正确?,c#,abbyy,finereader,finereader12-sdk,C#,Abbyy,Finereader,Finereader12 Sdk,我正在处理多页扫描文本文档,并使用FineReader 12 SDK作为基础OCR引擎。有时,文档被倒置或不同方向扫描,导致所有识别字符都是无法识别的符号 在识别\分析\处理之前,是否有办法知道文档的方向是否正确 如何在文档上进行正确的变换或定位,而不是反复尝试 文档始终为英语,如果检测到的语言为英语,我们是否可以强制执行,并在此基础上进行转换 非常感谢您的帮助。可以使用自定义的.ini处理配置文件解决此问题。您可以使用正确的属性自动检测方向和倾斜,然后应用或禁止方向校正和/或倾斜 在发动机初始
非常感谢您的帮助。可以使用自定义的.ini处理配置文件解决此问题。您可以使用正确的属性自动检测方向和倾斜,然后应用或禁止方向校正和/或倾斜 在发动机初始化和识别之间的代码中,按照FRE文档中“使用配置文件”一节中的说明调用此方法
IEngine::LoadProfile
在项目中的某个位置创建一个新文件document.ini
,并将其传递给此方法调用,以便告诉SDK在处理文件之前检查此文件中的属性
在新创建的文件中添加以下行:
[PageProcessingParams]
PerformPreprocessing = TRUE <- allows engine to preprocess image
PerformAnalysis = TRUE
PerformRecognition = TRUE
[PagePreprocessingParams]
CorrectGeometry = TSPV_Auto
CorrectInvertedImage = TRUE
CorrectOrientation = TRUE <- correct orientation automatically
CorrectSkew = TSPV_Yes <- correct skew automatically
[OrientationDetectionParams]
OrientationDetectionMode = ODM_Normal <- detect orientation automatically
ProhibitClockwiseRotation = FALSE |
ProhibitCounterclockwiseRotation = FALSE <-| allow all orientations
ProhibitUpsideDownRotation = FALSE |
[PageProcessingParams]
PerformProcessing=TRUE
[RecognizerParams]
TextLanguage = English <- force english
LanguageDetectionMode = TSPV_No <- TSPV_Yes or TSPV_No are acceptable values