最近在抓取某网站时候,遇到了验证码的问题,想要破解一下验证码,示例验证码如下
这种验证码位置不固定,并且有倾斜,垂直投影会有交叉的部分,所以不适合用垂直切割的办法,受图像处理中洪水算法的启发,想到一种思路
洪水算法 参见 http://blog.youkuaiyun.com/Trent1985/article/details/44904431
常见实现办法有递归,扫描线算法等,本文针对的验证码不适合用扫描线算法,遂用递归实现
以下是核心代码:
import numpy as np
import cv2
from PIL import Image
def getPoint(x,y,data,subdata=None):
a=[0,-1,0,1,0,-2,0,2,0,-3,0,3,0,-4,0,4,0,-5,0,5]
b=[1,0,-1,0,2,0,-2,0,3,0,-3,0,4,0,-4,0,5,0,-5,0]
width,height=data.shape
if