先找了一个简单的图形验证码进行测试,比如知网,从网页里把验证码下载到本地
进行简单的灰度处理和二值化处理,能够提高不少识别正确率
验证码:
代码:
1 import tesserocr 2 from PIL import Image 3 4 image = Image.open('code.jpg') 5 #灰度处理 6 image = image.convert('L') 7 #阈值 8 threshold = 127 9 table = []10 #阈值处理11 for i in range(256):12 if i < threshold:13 table.append(0)14 else:15 table.append(1)16 17 image = image.point(table, '1')18 result = tesserocr.image_to_text(image)19 print(result)
结果:
如果没有灰度处理和二值化处理这个9就总识别错了