我想识别几个验证码,但是按照目前网上找到的答案识别之后,都不太理想。
二值化之后,通过百度的图片识别接口还是无法识别验证码。
请教各位大神,二值化该如何操作。
from PIL import Image
img = Image.open('c.png') # 读入图片
img = img.convert("RGBA")
pixdata = img.load()
#二值化
for y in range(img.size[1]):
for x in range(img.size[0]):
if pixdata[x, y][0] < 90:
pixdata[x, y] = (0, 0, 0, 255)
for y in range(img.size[1]):
for x in range(img.size[0]):
if pixdata[x, y][3] < 136:
pixdata[x, y] = (0, 0, 0, 255)
for y in range(img.size[1]):
for x in range(img.size[0]):
if pixdata[x, y][4] > 0:
pixdata[x, y] = (255, 255, 255, 255)
img.save("input-black.png", "png")
二值化之后的图片
你好,我不是很懂这类问题。但是我看你的描述和截图,觉得二值化的值,不一定是一组,比如现在的黑白对"C"就识别不出来, 你可以选用几套值,然后取概率最大的估计会提高成功率。