Pytesseract:无法读取质量相对较好的图像上的数字

Pytesseract: Cannot read digits on a relatively good quality image

我有一张图片如下:

使用 tesseract 命令:

pytesseract.image_to_string(box_img_6, config="--lang= 'eng' --psm 6 --oem 3")

我得到输出:'nu '

我认为 tesseract 应该在这张图片上表现更好并且至少读取一些数字。

你能帮我提高 Tesseract 的性能吗?

谢谢。

试试这个代码

import pytesseract
from PIL import Image
pytesseract.pytesseract.tesseract_cmd = (r"C:\Tesseract-OCR\tesseract.exe")
text = pytesseract.image_to_string(Image.open(r"a.jpg"), lang='eng',
                        config='--psm 10 --oem 3 -c tessedit_char_whitelist=0123456789')

print(text)

输出

**3008**

你应该阅读 Improving the quality of the output:

但对于输入图像,您不需要应用任何预处理或设置任何配置参数,结果:

txt = pytesseract.image_to_string(gray_image)

将是:

3008

在当前最新版本的 pytesseract (0.3.7)

代码:


import cv2
import pytesseract

# Load the image
img = cv2.imread("wwckp.jpg")

# Convert to the gray-scale
gry = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

# OCR
txt = pytesseract.image_to_string(gry)
print(txt)