使用模糊文本改进 Tesseract OCR 结果

Posted

技术标签:

【中文标题】使用模糊文本改进 Tesseract OCR 结果【英文标题】:Improve Tesseract OCR results with blurred text 【发布时间】:2015-02-24 15:10:44 【问题描述】:

我正在研究印刷文本的 OCR 识别。我特别关注预处理步骤以改进Tesseract 引擎的结果。 我已经通过自适应阈值、噪声消除、文本校正等获得了很好的结果......但是当其他商业产品返回不错的结果时,Tesseract 似乎仍然失败。

我使用了以下测试图像,这是使用 Tesseract 3.04 与两个商业 OCR api 相比获得的结果。所有 3 种服务都提供了相同的二进制图像,其中包含一些稍微模糊的文本。

Tesseract

Careers in Technology Consulting

Networking Lunch
21 m 2014, 11:00 - 14:30

Definingthecorporatellstmtegy, Wammmwdngdeal, creating
uniquebwinessisighnwilgbigdam-doesflismflxemmyouafioy?

Findoutmoreabanhowitfeektomkasatedlflogymbyjoiningour

for further mm please visit mAeloittexom/weers

ABBYY Fine Reader Online

Careers in Technology Consulting
Networking Lunch
21 November 2014,1140-14:30
Defining the corporate IT strategy, planning a multHnKon <Mar outsourcing deal, creating unique business insights using big data-doesthis sound Ifce something you enjoy?
Find out more about hour it feels to work as a technology consultant by joining our exclusive networking lunch,
For further information please visit wrwMuleloittexom/carcert

Online OCR

Careers in Technology Consulting Networking Lunch 21 November 2014, 11;00 —14:30 
Defining the corporate IT strategy, planning a muiti-indlimi dollar outsourcing deal, creating unique business insights using big data—does this sound like something you enjoy? 
Find out more about how it feels to work as a tedmology consultant by joining our exclusive networking lunch, 
For further information' please visit wwwdeloitte,com/careers 

现在我想知道 Tesseract 和其他两个产品之间的巨大差距是由于不同的引擎(肯定 ABBYY 使用自己的引擎,不确定 OCR Web 服务)还是可以完成一些其他预处理步骤在运行 Tesseract 之前。你有什么建议吗?

【问题讨论】:

【参考方案1】:

这里是“神奇”OCR 预处理的建议。 为了解释所提出的预处理思想的原理,让我们考虑从提供的所有测试 OCR 都失败的文本图像的摘录:

并应用一些“预处理智慧”。首先是通常的阈值:

然后通过在单词元素中拍摄垂直线来检测最大的“魔法”。 2 像素高的“条”并在其边缘切割它们,同时将单词元素切割到其底线:

现在从通过该图像中的单词元素的射击线从垂直切换到水平,以便检测非常宽的“条”并将它们垂直切割到它们的宽度中间:

这应该有助于任何 OCR 引擎在此特定图像上提供更好的结果。我可以想象,一些商业 OCR 引擎使用这种方法已经能够提供比测试过的更好的识别。

在这种情况下,让我提一下 Ubuntu 存储库中提供的另一个免费 OCR 引擎(可与 tesseract 相媲美)。对它们进行相互测试,您可能会想知道它们是如何提供不同结果的,然后查看它们的源代码以了解:) 并从这种经验中推断出一些关于商业的东西。

sudo apt-get install cuneiform gocr ocrad

【讨论】:

以上是关于使用模糊文本改进 Tesseract OCR 结果的主要内容,如果未能解决你的问题,请参考以下文章

OCR纠错:如何结合三个错误结果来减少错误

有没有办法用小字体改进 tesseract OCR?

没有从 Tesseract OCR 中获得有效的结果作为 newocr 生产

通过 Tesseract OCR 在七段显示器上进行文本检测

Tesseract OCR:如何找到每个返回字符的读取错误大小?

文本的检测识别实战:使用 Tesseract 进行 OpenCV OCR 和文本识别