我有很简单的图片,但 tesseract 没有成功地给我正确的答案。
代码:
pytesseract.image_to_string(image, lang='eng')
示例图片给出的结果为
SARVN PRIM E N EU ROPTICS\nBLU EPRINT
我也尝试过将我自己的单词添加到字典中,如果它能使某些东西变得更好,但仍然没有。
pytesseract.image_to_string(image, lang='eng', config="--user-words words.txt")
我的单词表是这样的
SARYN
PRIME
NEUROPTICS
BLUEPRINT
我应该如何解决这个问题,也许我必须在预测之前转换图像?文本颜色可能会因几种颜色而异,但背景始终为黑色。
最佳答案
尝试反转图像,然后进行二值化/阈值处理,在尝试使用 OCR 之前在白色背景上获得黑色文本。
参见 this post有关使用 Python 对图像进行二值化的提示。
当然,输入图像中的质量越好、文本越清晰,您的 OCR 结果就越好。
我使用外部工具将其更改为白底黑字,得到了下图。
关于Python tesseract 提高了 OCR 的准确性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40693439/