• 模板匹配原理

  • 算法步骤

  • opencv调用函数

  1. matchTemplate
  2. minMaxLoc
  3. cvSetMouseCallback
  • 代码 


模板匹配原理

根据已知模板图像T在被搜索图S中平移,寻找与模板相似度最大的区域,并记录坐标。

其中,子图S(i,j)与模板有相同的尺寸、方向。

目标跟踪--模板匹配

算法步骤

(1)首先取得待跟踪的目标图像,该目标图像常较小,称该图像为模板,以T 表示; 

(2)定义匹配公式以备在移动模板时得到匹配度; 

(3)把模板T 在待检测的图像(往往是视频中的一帧帧图像)中移动,在模板覆盖下那块搜索图叫做子图,每移动到一个位置就按定义的匹配公式计算匹配度,直至移动完整幅图像为止; 

(4)按照匹配度的大小,选择匹配度最大(即最匹配)的位置,此位置即为最佳匹配位置,以此点为起始点,范围的大小就以模板的大小为准,即可锁定目标; 

(5)针对视频中的每一帧图像执行步骤(3)~(4),这样就达到了跟踪的目的。 

核心在于计算模板T与子图S(i,j)的相似程度。

opencv调用函数

目标跟踪--模板匹配

Image为源图像,temp为模板图像,result为各个位置相似度的结果矩阵,method为相似度评价准则。

----------------------越小的值表示越匹配--------------------------

CV_TM_SQDIFF 平方差匹配法,最好的匹配为0,值越大匹配越差;Sumof Squared Difference (SSD) 差值的平方和

目标跟踪--模板匹配

CV_TM_SQDIFF_NORMED 归一化平方差匹配法;

--------------------------值越大越匹配----------------------------

CV_TM_CCORR 相关匹配法,采用乘法操作,数值越大表明匹配越好;

目标跟踪--模板匹配

CV_TM_CCORR_NORMED 归一化相关匹配法;

CV_TM_CCOEFF 相关系数匹配法,最好的匹配为1,-1表示最差的匹配;

CV_TM_CCOEFF_NORMED 归一化相关系数匹配法;

目标跟踪--模板匹配

寻找矩阵中最大最小值以及对应坐标。 

目标跟踪--模板匹配

 第一个参数为窗户名,第二个为鼠标消息处理函数,第三个为传给鼠标消息的参数。

目标跟踪--模板匹配

代码

对于视频来说,运行会先显示第一帧,然后我们用鼠标框选要跟踪的目标,然后跟踪器开始跟踪每一帧。

 

 

相关文章:

  • 2022-12-23
  • 2021-07-21
  • 2021-12-05
  • 2021-11-02
  • 2022-12-23
  • 2021-11-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-09
  • 2022-01-31
  • 2021-08-28
  • 2022-12-23
相关资源
相似解决方案