首页 > 解决方案 > pytesseract 无法识别图像中的数字,

问题描述

我要分析的图像如下:

在此处输入图像描述

我正在运行这段代码:

from PIL import Image
import pytesseract

pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract'

my_image = 'C:\\autobot_wwe_supercard\\imagenes\\codigo_arriba.png'
text = pytesseract.image_to_string(Image.open(my_image))

print(text)

给我的结果是:

在此处输入图像描述

我已经通过控制台使用 pip install pytesseract 安装了 pytesseract。

标签: pythonpython-tesseractdigits

解决方案


>>> img = cv2.imread("1299.png")
>>> gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
>>> thresh = cv2.threshold(gray,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU)[1]
>>> thresh = 255 - thresh
>>> data = pytesseract.image_to_string(thresh, config='--psm 11 digits')
>>> data
'1299'
>>>

尝试将配置中的数字列入白名单。 pytesseract 有时也能够提取黑色背景上的白色文本。


推荐阅读