介绍
今天就跟大家聊聊有关使用python怎么对验证码进行降噪,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
图像灰度化处理
import cv2 import numpy  as np 时间=img cv2.imread (& # 39;。//1. jpg图片# 39;) #将图片灰度化处理,降维,加权进行灰度化c 时间=gray cv2.cvtColor (img cv2.COLOR_BGR2GRAY) cv2.imshow (& # 39; min_gray& # 39;,灰色) cv2.waitKey (0) cv2.destroyAllWindows ()
效果:
图像二值化处理
t, gray2 =, cv2.threshold(灰色,220255,cv2.THRESH_BINARY) cv2.imshow(& # 39;阈值# 39;,gray2) cv2.waitKey (0) cv2.destroyAllWindows ()
效果:
8领域过滤
def remove_noise (img, k=4): ,, 时间=img2 才能;img.copy () ,, #,,,img处理数据,k过滤条件 w,才能h =img2.shape def 才能get_neighbors (img3、r、c): ,,,count =0 ,,,for 小姐:拷贝(r 1, r, r + 1): ,,,,,for j 拷贝(颈- 1 c, c + 1): ,,,,,,,if img3 (i, j),祝辞,10:#纯白色 ,,,,,,,,,计数+=1 ,,,return 计数 #,,,两层的循环判断所有的点 for 才能;x 拷贝范围(w): ,,,for y 拷贝范围(h): ,,,,,if x ==, 0,趁机y ==, 0,趁机x ==, w 1,趁机y ==, h 1: ,,,,,,,img2 (x, y),=255 ,,,,,其他的: ,,,,,,,n =, get_neighbors (img2, x, y) #获取邻居数量,纯白色的邻居 ,,,,,,,if n 祝辞,凯西: ,,,,,,,,,img2 (x, y),=255 return img2才能 时间=result remove_noise (gray2) cv2.imshow(& # 39; 8邻居# 39;,结果) cv2.waitKey (0) cv2.destroyAllWindows ()
过滤后的效果:
代码整合:
import cv2 import numpy  as np 时间=img cv2.imread (& # 39;。//1. jpg图片# 39;) #将图片灰度化处理,降维,加权进行灰度化c 时间=gray cv2.cvtColor (img cv2.COLOR_BGR2GRAY) 时间=t, gray2 cv2.threshold(灰色,200255,cv2.THRESH_BINARY) cv2.imshow(& # 39;阈值# 39;,gray2) 时间=result remove_noise (gray2) cv2.imshow(& # 39; 8邻居# 39;,结果) cv2.waitKey (0) cv2.destroyAllWindows ()
看完上述内容,你们对使用python怎么对验证码进行降噪有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。