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

Mar*_*ona 12 ocr tesseract image-processing motion-blur

我正致力于OCR识别印刷文本.特别是我专注于预处理步骤,以改善Tesseract引擎的结果.我已经通过自适应阈值处理,噪声消除,文本偏移校正等获得了良好的结果......但是当其他商业产品返回不错的结果时,Tesseract似乎也失败了.

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

用于比较3种OCR产品的文本图像

正方体

Careers in Technology Consulting

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

Definingthecorporatellstmtegy, Wammmwdngdeal, creating
uniquebwinessisighnwilgbigdam-does?ism?xemmyoua?oy?

Findoutmoreabanhowitfeektomkasatedl?ogymbyjoiningour

for further mm please visit mAeloittexom/weers
Run Code Online (Sandbox Code Playgroud)

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
Run Code Online (Sandbox Code Playgroud)

在线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 
Run Code Online (Sandbox Code Playgroud)

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

Cla*_*dio 6

这里有一个关于“魔法”OCR 预处理的建议。为了解释所提出的预处理思想的原理,让我们考虑从所提供的文本图像中摘录的所有测试 OCR 都失败的内容:

原图

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

阈值图像

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

提取“i”后

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

拆分成长在一起的角色后

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

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

sudo apt-get install cuneiform gocr ocrad
Run Code Online (Sandbox Code Playgroud)