【问题标题】:Tesseract OCR failed to identify some charactersTesseract OCR 无法识别某些字符
【发布时间】:2017-05-18 07:39:21
【问题描述】:

我正在开发一个需要对一些文本字段进行 OCR 的 C++ 项目。我正在使用 Tesseract 3.02 版 c++ API 函数来实现这一点。但 OCR 结果与图像不同。

当我使用 api.GetUTF8Text() 函数时,以下图像读取为“31 SW19 SQU”。

下图为“31 SW19 3OU”。

一个问题是 tesseract 将第一个字符识别为“3”,但未能正确识别“3QU”内的字符。

谁能向我解释为什么 tesseract 无法识别这些图像或任何解决问题的指导。

【问题讨论】:

  • 您是否将 psm 值设置为默认值以外的值?如果有,价值是多少?
  • PSM 包含默认值。我没改过

标签: c++ ocr tesseract


【解决方案1】:

我在屏幕上抓取了该图像并通过我的设置(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 非常相似。

【讨论】:

    猜你喜欢
    • 2017-08-27
    • 1970-01-01
    • 2021-03-11
    • 1970-01-01
    • 2015-01-13
    • 1970-01-01
    • 2011-07-25
    • 1970-01-01
    相关资源
    最近更新 更多