使用Python的OpenCV模块识别滑动验证码的缺口(推荐)


Posted in Python onMay 10, 2019

最近终于找到一个好的方法,使用Python的OpenCV模块识别滑动验证码的缺口,可以将滑动验证码中的缺口识别出来了。

 使用Python的OpenCV模块识别滑动验证码的缺口(推荐)

测试使用如下两张图片:

 使用Python的OpenCV模块识别滑动验证码的缺口(推荐)

target.jpg

 使用Python的OpenCV模块识别滑动验证码的缺口(推荐)

template.png

现在想要通过“template.png”在“target.jpg”中找到对应的缺口,代码实现如下:

# encoding=utf8

import cv2
import numpy as np

def show(name):
 cv2.imshow('Show', name)
 cv2.waitKey(0)
 cv2.destroyAllWindows()

def main():
 otemp = 'template.png'
 oblk = 'target.jpg'
 target = cv2.imread(otemp, 0)
 template = cv2.imread(oblk, 0)
 w, h = target.shape[::-1]
 temp = 'temp.jpg'
 targ = 'targ.jpg'
 cv2.imwrite(temp, template)
 cv2.imwrite(targ, target)
 target = cv2.imread(targ)
 target = cv2.cvtColor(target, cv2.COLOR_BGR2GRAY)
 target = abs(255 - target)
 cv2.imwrite(targ, target)
 target = cv2.imread(targ)
 template = cv2.imread(temp)
 result = cv2.matchTemplate(target, template, cv2.TM_CCOEFF_NORMED)
 x, y = np.unravel_index(result.argmax(), result.shape)
 # 展示圈出来的区域
 cv2.rectangle(template, (y, x), (y + w, x + h), (7, 249, 151), 2)
 show(template)
if __name__ == '__main__':

    main()运行结果见本文最上面,通过运行结果可以知道,已经正确的找到了缺口位置。

总结

以上所述是小编给大家介绍的使用Python的OpenCV模块识别滑动验证码的缺口,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Python 相关文章推荐
10个易被忽视但应掌握的Python基本用法
Apr 01 Python
Windows上配置Emacs来开发Python及用Python扩展Emacs
Nov 20 Python
关于python pyqt5安装失败问题的解决方法
Aug 08 Python
Python中如何使用if语句处理列表实例代码
Feb 24 Python
python实现飞机大战游戏
Oct 26 Python
Django 接收Post请求数据,并保存到数据库的实现方法
Jul 12 Python
Python使用百度api做人脸对比的方法
Aug 28 Python
Django配置文件代码说明
Dec 04 Python
python中的 zip函数详解及用法举例
Feb 16 Python
python numpy实现多次循环读取文件 等间隔过滤数据示例
Mar 14 Python
python代码实现扫码关注公众号登录的实战
Nov 01 Python
详解Python如何批量采集京东商品数据流程
Jan 22 Python
详解python中的线程与线程池
May 10 #Python
Python实现的爬取百度贴吧图片功能完整示例
May 10 #Python
Django框架文件上传与自定义图片上传路径、上传文件名操作分析
May 10 #Python
Django框架实现分页显示内容的方法详解
May 10 #Python
Django框架验证码用法实例分析
May 10 #Python
Python爬虫实现验证码登录代码实例
May 10 #Python
详解如何管理多个Python版本和虚拟环境
May 10 #Python
You might like
php下网站防IP攻击代码,超级实用
2010/10/24 PHP
PHP取整数函数常用的四种方法小结
2012/07/05 PHP
PHP结合Ueditor并修改图片上传路径
2016/10/16 PHP
php工具型代码之印章抠图
2018/07/18 PHP
PHP实现笛卡尔积算法的实例讲解
2019/12/22 PHP
PHP dirname(__FILE__)原理及用法解析
2020/10/28 PHP
js模拟点击事件实现代码
2012/11/06 Javascript
jQuery 遍历- 关于closest() 的方法介绍以及与parents()的方法区别分析
2013/04/26 Javascript
JavaScript实现找质数代码分享
2015/03/24 Javascript
12行javascript代码绘制一个八卦图
2015/04/02 Javascript
使用Raygun对Node.js应用进行错误处理的方法
2015/06/23 Javascript
js实现点击切换checkbox背景图片的简单实例
2017/05/08 Javascript
vue2 自定义动态组件所遇到的问题
2017/06/08 Javascript
js数据类型检测总结
2018/08/05 Javascript
D3.js(v3)+react 实现带坐标与比例尺的散点图 (V3版本)
2019/05/09 Javascript
redux处理异步action解决方案
2020/03/22 Javascript
Vue双向绑定实现原理与方法详解
2020/05/07 Javascript
vue项目打包为APP,静态资源正常显示,但API请求不到数据的操作
2020/09/12 Javascript
[31:29]完美世界DOTA2联赛PWL S3 INK ICE vs Magma 第一场 12.20
2020/12/23 DOTA
Python中实现远程调用(RPC、RMI)简单例子
2014/04/28 Python
Python实现随机生成有效手机号码及身份证功能示例
2017/06/05 Python
用Python将一个列表分割成小列表的实例讲解
2018/07/02 Python
python中matplotlib实现随鼠标滑动自动标注代码
2020/04/23 Python
PyCharm2019 安装和配置教程详解附激活码
2020/07/31 Python
ASP.NET Core中的配置详解
2021/02/05 Python
详解Python openpyxl库的基本应用
2021/02/26 Python
有750多个顶级品牌的瑞士时尚在线:ABOUT YOU
2017/01/04 全球购物
什么是数组名
2012/05/10 面试题
Android面试宝典
2013/08/06 面试题
个人优缺点自我评价
2014/01/27 职场文书
应聘文员自荐信范文
2014/03/11 职场文书
软件项目开发计划书
2014/05/01 职场文书
爱国主义教育活动总结
2014/05/07 职场文书
关于十八大的演讲稿
2014/09/15 职场文书
施工安全保证书
2015/05/09 职场文书
MySQL视图概念以及相关应用
2022/04/19 MySQL