【发布时间】:2013-06-14 16:24:23
【问题描述】:
我正在尝试在我的 iOS 应用程序中使用 Tesseract OCR 库。我从 github 下载了 tesseract-ios 库,当我试图识别一个简单的文本图像时,我得到了垃圾。这是我试图识别的图像:
我收到了无法阅读的文字:
T0I1101T0W KIR1 H1I1101T0W KIR1 H1I1101T0W CIBEPS H1 ES PBHY P306 EHH11 133I R1 11335 11I1H1 19 13S SYIL 3B19 M H300H1911 H1113 AIR1 J1 OIII 3I9SH5H133IS 13V9 I1 Q1H211 E015 19 W331 H1 111SW
为什么 Tesseract 连简单的图像都无法识别?这是我用来实例化 Tesseract 的代码:
Tesseract* tesseractObject = [[Tesseract alloc] initWithDataPath:@"tessdata" language:@"eng"];
[tesseractObject setVariableValue:@"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" forKey:@"tessedit_char_whitelist"];
[tesseractObject setImage:image];
[tesseractObject recognize];
NSLog(@"RECOGNISED= %@" , [tesseractObject recognizedText]);
这是我的项目结构:
我通过引用添加了英文 testdata 文件夹。那么我做错了什么?我该如何解决这个问题?
【问题讨论】:
-
您是否包含所有 eng tessdata 文件,因为您的语言文件在扫描和获取字母形状时似乎无法正常工作
-
@AdamRichardson 请查看我的编辑。
-
您从哪里获取图像,它是您的应用程序包的一部分,是由应用程序从网站下载的,还是从相机中下载的?
-
你试过没有 [tesseractObject setVariableValue:@"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" forKey:@"tessedit_char_whitelist"];因为那是我的代码中没有的东西
-
也许你应该再试一次,但这次在白名单中包含小写字母...
标签: ios objective-c ocr tesseract