使用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 相关文章推荐
Python3实现的腾讯微博自动发帖小工具
Nov 11 Python
Python挑选文件夹里宽大于300图片的方法
Mar 05 Python
在Python中使用pngquant压缩png图片的教程
Apr 09 Python
浅谈python多线程和队列管理shell程序
Aug 04 Python
Python实现手写一个类似django的web框架示例
Jul 20 Python
使用Python检测文章抄袭及去重算法原理解析
Jun 14 Python
python3.6+django2.0+mysql搭建网站过程详解
Jul 24 Python
python 直接赋值和copy的区别详解
Aug 07 Python
根据tensor的名字获取变量的值方式
Jan 04 Python
Python模拟登入的N种方式(建议收藏)
May 31 Python
python爬虫请求头设置代码
Jul 28 Python
Python尾递归优化实现代码及原理详解
Oct 09 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来自动调用不同服务器上的flash
2006/10/09 PHP
ThinkPHP实现将本地文件打包成zip下载
2014/06/26 PHP
php 7新特性之类型申明详解
2017/06/06 PHP
JQUERY复选框CHECKBOX全选,取消全选
2008/08/30 Javascript
jquery each()源代码
2011/02/14 Javascript
Javascript的各种节点操作实例演示代码
2012/06/27 Javascript
放弃用你的InnerHTML来输出HTML吧 jQuery Tmpl不详细讲解
2013/04/20 Javascript
javascript和jquery修改a标签的href属性
2013/12/16 Javascript
在HTML代码中使用JavaScript代码的例子
2014/10/16 Javascript
jQuery带进度条全屏图片轮播特效代码分享
2020/06/28 Javascript
Bootstrap开发实战之响应式轮播图
2016/06/02 Javascript
JavaScript中Promise的使用详解
2017/02/26 Javascript
jQuery is not defined 错误原因与解决方法小结
2017/03/19 Javascript
Angularjs中的验证input输入框只能输入数字和小数点的写法(推荐)
2017/08/16 Javascript
Vue-cli创建项目从单页面到多页面的方法
2017/09/20 Javascript
javascript按顺序加载运行js方法
2017/12/01 Javascript
CryptoJS中AES实现前后端通用加解密技术
2018/12/18 Javascript
Layer UI表格列日期格式化及取消自动填充日期的实现方法
2020/05/10 Javascript
Python中使用动态变量名的方法
2014/05/06 Python
Python SQLite3数据库操作类分享
2014/06/10 Python
Python中使用装饰器时需要注意的一些问题
2015/05/11 Python
Python学习思维导图(必看篇)
2017/06/26 Python
python删除过期log文件操作实例解析
2018/01/31 Python
pandas全表查询定位某个值所在行列的方法
2018/04/12 Python
Python使用百度翻译开发平台实现英文翻译为中文功能示例
2019/08/08 Python
Win10 安装PyCharm2019.1.1(图文教程)
2019/09/29 Python
Django中的session用法详解
2020/03/09 Python
解决阿里云邮件发送不能使用25端口问题
2020/08/07 Python
Python就将所有的英文单词首字母变成大写
2021/02/12 Python
HTML5 用动画的表现形式装载图像
2016/03/08 HTML / CSS
html5自带表单验证体验优化及提示气泡修改功能
2017/09/12 HTML / CSS
挂职自我鉴定
2014/02/26 职场文书
有多年工作经验的自我评价
2014/03/02 职场文书
行政答辩状范文
2015/05/21 职场文书
复兴之路观后感3000字
2015/06/02 职场文书
深入浅析Redis 集群伸缩原理
2021/05/15 Redis