Python OCR 与 Pytesseract 的问题

标签 python numbers character ocr tesseract

我正在尝试读取屏幕上出现的一些字符,但我的尝试都没有成功。 Example image here

这是我的代码:

import pytesseract as tess
tess.pytesseract.tesseract_cmd = r'C:\Users\myuser\AppData\Local\Tesseract-OCR\tesseract.exe'
from PIL import Image


img = Image.open(r'E:\images\numbers.PNG')
text = tess.image_to_string(img)

print(text)

显示的“垃圾”输出是:

C NCES IC DICIIED)
CK STOO TEED
@©O®D@O@O@O@O®

我认为发生这种情况是因为数字的颜色以及它们可能出现的不同背景图像。

不幸的是,我不知道如何进一步进行以及如何让它发挥作用。

你能帮忙吗?非常感谢您的帮助!

谢谢!

最佳答案

我现在没有安装 Tesseract,但尝试使用以下代码的结果:

import cv2

img = cv2.imread('img.png')

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

thresh = cv2.adaptiveThreshold(gray, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY_INV, 3, 6)
cv2.imshow('threshold', thresh)

cv2.waitKey(0)

您可以对其进行微调以达到您的结果。

thresh

关于Python OCR 与 Pytesseract 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59455744/

相关文章:

python - 如何在 pygame 中渲染/blit 文本以获得良好的性能

python - 60 秒后结束 python 代码

python - 将 str 连接到列表的好方法?

javascript - 在类似于 C# 的 JavaScript 中格式化数字

c# - 如何精确测量字符的宽度?

java - Java 中的字符转换正则表达式

python - 如何将 FANN 保存为字符串?

javascript - toLocaleString 价格不带小数点零

java - 抽象类,Number,作为我在 Java 中的输入

MySQL 触发器在插入时替换特定字符