【问题标题】:Text Extraction from Notebook从笔记本中提取文本
【发布时间】:2016-12-28 12:48:08
【问题描述】:

我正在尝试从图像中提取手写文本。我将 python 与 opencv 函数一起使用,例如 find_contours。当我使用这样的图像时,一切都很顺利:

它工作正常,因为我有一个简单的背景。但后来我用这张图片测试了它:

由于背景中有笔记本的线条,我无法仅提取文本。虽然文本是红色的,但我将所有图像都变成灰度或有时阈值,所以它都变成黑色,就像笔记本线条一样。这样文本的颜色就无关紧要了。所以我的问题是:任何人都可以就如何处理这种背景以提取文本给我建议或可能的解决方案。我真的不想使用滑动窗口的方法。 提前谢谢你

【问题讨论】:

    标签: python opencv ocr text-extraction


    【解决方案1】:

    我决定再次尝试使用 OpenCV 中的 HoughLinesP 功能,这一次给了我一个更有希望和令人满意的结果。这是我用来删除大部分行的代码的 sn-p:

    import cv2
    import numpy
    
    img = cv2.imread('thresh.png')
    edges = cv2.Canny(img, 50, 150, apertureSize=3)
    minLineLength = 0
    maxLineGap = 5
    lines = cv2.HoughLinesP(edges, 1, numpy.pi / 180, 100, minLineLength, maxLineGap)
    
    for x in range(len(lines)):
        for x1, y1, x2, y2 in lines[x]:
            cv2.line(img, (x1, y1), (x2, y2), (0, 0, 0), 2)
    
    cv2.imwrite('houghlines3.jpg', img)
    

    附加信息:thresh.png 是我存储初始图片的阈值版本的图像。整个事情的工作方式是它找到图像中的线条并将它们涂成黑色(因为在我的阈值中,接近白色的东西变成黑色,反之亦然)。这就是它清除线条的方式。

    PS:希望我能帮助到别人!干杯!

    【讨论】:

      猜你喜欢
      • 2019-12-17
      • 2016-06-11
      • 2019-12-14
      • 1970-01-01
      • 2018-09-23
      • 2020-08-16
      • 1970-01-01
      • 1970-01-01
      • 2020-11-21
      相关资源
      最近更新 更多