Python tesseract 提高了 OCR 的准确性

标签 python machine-learning ocr tesseract python-tesseract

我有很简单的图片,但 tesseract 没有成功地给我正确的答案。

代码:

pytesseract.image_to_string(image, lang='eng')

enter image description here

示例图片给出的结果为

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 结果就越好。

我使用外部工具将其更改为白底黑字,得到了下图。

Inverted and Binarized

关于Python tesseract 提高了 OCR 的准确性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40693439/

相关文章:

python - 从 MySQL 数据库 Python 填充下拉列表

python - Scrapy 不能同时使用 return 和yield

python - pandas describe() reshape 为具有列名的一行

python - Tensorflow:成本张量列表

python - 如何告诉 scikit-learn 给出了哪个标签的 F-1/precision/recall 分数(在二进制分类中)?

delphi - delphi中识别图片中的文字

python.NLTK(WindowDiff 和 PK)与 python.Segeval(WindowDiff 和 PK)

python - jupyter notebook --NotebookApp.iopub_data_rate_limit=10000000 不工作

c# - 图像 OCR - 过滤不需要的数据

python - 如何用Python提取识别车牌号?