python如何实现验证码识别功能

  介绍

这篇文章主要介绍python如何实现验证码识别功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

具体内容如下

1。通过二值化处理去掉干扰线

2。对黑白图片进行降噪,去掉那些单独的黑色像素点

3。消除边框上附着的黑色像素点

4。识别图像中的文字,去掉空格与& # 39;强生# 39;

python代码:

得到PIL  import  Image    得到aip  import  AipOcr    ,   文件=& # 39;1-1-7& # 39;,   ,   #,二值化处理,转化为黑白图片,   def  two_value ():   范围,for 小姐:拷贝(1,,5):,   ,#打开文件夹中的图片,=,,image  Image.open(文件+ & # 39;jpg # 39;),   ,#灰度图,=,,lim  image.convert (& # 39; l # 39;),   ,#灰度阈值设为165,低于这个值的点全部填白色,   165年,threshold =,,=,table  [],   ,   ,for  j 范围(256):拷贝,   if 才能j  & lt;,阈值:,   table.append才能(0),   ,,:   table.append才能(1),   ,=,,bim  lim.point(表,,& # 39;1 & # 39;),   ,bim.save(文件+ & # 39;.1.jpg& # 39;),   ,   two_value (),   ,   #,去除干扰线,   我=,Image.open(文件+ & # 39;.1.jpg& # 39;),   #,图像二值化,   时间=data  im.getdata (),   时间=w, h  im.size    black_point =, 0,   ,   for  x 拷贝范围(1,w 作用;1):,   ,for  y 拷贝范围(1,h 作用;1):,=,mid_pixel 数据(w  *, y  +, x), #,中央像素点像素值,   ,if  mid_pixel  & lt; 50:, #,找出上下左右四个方向像素点像素值,   时间=top_pixel 才能;数据(w  *, (y 安康;1),+,x),   left_pixel 才能,=,数据(w  *, y  +, (x 安康;1)),   时间=down_pixel 才能;数据(w  *,(时间+ y  1), +, x),   right_pixel 才能,=,数据(w  *, y  +,(时间+ x  1)),   ,   #才能,判断上下左右的黑色像素点总个数,   if 才能top_pixel  & lt;, 5:, #小于5比小于10更精确,   black_point 才能+=,1,   if 才能left_pixel  & lt;, 5:,   black_point 才能+=,1,   if 才能down_pixel  & lt;, 5:,   black_point 才能+=,1,   if 才能right_pixel  & lt;, 5:,   black_point 才能+=,1,   if 才能black_point  & lt;, 1:,   im.putpixel才能((x, y), 255),   #,才能打印(black_point),   black_point 才能=,0,   ,   im.save(文件+ & # 39;.2.jpg& # 39;),   ,   #,去除干扰线,   我=,Image.open(文件+ & # 39;.2.jpg& # 39;),   #,图像二值化,   时间=data  im.getdata (),   时间=w, h  im.size    black_point =, 0,   ,   for  x 拷贝范围(1,w 作用;1):,   ,for  y 拷贝范围(1,h 作用;1):,   ,if  x  & lt; 2,趁机y  & lt;, 2:,   im.putpixel才能(x 安康;1,y 作用;1),,255),   ,if  x 祝辞,w 作用;3,趁机y 祝辞,h 作用;3:,   im.putpixel才能(时间+ x  1, y  +, 1),, 255),   ,   im.save(文件+ & # 39;.3.jpg& # 39;),   ,   #,定义常量,   时间=APP_ID  & # 39; 11352343 & # 39;,   时间=API_KEY  & # 39; Nd5Z1NkGoLDvHwBnD2bFLpCE& # 39;,   时间=SECRET_KEY  & # 39; A9FsnnPj1Ys2Gof70SNgYo23hKOIK8Os& # 39;,   ,   #,初始化AipFace对象,   时间=aipOcr  AipOcr (APP_ID, API_KEY, SECRET_KEY),   ,   #,读取图片,   filePath=文件+ & # 39;.3.jpg& # 39;,   def  get_file_content (filePath):,   ,with 开放(filePath, & # 39; rb # 39;), as 外交政策:,   ,return  fp.read (),   ,   #,定义参数变量,=,{options    ,& # 39;detect_direction& # 39;:, & # 39;真正的# 39;,,   ,& # 39;language_type& # 39;:, & # 39; CHN_ENG& # 39;,,   },   ,   #,调用通用文字识别接口,   时间=result  aipOcr.basicGeneral (get_file_content (filePath),选项),   打印(结果),   words_result=结果[& # 39;words_result& # 39;],   for 小姐:范围(len (words_result)):拷贝,   ,打印(words_result[我][& # 39;词# 39;].replace (& # 39;, & # 39;, & # 39; & # 39;) .replace(& # 39;强生# 39;& # 39;& # 39;)),#去掉可能被识别的空格与。

 python如何实现验证码识别功能

以上是“python如何实现验证码识别功能”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

python如何实现验证码识别功能