我正在开发一个c ++项目,我需要在OCR中编写一些文本字段。我使用Tesseract版本3.02 c ++ API函数来实现这一目标。但OCR结果与图像不同。
以下图片显示为" 31 SW19 SQU"当我使用api.GetUTF8Text()函数。
一个问题是tesseract将第一个角色识别为" 3"并且未能在" 3QU"正确。
有人可以向我解释为什么tesseract无法识别这些图像或任何解决问题的指导。
答案 0 :(得分:0)
我在屏幕上抓取了那个图像并通过我的设置 (v5.0.0 alpha) 运行它,它适合我:
def TestImage2String(file):
img = cv2.imread(file)
gray = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY)
gray, th = cv2.threshold(gray, 128, 255, cv2.THRESH_BINARY)
out = pytesseract.image_to_string(th)
print(out)
输出是:
SW19 3QU
它是 Python,但 C++ API 非常相似。