Python-OpenCV 笔记9 – 模板匹配


1、模板匹配:matchTemplate()

函数原型:

matchTemplate(image, templ, method[, result[, mask]])

参数:

  • image:待搜索图像,数据类型必须是8位或32位浮点数
  • templ:搜索模板,它必须不大于待搜索图像并具有相同的数据类型
  • method:匹配的方法
    • cv2.TM_SQDIFF:平方差匹配法,结果值越小越匹配
    • cv2.TM_SQDIFF_NORMED:归一化平方差匹配法,结果值在 [0, 1],越小越匹配
    • cv2.TM_CCOPP:相关匹配法
    • cv2.TM_CCOPP_NORMED:归一化相关匹配法
  • result:存放结果的图像,必须为单通道32位浮点数类型
  • mask:搜索模板的掩码图,它必须与 templ 具有相同的数据类型和大小,默认不设置。目前仅支持 TM_SQDIFF和 TM_CCORR_NORMED 方法

返回:
每个像素点(对应模板的左上角点)进行一次匹配,待搜索图大小:W×H 模板大小:w×h,结果图大小: (W−w+1)×(H−h+1)


2、示例

import cv2
import numpy as np# 读取待搜索图
src_img = cv2.imread('src.jpg', 0)
template_img = cv2.imread('templ.jpg', 0)
w, h = template_img.shape[::-1]
res = cv2.matchTemplate(src_img, template_img, cv2.TM_CCOEFF_NORMED)
threshold = 0.7
loc = np.where( res >= threshold)
for pt in zip(*loc[::-1]):cv2.rectangle(src_img, pt, (pt[0] + w, pt[1] + h), 255, 2)
cv2.imshow('match', src_img)
cv2.waitKey()
cv2.destroyAllWindows()

GOOD LUCK!


Python-OpenCV 笔记9 -- 模板匹配相关推荐

  1. OpenCV笔记:模板匹配 cv2.matchTemplate()、cv2.minMaxLoc() 与 绘制矩形 cv2.rectangle() 方法介绍

    导读 模板匹配是用来在一副大图中搜寻查找模版图像位置的方法.绘制矩形是用来将模版图像的匹配结果展示出来的方法. 模板匹配实现简单(2~3行代码),计算效率高,不需要执行阈值化.边缘检测等操作来生成二值 ...

  2. Python+Opencv实现图像匹配——模板匹配

    1.原理 简单来说,模板匹配就是拿一个模板(图片)在目标图片上依次滑动,每次计算模板与模板下方的子图的相似度,最后就计算出了非常多的相似度: 如果只是单个目标的匹配,那只需要取相似度最大值所在的位置就 ...

  3. python opencv屏幕找图_使用Python+OpenCV进行图像模板匹配(Match Template)实例-找到百度首页按钮并点击...

    意图:准备一张小图,在电脑屏幕上找到小图坐标,并点击. 1  安装 opencv 和 numpy: pip3 install opencv-python 上述命令将 opencv 和 numpy都安装 ...

  4. OpenCV 学习笔记(模板匹配)

    OpenCV 学习笔记(模板匹配) 模板匹配是在一幅图像中寻找一个特定目标的方法之一.这种方法的原理非常简单,遍历图像中的每一个可能的位置,比较各处与模板是否"相似",当相似度足够 ...

  5. OpenCV中使用模板匹配识别空闲的货架空间

    但是点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 假设你是一名在超市工作的员工,被要求在商店里四处走动,检查需要 ...

  6. 基于opencv的图片模板匹配及其简单应用

    opencv的图片模板匹配及其简单应用 我的个人博客 基础知识 基于opencv的图片模板匹配 注: python及其相关包的安装不在讨论范围内 opencv提供了图片模板匹配的方法, cv2.mat ...

  7. OpenCV中的模板匹配

    OpenCV中的模板匹配 在该demo中选取了两张猴哥的照片,一张用来获得模板,另外一张用模板去匹配. 下图为选取模板的图像: 以下为选取的匹配模板: 根据该模板在下面的图中找到猴哥的脸: 该demo ...

  8. python+OpenCV笔记(二十四):Shi-Tomasi角点检测

    Shi-Tomasi角点检测 原理 python+OpenCV笔记(二十二):角点检测原理(Harris角点检测原理.Shi-Tomasi角点检测原理)https://blog.csdn.net/qq ...

  9. OpenCV系列之模板匹配 | 三十一

    目标 在本章中,您将学习 使用模板匹配在图像中查找对象 你将看到以下功能:cv.matchTemplate(),cv.minMaxLoc() 理论 模板匹配是一种用于在较大图像中搜索和查找模板图像位置 ...

最新文章

  1. 会议报名丨CSSNLP 2021第二届中国自然语言处理学生研讨会开放注册
  2. Linux网络编程------网络编程基础
  3. 【编译原理】构建一个简单的解释器(Let’s Build A Simple Interpreter. Part 8.)(笔记)一元运算符正负(+,-)
  4. oracle的索引使用方法,在OracleE数据库的字段上建立索引的方法
  5. MFC工作笔记0007---消息映射处理
  6. python绘制国际象棋_python使用turtle绘制国际象棋棋盘
  7. 基于 WebRTC 构建 Web SIP Phone
  8. arduino超声波测距接线图详细_Arduino教程:认识超声波传感器(简明版)
  9. OSChina 周四乱弹 —— 当你简历注水但还是找到了工作
  10. 完全卸载SQL server 2005的方法
  11. Unity3D逻辑热更新,第二代舒爽解决方案,L#使用简介
  12. 配对交易之统计套利配对:介绍
  13. 陌然系列小程序更新了
  14. 创业公司股权分配较好方案推荐
  15. mybatis-plus乐观锁配置
  16. QSqlQuery内存问题分析及解决
  17. hook:实现简单的键盘记录器
  18. 云师大计算机调剂,云南师范大学调剂公告
  19. Chrome 主页被恶意篡改快速解决
  20. Java 在线反编译

热门文章

  1. Qt高级——QTestLib单元测试框架
  2. 去重和分类后缀asp、php等路径 用python3写的
  3. 【JSOI2007】动态最值 Splay
  4. WebStorm ES6 语法支持设置
  5. PHP array_combine()
  6. OpenGL OBJ模型加载.
  7. win7电脑磁盘文件以分组方式展现解决方案
  8. 挖洞技巧:任意账号密码重置
  9. C#写的windows应用程序打包
  10. 2019.4.1 数据库连接池