#模板匹配 import cv2 as cv import numpy as np def template_demo(): dog = cv.imread("E:/opencv/picture/dog.jpg") dog_nose = cv.imread("E:/opencv/picture/nose.jpg") cv.imshow("dog",dog) result = cv.matchTemplate(dog,dog_nose,cv.TM_CCORR_NORMED) h,w =dog_nose.shape[:2] min_val,max_val,min_loc,max_loc=cv.minMaxLoc(result) pt1 = max_loc pt2 = (pt1[0]+w,pt1[1]+h) cv.rectangle(dog,pt1,pt2,(0,255,0),2) cv.imshow("match",dog) print(result) #src = cv.imread("E:/opencv/picture/dog.jpg") #cv.imshow("inital_window",src) template_demo() cv.waitKey(0) cv.destroyAllWindows() 分析: 模板匹配通常用于目标检测。本文我们检测狗图片的鼻子。 • 我们需要两个主要组件: 1. 源图像(I):我们期望找到与模板图像匹配的图像 2. 模板图像(T):将与模板图像进行比较的补丁图像 1. result = cv.matchTemplate(dog,dog_nose,cv.TM_CCORR_NORMED) void cv::matchTemplate( cv::InputArray image, // 待匹配图像W*H cv::InputArray templ, // 模板图像,和image类型相同, 大小 w*h cv::OutputArray result, // 匹配结果图像, 类型 32F, 大小 (W-w+1)*(H-h+1) int method // 用于比较的方法 ); 其中method有: TM_SQDIFF_NORMED匹配数值越低表示匹配效果越好 TM_CCORR_NORMED,TM_CCOEFF_NORMED匹配数值越大表示匹配效果越好 result参数:(保存各个点匹配结果的参数) 模板匹配函数cvMatchTemplate依次计算模板与待测图片的重叠区域的相似度,并将结果存入映射图像result当中,也就是说result图像中的每一个点的值代表了一次相似度比较结果 模板在待测图像上每次在横向或是纵向上移动一个像素,并作一次比较计算 我们可以通过cv.minMaxLoc函数来确定结果矩阵的最大值和最小值的位置。 2. cv.minMaxLoc(result) 返回result数值中最小值以及最小值所在的位置和最大值以及最大值所在的位置。 3. 当知道哪个点匹配度最高时这个时候我们需要用矩阵把模板给标出来 C++: void rectangle(Mat& img, Point pt1,Point pt2,const Scalar& color, int thickness=1, int lineType=8, int shift=0) 第一个参数:要在哪个图像上画? 第二个参数:矩阵的左上角点坐标 第三个参数:矩阵的右下角点坐标 第四个参数:颜色
2022-10-22 12:01:12 20KB opencv
1
图像处理notability笔记
2022-10-22 09:07:35 5.6MB 图像处理
1
主要处理等离子焊接图像,通过一系列图像处理操作,提取熔池特征参数。
2022-10-21 19:23:59 2KB 曲线拟合
1
包含功能:a) 读取Landsat-5卫星遥感影像;b) 图形显示遥感影像读取结果;c) NDVI或NDWI计算及结果输出;d) 自定义RGB输出图像等
2022-10-21 16:28:12 2.95MB NDWI matlabapp 遥感图像 NDVI
1
《精通Visual C++数字图像处理典型算法及实现(第二版)》一书的附带源码,有较好的参考和学习价值
2022-10-21 15:21:30 856KB VC 数字图像处理
1
matlab软件图像处理bipls方法进行光谱区间的选择,并进行比较
2022-10-21 14:27:53 5KB 光谱 matlab图像处理 bipls
1
基于cv2进行等间隔采样和局部均值的图像缩缩放(python版本) 下载后安装cv2包编程即可实现!操作简单!
2022-10-21 13:07:59 841B 数字图像处理 python
1
资源包含文件:课程报告word+源码及数据+项目截图 通过多种形态学算法进行分割、细化、细化后处理,找到其中的端点和分叉点,而指纹周边的伪细节点需要被去除。详细介绍参考:https://blog.csdn.net/newlw/article/details/126876024
lena color_128.
2022-10-21 09:03:08 858KB Lean 图像处理 图像加密 图片
1