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编写一个在Linux下实现截图分享的脚本的教程
Apr 24 Python
Python 列表排序方法reverse、sort、sorted详解
Jan 22 Python
讲解Python的Scrapy爬虫框架使用代理进行采集的方法
Feb 18 Python
基于Python对象引用、可变性和垃圾回收详解
Aug 21 Python
Python使用getpass库读取密码的示例
Oct 10 Python
通过python实现随机交换礼物程序详解
Jul 10 Python
带你彻底搞懂python操作mysql数据库(cursor游标讲解)
Jan 06 Python
Python Numpy,mask图像的生成详解
Feb 19 Python
python+opencv边缘提取与各函数参数解析
Mar 09 Python
Kears 使用:通过回调函数保存最佳准确率下的模型操作
Jun 17 Python
pytorch 计算Parameter和FLOP的操作
Mar 04 Python
JAVA SpringMVC实现自定义拦截器
Mar 16 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
一个用于网络的工具函数库
2006/10/09 PHP
PHP 验证码的实现代码
2011/07/17 PHP
基于PHP生成静态页的实现方法
2013/05/10 PHP
PHP实现把MySQL数据库导出为.sql文件实例(仿PHPMyadmin导出功能)
2014/05/10 PHP
浅谈php提交form表单
2015/07/01 PHP
基于PHP代码实现中奖概率算法可用于刮刮卡、大转盘等抽奖算法
2015/12/20 PHP
laravel-admin 实现给grid的列添加行数序号的方法
2019/10/08 PHP
Code:loadScript( )加载js的功能函数
2007/02/02 Javascript
JavaScript几种形式的树结构菜单
2010/05/10 Javascript
一个判断抢购时间是否到达的简单的js函数
2014/06/23 Javascript
JavaScript中伪协议 javascript:使用探讨
2014/07/18 Javascript
js实现鼠标滚轮控制图片缩放效果的方法
2015/02/20 Javascript
JavaScript中DOM详解
2015/04/13 Javascript
javascript学习之json入门
2016/12/22 Javascript
js实现横向拖拽导航条功能
2017/02/17 Javascript
vue单页应用在页面刷新时保留状态数据的方法
2018/09/21 Javascript
vue2.0+vue-router构建一个简单的列表页的示例代码
2019/02/13 Javascript
对layui初始化列表的CheckBox属性详解
2019/09/13 Javascript
javascript实现简单留言板案例
2021/02/09 Javascript
python中self原理实例分析
2015/04/30 Python
python 生成器协程运算实例
2017/09/04 Python
Python使用smtp和pop简单收发邮件完整实例
2018/01/09 Python
对Python字符串中的换行符和制表符介绍
2018/05/03 Python
在python中实现强制关闭线程的示例
2019/01/22 Python
Python基于network模块制作电影人物关系图
2020/06/19 Python
python3爬虫GIL修改多线程实例讲解
2020/11/24 Python
一款恶搞头像特效的制作过程 利用css3和jquery
2014/11/21 HTML / CSS
FOREO官方网站:LUNA露娜洁面仪
2016/11/28 全球购物
西铁城美国官方网站:Citizen Watch美国
2019/11/08 全球购物
加拿大服装和鞋类零售商:Mark’s
2021/01/04 全球购物
Linux中如何用命令创建目录
2016/12/02 面试题
博士生入学考试推荐信
2013/11/17 职场文书
茶叶店创业计划书范文
2014/01/19 职场文书
表彰会主持词
2014/03/26 职场文书
导游词300字
2015/02/13 职场文书
首都博物馆观后感
2015/06/05 职场文书