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安装以及IDE的配置教程
Apr 29 Python
教大家玩转Python字符串处理的七种技巧
Mar 31 Python
Python cookbook(数据结构与算法)从字典中提取子集的方法示例
Mar 22 Python
使用python实现快速搭建简易的FTP服务器
Sep 12 Python
python数据结构之线性表的顺序存储结构
Sep 28 Python
Python设计模式之解释器模式原理与用法实例分析
Jan 10 Python
python Tkinter版学生管理系统
Feb 20 Python
python通过对字典的排序,对json字段进行排序的实例
Feb 27 Python
使用Keras预训练模型ResNet50进行图像分类方式
May 23 Python
python中plt.imshow与cv2.imshow显示颜色问题
Jul 16 Python
详解numpy1.19.4与python3.9版本冲突解决
Dec 15 Python
python井字棋游戏实现人机对战
Apr 28 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
php json_encode奇怪问题说明
2011/09/27 PHP
php数组合并的二种方法
2014/03/21 PHP
php检查字符串中是否有外链的方法
2015/07/29 PHP
PHP基于GD库的图像处理方法小结
2016/09/27 PHP
thinkPHP模板中for循环与switch语句用法示例
2016/11/30 PHP
php+js实现的无刷新下载文件功能示例
2019/08/23 PHP
jQuery 插件 将this下的div轮番显示
2009/04/09 Javascript
connect中间件session、cookie的使用方法分享
2014/06/17 Javascript
JS获取网页图片name属性的方法
2015/04/01 Javascript
JS模拟实现方法重载示例
2016/08/03 Javascript
JS获取url参数、主域名的方法实例分析
2016/08/03 Javascript
nodejs基础知识
2017/02/03 NodeJs
ES6新特性之数组、Math和扩展操作符用法示例
2017/04/01 Javascript
JavaScript闭包和回调详解
2017/08/09 Javascript
vue服务端渲染的实例代码
2017/08/28 Javascript
vue父组件向子组件动态传值的两种方法
2017/11/11 Javascript
[02:07]DOTA2超级联赛专访BBC:难忘网吧超神经历
2013/06/09 DOTA
Python FTP操作类代码分享
2014/05/13 Python
wxPython事件驱动实例详解
2014/09/28 Python
利用Python自动监控网站并发送邮件告警的方法
2016/08/24 Python
python中常用的九种预处理方法分享
2016/09/11 Python
200行自定义python异步非阻塞Web框架
2017/03/15 Python
Python 多线程的实例详解
2017/09/07 Python
用Python shell简化开发
2018/08/08 Python
启动Atom并运行python文件的步骤
2018/11/09 Python
PyQt QCombobox设置行高的方法
2019/06/20 Python
使用Python Pandas处理亿级数据的方法
2019/06/24 Python
Python3环境安装Scrapy爬虫框架过程及常见错误
2019/07/12 Python
Pytorch之finetune使用详解
2020/01/18 Python
Python+Dlib+Opencv实现人脸采集并表情判别功能的代码
2020/07/01 Python
战友聚会邀请函
2014/01/18 职场文书
八年级数学教学反思
2014/01/31 职场文书
生物工程专业求职信
2014/09/03 职场文书
交警正风肃纪剖析材料
2014/10/29 职场文书
求职信范文怎么写
2015/03/19 职场文书
详解Go语言运用广度优先搜索走迷宫
2021/06/23 Python