我进入了一个验证过的网站,我想摆脱。这是一些示例图像
由于背景是静态的,而且文字是如此计算机生成的非扭曲字符,我相信这是非常能干的。因为将图像直接传递给Tesseract(OCR引擎)并没有得到肯定的结果。我想删除OCR之前的验证码背景。在
我使用Python-PIL尝试了多种背景删除方法
方法1和方法2会给我一个这样的图像
它看起来很近,但Tesseract无法识别字符,即使在删除了顶部和底部的点行之后。在
这是面具图像
这是一张蒙版去除灰线的图像
然而,盲目地应用这个掩码会在验证码字符中产生一些“白洞”。但泰瑟拉克还是没能找出字眼。在
有没有更好的方法去除静态背景?在
最后,我如何将过滤后的图像分割成6个单字符图像?非常感谢。在
我可以给你一些想法试试看。在
在应用了步骤3之后,您可以使用PIL来加厚图像中的黑色边缘,以便填充白洞。我猜你用的是python tesseract。如果是,请参考https://code.google.com/p/python-tesseract/wiki/CodeSnippets中的示例4
为了提取字符,可以引用Numpy PIL Python : crop image on whitespace or crop text with histogram Thresholds。有一些方法是通过分析图像的直方图来确定空白的位置,从中可以推断出边界。在
相关问题 更多 >
编程相关推荐