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如何把嵌套列表转变成普通列表
Mar 20 Python
TensorFlow Session使用的两种方法小结
Jul 30 Python
Django项目后台不挂断运行的方法
Aug 31 Python
Pytorch 搭建分类回归神经网络并用GPU进行加速的例子
Jan 09 Python
使用python实现CGI环境搭建过程解析
Apr 28 Python
python实现文法左递归的消除方法
May 22 Python
python新手学习可变和不可变对象
Jun 11 Python
python3 简单实现组合设计模式
Jul 02 Python
Python创建临时文件和文件夹
Aug 05 Python
如何基于Python爬虫爬取美团酒店信息
Nov 03 Python
python 制作本地应用搜索工具
Feb 27 Python
Python实现智慧校园自动评教全新版
Jun 18 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中函数内引用全局变量的方法
2008/10/20 PHP
SESSION信息保存在哪个文件目录下以及能够用来保存什么类型的数据
2012/06/17 PHP
is_uploaded_file函数引发的不能上传文件问题
2013/10/29 PHP
ThinkPHP设置禁止百度等搜索引擎转码(简单实用)
2016/02/15 PHP
监控 url fragment变化的js代码
2010/04/19 Javascript
jQuery CSS()方法改变现有的CSS样式表
2014/09/09 Javascript
NodeJS学习笔记之FS文件模块
2015/01/13 NodeJs
javascript截取字符串小结
2015/04/28 Javascript
js时间戳格式化成日期格式的多种方法介绍
2017/02/16 Javascript
html+javascript+bootstrap实现层级多选框全层全选和多选功能
2017/03/09 Javascript
JSON在Javascript中的使用(eval和JSON.parse的区别)详细解析
2017/09/05 Javascript
Angular2实现的秒表及改良版示例
2019/05/10 Javascript
js实现随机点名器精简版
2020/06/29 Javascript
[01:01:41]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma BO3 第二场 1月31日
2021/03/11 DOTA
Python实现配置文件备份的方法
2015/07/30 Python
Python爬虫实例爬取网站搞笑段子
2017/11/08 Python
Python实现感知器模型、两层神经网络
2017/12/19 Python
python之django母板页面的使用
2018/07/03 Python
pygame游戏之旅 按钮上添加文字的方法
2018/11/21 Python
Python安装whl文件过程图解
2020/02/18 Python
Python动态强类型解释型语言原理解析
2020/03/25 Python
python实现二分类和多分类的ROC曲线教程
2020/06/15 Python
基于Python实现体育彩票选号器功能代码实例
2020/09/16 Python
使用CSS实现弹性视频html5案例实践
2012/12/26 HTML / CSS
野兽派官方旗舰店:THE BEAST 野兽派
2016/08/05 全球购物
兰芝美国网上商城:购买LANEIGE睡眠面膜等
2017/06/30 全球购物
地球上最先进的胡子和头发修剪器:Bevel
2018/01/23 全球购物
一加手机美国官方网站:OnePlus美国
2019/09/19 全球购物
什么是Linux虚拟文件系统VFS
2012/01/31 面试题
垃圾回收的优点和原理
2014/05/16 面试题
护理专业的自荐信
2013/10/22 职场文书
养生餐厅创业计划书范文
2014/03/26 职场文书
人力资源本科毕业生求职信
2014/06/04 职场文书
班组拓展活动方案
2014/08/14 职场文书
山楂树之恋观后感
2015/06/11 职场文书
MySQL 8.0 驱动与阿里druid版本兼容问题解决
2021/07/01 MySQL