营养成分标签 OCR

信息处理 图像处理 ocr
2022-01-05 07:20:31

我的团队正在开发一个可以使用 OCR 读取营养成分标签的程序,就像NutriScanner一样(尽管从它的评论来看,它似乎并不是特别好用)。

我看到其他问题指出,在对图像运行 OCR 之前理顺图像是个好主意。有没有一个很好的图像库可以自动做到这一点?我环顾四周,发现了许多关于如何手动操作的 Photoshop 教程,但这不是我想要的。

我知道像 ABBYY 这样的 OCR 引擎内置了一些预处理功能,但我更愿意使用 Tesseract 和一个免费的预处理库拼凑出一个解决方案。

我还没有发现太多利用标签上物品的定位来提高扫描准确性的方法,但是任何建议都将不胜感激。

1个回答

去过也做过。我们正在进行的项目之一是创建一个流程,用于处理来自 iPhone 相机的营养标签,用于健康跟踪应用程序。我的公司决定为这一特殊应用开发一种解决方案——从美国营养标签中提取数据。此解决方案将用于此客户端,但我们决定在此过程中预先打包一些其他灵活功能,以供更广泛的受众使用。该解决方案将在大约 3 周内向公众提供。(我会回到这里并发布更新。)

实现或破坏整个想法的主要目标是获得可用的图像。弯曲的图像、严重的阴影、低分辨率和模糊都会大大降低 OCR 质量,通常甚至没有质量。在应用程序中,我们发现用户培训和指导是最有用的方法。然后是一些技术工具,例如快速检测图像质量并在需要时建议重新拍摄。一般来说,如果你能获得“高质量的燃料”(图片),你可以期待你的“机器”有高性能。

接下来,OCR。Tesseract 可以很好地阅读清晰简单的测试,例如书籍页面。诸如 ABBYY 之类的商业产品在处理粗糙图像方面表现出色——阴影、扭曲、小字体等。不幸的是,如果使用移动图像,它们往往是劣质的,而不是质量好的。

接下来,选择定位和提取数据的方法。请参阅我对文本解析与专业测试提取工具的回答: https ://stackoverflow.com/questions/3070732/processing-ocred-text 对于我们的项目,我们将使用ABBYY FlexiCapture来获取目标营养数据。即使在 OCR 出错时仍能找到合适的数据(某种受控模糊搜索),它也有特殊的工具,这是为任务选择它的一个重要因素。