首页 > 解决方案 > Tesseract-OCR 无法识别数字

问题描述

我使用 Tesseract OCR 来识别下面的图片(它是一个电动图像计),但它不起作用。我不允许使用机器学习或深度学习。有没有人可以使用其他一些技术来解决我的问题?请给我一个指导。感谢您的阅读。

这是我的根图像: 在此处输入图像描述

我处理过的这张图片必须能识别数字
在此处输入图像描述

这是我的代码:

import cv2
import pytesseract as pts
pts.pytesseract.tesseract_cmd = r'C:\Users\Thep Ho\AppData\Local\Programs\Tesseract-OCR\tesseract.exe'

img = cv2.imread("images/text1.jpg")
text = pts.image_to_string(img)
print(text)

标签: pythonopencvimage-processingocrdivision

解决方案


  • 如果应用于adaptive-thresholding输入图像:

  • 在此处输入图像描述

  • 现在,如果您申请regular-expression从提取的文本中删除所有非数字变量:

    • 99951
      

代码:


import re
import cv2
import pytesseract

img = cv2.imread("Eadxj.png")
gry = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
flt = cv2.adaptiveThreshold(gry,
                            252, cv2.ADAPTIVE_THRESH_MEAN_C,
                            cv2.THRESH_BINARY_INV, 31, 7)
txt = pytesseract.image_to_string(flt)
txt_int = re.sub("[^0-9]", "", txt)
print(txt_int)

但如果你被允许使用deep-learning,结果将是:

在此处输入图像描述


推荐阅读