tesseract无法检测简单的两字图像中的字符

时间:2020-01-05 00:46:27

标签: ocr tesseract python-tesseract

我无法让tesseract识别下图中的任何字符:

enter image description here

当我从命令行在此图像上运行tesseract时,得到"Empty page!!"-即没有结果-返回。根据我对Wiki的“提高质量”部分的阅读,我认为问题可能在于此图像中的单词不是词典单词。考虑到这一点,我既尝试完全禁用tesseract字典(使用load_system_dawgload_freq_dawg config标志),也尝试使用这些其他单词(LAO和CAUD)来扩展现有字典。这些方法都不起作用。我已经尝试过tesseract版本3、4,并已在Mac计算机上从源代码构建了版本5。所有人都给出了相同的结果。

奇怪的是,如果我将图像中的确切单词输入到文字处理器中并进行屏幕截图,那么它将起作用:tesseract可以读取生成的图像。它正确地解析每个字符。这是这张图片:

enter image description here

两个图像之间的唯一区别是,第一个图像的分辨率/质量略低。那么我是否会相信tesseract无法识别出质量稍差的图像中的字符?我有什么办法可以改善图像质量?还有其他我想念的东西吗?

谢谢。

2 个答案:

答案 0 :(得分:2)

这是常见问题。您可能需要对图像进行预处理,重新缩放,过滤器等。

有关如何执行此操作的一些参考:

https://github.com/tesseract-ocr/tesseract/wiki/ImproveQuality

https://docparser.com/blog/improve-ocr-accuracy/

答案 1 :(得分:1)

解决方案是使用正确的page segmentation method(PSM)。就我而言,PSM 6(用于单个文本块)就可以解决问题。