【发布时间】:2012-08-10 16:08:36
【问题描述】:
我在我的 iOS 应用程序中使用 Tesseract OCR 3.01,当我从手机库中选择图像时,它显示我的数据准确率为 90%。但是,如果我使用相机中的相同图像,它会显示混乱的字母。我关注了this tutorial,请指导我是否可以做些什么来确保它在相机上工作,因为它适用于画廊图像。
【问题讨论】:
标签: ios xamarin.ios ocr tesseract
我在我的 iOS 应用程序中使用 Tesseract OCR 3.01,当我从手机库中选择图像时,它显示我的数据准确率为 90%。但是,如果我使用相机中的相同图像,它会显示混乱的字母。我关注了this tutorial,请指导我是否可以做些什么来确保它在相机上工作,因为它适用于画廊图像。
【问题讨论】:
标签: ios xamarin.ios ocr tesseract
是的,要具体说明三点,首先,OCR 对黑白图像效果很好,而不是彩色图像,所以如果你可以尝试将图像转换为黑白图像,它会提高准确性。
第二个是大小和方向,你需要强制图像为640*480或320大小,这样既可以提高识别速度,也可以提高准确率,对于方向,有很多管理方法。
最后,如果您可以允许用户指定他想要执行 OCR 的确切位置或图像的哪个部分,这将大大提高准确性和时间,因为库不需要检查整个图像文本,而不是您已经指定要搜索的部分。
PS:过去几周我一直致力于创建 OCR 应用程序。
【讨论】:
几乎可以肯定,问题在于“方向”。苹果倾向于以一种位图的形式创建图像——图像位的布局就好像相机在它的一侧,音量按钮在顶部和右侧。您看到的看起来更高而不是更宽的图像仍按上述方式布置,但图像中包含的 EXIF 对象中有一个“方向”。
我猜 tesseract 不查看 EXIF,但希望图像采用“标准”格式,以便文本处于阅读文本的位置。
您可以使用右上角音量按钮拍摄的相机图像来验证我的假设。
如果它们有效,那么您需要自己处理图像,并根据方向设置重新排列位。这并不难做到,但需要您阅读 vImage 和/或位图上下文。
【讨论】: