[英]PyTesseract and Tesseract not detecting text
我一直在尝试将 pytesseract 用于我已经从事了很长一段时间的项目。 到目前为止,我一直在努力确保它在我的计算机上运行良好,但我没有让它运行起来。
我一直在尝试使用以下代码在此图像上对其进行测试:
image = cv2.imread('exit.png',cv2.IMREAD_GRAYSCALE)
th,image = cv2.threshold(image,0,255,cv2.THRESH_OTSU)
image = 255 - image
cv2.imshow('bruh',image)
cv2.waitKey(0)
print(pytesseract.image_to_data(image,config='--psm 3 --oem 3'))
这段代码的目的是通过读取图像、对其进行二值化然后翻转黑白值来简单地测试 pytesseract 是否正常工作,因为我在某处读到 tesseract 对黑色文本效果更好。 处理后的图像如下所示。
我尝试过使用和不使用二值化运行图像,我尝试重新安装 tesseract 和 pytesseract,我尝试了不同的配置,我尝试通过命令行在图像上运行 tesseract,但此时我老实说,不知道发生了什么。
我在 Pop!_OS 上使用 Python 版本 3.10.4。
对于您的情况,我尝试了使用简单 ocr的 OCR,它还使用 tesseract 引擎提取文本。我得到了正确的结果。 您可以通过pip install easyocr
。
import cv2
import easyocr
image = cv2.imread('exit.png')
resize = cv2.resize(image,(100,40))
cv2.imwrite('resize.png', resize)
reader = easyocr.Reader(['en'], gpu=False)
result = reader.readtext('resize.png')
for detection in result:
print(detection)
输出是
([[5, 0], [93, 0], [93, 40], [5, 40]], 'EXIT', 0.8129605341987216)
我希望这可以帮助你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.