我正在尝试读取屏幕上出现的一些字符,但我的尝试都没有成功。 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)
您可以对其进行微调以达到您的结果。
关于Python OCR 与 Pytesseract 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59455744/