【问题标题】:Doing OCR to identify text written on trucks/cars or other vehicles进行 OCR 以识别写在卡车/汽车或其他车辆上的文本
【发布时间】:2017-02-04 08:33:36
【问题描述】:

我是计算机视觉领域的新手。

我正在尝试使用 Tesseract 检测写在卡车侧面的数字。

所以对于这个例子,我希望看到 CMA CGM 作为输出。

我通过命令行将此图像输入到 Tesseract

tesseract image.JPG out -psm 6

但它产生了一个空白文件。

然后我阅读了Tesserocr(Tesseract的python包装器)的文档并尝试了以下代码

with PyTessBaseAPI() as api:
    api.SetImage(image)
    boxes = api.GetComponentImages(RIL.TEXTLINE, True)
    print 'Found {} textline image components.'.format(len(boxes))
    for i, (im, box, _, _) in enumerate(boxes):
        # im is a PIL image object
        # box is a dict with x, y, w and h keys
        api.SetRectangle(box['x'], box['y'], box['w'], box['h'])
        ocrResult = api.GetUTF8Text()
        conf = api.MeanTextConf()
        print (u"Box[{0}]: x={x}, y={y}, w={w}, h={h}, "
               "confidence: {1}, text: {2}").format(i, conf, ocrResult, **box)

又一次,它无法读取图像中的任何字符。

我的问题是我应该如何解决这个问题? (我不是在寻找现成的代码,而是在寻找如何解决这个问题的方法)。

我是否需要使用示例图像来训练 tesseract,或者我可以使用现有库编写代码以某种方式检测卡车的坐标并尝试仅在卡车边界内进行 OCR?

【问题讨论】:

    标签: computer-vision ocr tesseract python-tesseract


    【解决方案1】:

    Tesseract 需要仅文档图像,但您的图像中有非文档对象。在将其提供给 Tesseract-OCR 之前,您需要一个复杂的分割(然后可能是一些图像处理)过程。

    【讨论】:

    • 您能否详细说明复杂的分割部分。我应该如何对它进行分段,它会在什么阶段准备好输入 Tesseract?
    • -psm 的 Tesseract 选项与您需要的相比是原始的。您需要类似于车牌检测过程的东西,即从图像中的非文本部分定位文本。 OpenCV 及其社区可能会有所帮助。
    【解决方案2】:

    我有一个三步解决方案

    您可以使用范围来获取图像的一部分。

    • 例如,如果您选择
      • 高度范围为:从(int(h/4) + 40int(h/2)-20)
      • 宽度范围为:从int(w/2)int((w*3)/4)
    Result
    Take Part
    Gaussian
    Threshold
    Pytesseract CMA CGM

    代码:


    import cv2
    import pytesseract
    
    img = cv2.imread('YizU3.jpg')
    gry = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    (h, w) = gry.shape[:2]
    gry = gry[int(h/4) + 40:int(h/2)-20, int(w/2):int((w*3)/4)]
    blr = cv2.GaussianBlur(gry, (3, 3), 0)
    thr = cv2.threshold(gry, 128, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)[1]
    txt = pytesseract.image_to_string(thr)
    print(txt)
    cv2.imshow("thr", thr)
    cv2.waitKey(0)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多