从浅色文字中提取文字并带有背景图片

时间:2018-08-25 10:57:49

标签: python image-processing tesseract python-tesseract

我有如下图像:

Image to be processed

我想从中提取文本,应该是ws35,我已经尝试使用 pytesseract 库使用

方法:
pytesseract.image_to_string(Image.open(path))

但是它什么也没返回...我在做错什么吗?如何使用OCR取回文字?我需要对其应用一些过滤器吗?

4 个答案:

答案 0 :(得分:5)

您可以尝试以下方法:

  • Binarize使用您选择的方法显示图像(在这种情况下,将阈值设为127似乎足够了)
  • 使用minimum filter连接丢失点以形成字符。因此,r = 4的过滤器似乎工作得很好:Image after application of minimum filter
  • 如有必要,可以通过应用median blur(r = 4):enter image description here
  • 进一步改善结果

因为我个人不使用tesseract,所以我无法尝试这张图片,但是在线ocr工具似乎能够正确识别序列(特别是如果使用模糊版本)。

答案 1 :(得分:1)

类似于@SilverMonkey的建议:高斯模糊,然后进行Otsu阈值处理。

enter image description here

答案 2 :(得分:0)

问题在于此图片质量低且非常嘈杂! 甚至专业和企业计划都为此苦苦挣扎

您之前最有可能看到过capatcha,其原因是因为它已将您的答案和图像发送回数据库,然后用于训练计算机读取此类图像。

  

简短的答案是:pytesseract无法读取该图像中的文本,并且很可能没有模块或专业程序也可以读取它。

答案 3 :(得分:0)

您可能需要对其进行一些图像处理/增强。查看this发表的阅读建议并尝试应用。