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

时间:2014-12-27 21:56:35

标签: image-processing ocr tesseract motion-blur

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

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

Text image used to compared the 3 OCR products

超正方体

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 个答案:

答案 0 :(得分:2)

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

original image

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

thresholded image

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

after extracting "i"s

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

after splitting grown-together characters

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

在这个上下文中,让我提一下Ubuntu存储库中可用的另一个免费OCR引擎(与tesseract相比)。相互测试它们你甚至可以想知道它们是如何提供不同的结果,然后查看它们的源代码来了解:)并从这个经验中推断出商业上的一些东西。

sudo apt-get install cuneiform gocr ocrad