gpt4 book ai didi

python - 无法识别数字 5

转载 作者:太空宇宙 更新时间:2023-11-03 21:50:16 26 4
gpt4 key购买 nike

我正在使用 Pytesseract 来识别数字 5 的图像,令我震惊的是,即使在应用了各种过滤器(如 GlaussianBlur 和 Threshold)并应用膨胀和腐 eclipse 来去除噪声之后,它仍然无法识别图像。

尝试过的过滤器:

        1: cv2.threshold(cv2.GaussianBlur(img, (9, 9), 0), 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)[1],
2: cv2.threshold(cv2.GaussianBlur(img, (7, 7), 0), 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)[1],
3: cv2.threshold(cv2.GaussianBlur(img, (5, 5), 0), 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)[1],
4: cv2.threshold(cv2.medianBlur(img, 5), 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)[1],
5: cv2.threshold(cv2.medianBlur(img, 3), 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)[1],
6: cv2.adaptiveThreshold(cv2.GaussianBlur(img, (5, 5), 0), 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 31, 2),
7: cv2.adaptiveThreshold(cv2.medianBlur(img, 3), 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 31, 2),

应用膨胀和腐 eclipse 去除一些噪声

    kernel = np.ones((1, 1), np.uint8)
img = cv2.dilate(img, kernel, iterations=1)
img = cv2.erode(img, kernel, iterations=1)

训练数据:

工程训练数据

原始图片

enter image description here

不确定这里出了什么问题,我阅读了 Tesseract 的文档并应用了其中提到的所有预处理步骤。有人可以帮助我在这里出错吗

最佳答案

试试 --psm 10

import pytesseract
from PIL import Image
import requests
import io

response = requests.get('/image/ZcPqGs.jpg')
text = pytesseract.image_to_string(Image.open(io.BytesIO(response.content)), lang='eng',
config='--psm 10')

print(text)

这应该产生 5

关于python - 无法识别数字 5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53019112/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com