python cv2在验证码识别中应用实例解析


Posted in Python onDecember 25, 2019

这篇文章主要介绍了python cv2在验证码识别中应用实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

使用函数cv2.imread(filepath,flags)读入一副图片

filepath:要读入图片的完整路径

flags:读入图片的标志

  • cv2.IMREAD_COLOR:默认参数,读入一副彩色图片,忽略alpha通道
  • cv2.IMREAD_GRAYSCALE:读入灰度图片
  • cv2.IMREAD_UNCHANGED:顾名思义,读入完整图片,包括alpha通道
  • cv2.cvtColor(p1,p2) 是颜色空间转换函数,p1是需要转换的图片,p2是转换成何种格式。
  • cv2.COLOR_BGR2RGB 将BGR格式转换成RGB格式
  • cv2.COLOR_BGR2GRAY 将BGR格式转换成灰度图片

模版匹配

模板匹配的原理其实很简单,就是不断地在原图中移动模板图像去比较

有6种匹配方法

  • 平方差匹配CV_TM_SQDIFF:用两者的平方差来匹配,最好的匹配值为0
  • 归一化平方差匹配CV_TM_SQDIFF_NORMED
  • 相关匹配CV_TM_CCORR:用两者的乘积匹配,数值越大表明匹配程度越好
  • 归一化相关匹配CV_TM_CCORR_NORMED
  • 相关系数匹配CV_TM_CCOEFF:用两者的相关系数匹配,1表示完美的匹配,-1表示最差的匹配
  • 归一化相关系数匹配CV_TM_CCOEFF_NORMED
import cv2
  def findpic(self, target='background.png', template='slider.png'):
    """
    :param target: 背景图路径
    :param template: 滑块图片路径
    :return: 
    """
    target_rgb = cv2.imread(target)
    target_gray = cv2.cvtColor(target_rgb, cv2.COLOR_BGR2GRAY)
    template_rgb = cv2.imread(template, 0)
    res = cv2.matchTemplate(target_gray, template_rgb, cv2.TM_CCOEFF_NORMED) #模板匹配,在大图中找小图
    value = cv2.minMaxLoc(res)
    a, b, c, d = value
    if abs(a) >= abs(b):
      distance = c[0]
    else:
      distance = d[0]
    print(value)
    return distance

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python模块restful使用方法实例
Dec 10 Python
详解Python中的__new__、__init__、__call__三个特殊方法
Jun 02 Python
python多线程socket编程之多客户端接入
Sep 12 Python
Python实现字符串匹配算法代码示例
Dec 05 Python
python+opencv轮廓检测代码解析
Jan 05 Python
Python PyQt4实现QQ抽屉效果
Apr 20 Python
Python实现定期检查源目录与备份目录的差异并进行备份功能示例
Feb 27 Python
python3中pip3安装出错,找不到SSL的解决方式
Dec 12 Python
python json load json 数据后出现乱序的解决方案
Feb 27 Python
解决django xadmin主题不显示和只显示bootstrap2的问题
Mar 30 Python
详解Python中的GIL(全局解释器锁)详解及解决GIL的几种方案
Jan 29 Python
Python通用验证码识别OCR库ddddocr的安装使用教程
Jul 07 Python
python中的逆序遍历实例
Dec 25 #Python
Win系统PyQt5安装和使用教程
Dec 25 #Python
Python3 把一个列表按指定数目分成多个列表的方式
Dec 25 #Python
Python3 main函数使用sys.argv传入多个参数的实现
Dec 25 #Python
Win下PyInstaller 安装和使用教程
Dec 25 #Python
如何在mac环境中用python处理protobuf
Dec 25 #Python
Python Print实现在输出中插入变量的例子
Dec 25 #Python
You might like
实战mysql导出中文乱码及phpmyadmin导入中文乱码的解决方法
2010/06/11 PHP
php获取淘宝分类id示例
2014/01/16 PHP
php中return的用法实例分析
2015/02/28 PHP
yii 2.0中表单小部件的使用方法示例
2017/05/23 PHP
php实现的统计字数函数定义与使用示例
2017/07/26 PHP
PHP学习记录之数组函数
2018/06/01 PHP
JavaScript入门教程(5) js Screen屏幕对象
2009/01/31 Javascript
学习ExtJS border布局
2009/10/08 Javascript
如何使用Javascript正则表达式来格式化XML内容
2013/07/04 Javascript
JavaScript中for-in遍历方式示例介绍
2014/02/11 Javascript
jQuery实现感应鼠标动画效果自动伸长的输入框实例
2015/02/24 Javascript
AngularJS 让人爱不释手的八种功能
2016/03/23 Javascript
Cpage.js给组件绑定事件的实现代码
2017/08/31 Javascript
Vue2.0父子组件传递函数的教程详解
2017/10/16 Javascript
vue中手机号,邮箱正则验证以及60s发送验证码的实例
2018/03/16 Javascript
jQuery操作cookie的示例代码
2019/06/05 jQuery
Vue 3.0双向绑定原理的实现方法
2019/10/23 Javascript
Linux系统上Nginx+Python的web.py与Django框架环境
2015/12/25 Python
Python3实现的画图及加载图片动画效果示例
2018/01/19 Python
Python+OpenCV目标跟踪实现基本的运动检测
2018/07/10 Python
centos6.5安装python3.7.1之后无法使用pip的解决方案
2019/02/14 Python
Django项目之Elasticsearch搜索引擎的实例
2019/08/21 Python
win7下 python3.6 安装opencv 和 opencv-contrib-python解决 cv2.xfeatures2d.SIFT_create() 的问题
2019/10/24 Python
Django重设Admin密码过程解析
2020/02/10 Python
python torch.utils.data.DataLoader使用方法
2020/04/02 Python
20行Python代码实现视频字符化功能
2020/04/13 Python
keras实现多GPU或指定GPU的使用介绍
2020/06/17 Python
乌克兰机票、铁路和巴士票、酒店搜索、保险:Tickets.ua
2020/01/11 全球购物
加拿大大码女装购物网站:Penningtons
2020/12/26 全球购物
继电保护工岗位职责
2014/01/05 职场文书
读书活动实施方案
2014/03/10 职场文书
党的群众路线教育实践活动个人承诺书
2014/05/22 职场文书
公安领导班子四风问题个人整改措施思想汇报
2014/10/09 职场文书
委托函范文
2015/01/29 职场文书
解除劳动合同通知书范本
2015/04/16 职场文书
HTML+VUE分页实现炫酷物联网大屏功能
2021/05/27 Vue.js