3

我正在使用 tesseract 3.0.0,但遇到了以下问题:

当某些东西太小而无法识别时,它似乎与其他片段合并。结果没有返回任何相关内容。

下图显示了 3 个案例。只有带有虚线的矩形被传递给 tesseract。矩形上方是结果(V 上方 T 表示换行)。

最后一种情况是问题。在这种情况下有什么办法可以改善 tesseract 吗?

在此处输入图像描述

4

1 回答 1

5

据我所知,Tesseract 还没有适当的图像分割(或文档分析,因为它在商业 OCR 应用程序中被称为)。通常,在完成 OCR 之前,图像被分割到包含文本、图片、条形码的单独区域, 线条等。然后,您仅在文本区域应用 OCR,而不会遇到您刚才描述的问题。

早期版本的 Tesseract 根本没有该功能,当您在从较大图像剪切的小文本片段上使用 Tesseract 时,它应该仅用作行识别器,或所谓的字段级识别器。

我没有完全遵循 3.0 中引入的内容,可能它已经部分存在,但显然它不能按预期工作,正如您刚刚发现的那样。

还有另一个开源项目 - OCRopus,它完全按照我的描述解决了这个问题 - 首先是 Document Analisys(又名 Segmentation),然后是 OCR。在 analisys 步骤完成后,他们的早期版本实际上是使用 Tesseract 进行 OCR。但后来他们引入了自己的 OCR(仍然不是很好)并将 Tesseract 插件支持移到优先级列表中。

以下是您实际可以解决的问题:

  • 如果您的图像具有非常典型的结构,您可以尝试在将图像传递给 Tesseract 之前自己进行一些愚蠢的分割并从图像中剪切文本。但是,如果您希望支持各种各样的图像,那就别管它了。
  • 您可以检查 OCRopus 并查看它们的分割是否适用于您的图像。如果是,那么您可以花一些时间让 OCRopus + Tesseract 一起工作。
  • 好吧,如果你所做的不仅仅是为了好玩并且你珍惜你的时间,我建议你考虑像 ABBYY 这样的真正的 OCR 引擎。您将获得开箱即用的分段和 OCR 的更高准确性,当然还有专业的客户支持。

免责声明:我为 ABBYY 工作

于 2011-02-10T10:14:14.720 回答