引言
opencv在目前的工作中,主要用于破解“登录—滑动验证码”,来获取x、y的偏移量。
1.安装
pip install opencv-python
2.使用说明
1.核心代码
import base64, cv2
# 读取图片
# --------下面是核心代码---------------------
bg_rgb = cv.imread(bgImagePathAll) # 读取背景图(核心)
bg_gray = cv.cvtColor(bg_rgb, cv.COLOR_BGR2GRAY) #将图像从RGB空间转化成灰度图(核心)
slide_rgb = cv.imread(sideImagePathAll, 0) # 读取--加载灰度图片(滑块)(核心)
# 使用matchTemplate对原始灰度图像和图像模板进行匹配
res = cv.matchTemplate(bg_gray, slide_rgb, cv.TM_CCOEFF_NORMED)(核心)
# 计算“背景图-滑块图的缺口偏移量”
#寻找矩阵(一维数组当作向量,用Mat定义) 中最小值和最大值的位置.
myOffset = cv.minMaxLoc(res) (核心)
print("offset:", str(myOffset))
# --------下面是非核心代码---------------------
# 下面是获取x,y值
firstStr = str(myOffset)[1:-1]
# print("first:",firstStr)
my1 = firstStr.replace('(', '')
my2 = my1.replace(')', '')
# print("my2:", my2)
firstList = my2.split(',')
x_side = int(''.join(firstList[2:3])) # x值
print("x_side:\t", x_side)
y_side = int(''.join(firstList[3:4])) # y值
print("y_side:\t", y_side)