模板匹配顾名思义,及给定模板在目标图像中滑动模板,在图像中匹配与模板最为相似的区域,所以模板匹配并不是基于直方图的技术
主要由MatchTemplate()函数完成
OpenCV提供了六种图像匹配的方法,需要多次试验来寻找速度和精度的最佳方案

import cv2 as cv
import  numpy as npdef template_demo():template = cv.imread('./data/football.png', 1)target = cv.imread('./data/messi5.jpg', 1)cv.imshow('template image', template)cv.imshow('target image', target)methods = [cv.TM_SQDIFF_NORMED, cv.TM_CCOEFF_NORMED, cv.TM_CCORR_NORMED]th, tw = template.shape[:2]for md in methods:print(md)result =cv.matchTemplate(target, template, md)min_val, max_val, min_loc, max_loc = cv.minMaxLoc(result)if md == cv.TM_SQDIFF_NORMED:tl = min_locelse:tl = max_locbr = (tl[0]+tw, tl[1]+th)cv.rectangle(target, tl, br, (0, 0, 255), 2)cv.imshow('match'+np.str(md), target)template_demo()
cv.waitKey(0)
cv.destroyAllWindows()

挑选三种匹配方法比较如下:




三种效果貌似差不多。
下面输出result结果,观察图片发现,result的长宽都减去了一个模板的长度。
如何输出result呢,将结尾target改为result即可。



观察得知确实result比原图长宽都少了一个模板的长度

OpenCV-Python之模板匹配相关推荐

  1. 【OpenCV + Python】模板匹配

    模板匹配是用来在一副大图中搜寻查找模版图像位置的方法.OpenCV 为我们提供了函数:cv2.matchTemplate().和2D 卷积一样,它也是用模板图像在输入图像(大图)上滑动,并在每一个位置 ...

  2. OpenCV+python:模板匹配

    1,模板匹配的概念及原理 模板匹配是一项在一幅图像中寻找与另一幅模板图像最匹配(相似)部分的技术. 我们需要2幅图像: 模板 (T): 将和原图像比照的图像块 原图像 (I): 在这幅图像里,我们希望 ...

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

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

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

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

  5. OpenCV中的模板匹配

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

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

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

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

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

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

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

  9. opencv java match_OpenCV模板匹配函数matchTemplate详解

    参考文档:http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/imgproc/histograms/template_matchin ...

  10. OpenCV中的模板匹配/Filter2d

    1.模板匹配 模板匹配是在图像中寻找目标的方法之一.Come On, Boy.我们一起来看看模板匹配到底是怎么回事. 参考链接:http://www.opencv.org.cn/opencvdoc/2 ...

最新文章

  1. ●洛谷P3688 [ZJOI2017]树状数组
  2. 首届“陇剑杯”网络安全大赛线上赛圆满结束
  3. python操作系统-Python实现获取操作系统版本信息方法
  4. 基于Linux的集群系统(八)--转
  5. (44)FPGA条件编译(选择语句)
  6. mysql update多个字段_常见的MySQL命令大全fourth
  7. 幼儿使用计算机亮度,使用夜灯会影响孩子的视力?真相究竟是什么
  8. Undertow技术:为什么很多Spring Boot开发者放弃了Tomcat?
  9. AI2(App Inventor 2)离线版服务器单机版
  10. Java:for循环出现for(int i : arr)
  11. 六年级计算机教学进度计划,六年级下册信息技术教学计划及进度计划
  12. oc实时渲染的图如何导出_如何高效学习C4D?看完这篇文章你就知道了!
  13. Flutter Align控件用法
  14. ubuntu rar解压缩
  15. 等额本金计算公式解析
  16. 简单css实现表格头部固定
  17. 别人的面经(算法方向)
  18. 激活具有 eSIM 功能的消费类物联网设备的 4 种方法
  19. python小括号( )、中括号[ ]和大括号也叫做花括号{ } 区别
  20. js 日期 加天数计算

热门文章

  1. 语音-自监督学习《self-supervised learning》
  2. 学习numpy快速入门教程 心得体会(1)
  3. [Spring入门学习笔记][Spring的AOP原理]
  4. ros spin spinone 详细解释
  5. Probit和Logit回归
  6. python数据分析之云雨图(箱型图+分布图+散点图)
  7. pytorch自学笔记
  8. 正向代理和反向代理快速理解
  9. 问题排除——SVPWM模块为什么会出现扇区判断错误?
  10. JSR-303 Bean Validation