基于DSP的目标跟踪
一、目标
利用VisualDSP++ 5.0、仿真器、EBF-561实验平台实现该算法,初步了解运动目标跟踪算法基本原理,体会并学习如何用该算法实现视频跟踪,并完成模板匹配跟踪部分的程序。
二、实现方案
实验原理
模板匹配就是在一幅大图像中搜寻目标,已知在该图中有要寻找的目标,且该目标与模板有相同的尺寸、方向和图像,通过一定的算法可以在图中找到目标,确定其坐标位置。
设模板T叠放在搜索图S上平移,模板覆盖下的那块搜索图叫做子图,这块子图的左上角像素点为S的坐标,即参考点。
我们可以用下式来衡量T和S的相似程度:
展开上式,则有:
上式等号右边第三项表示模板的总能量,是一个常数与坐标位置无关,第一项是模板覆盖下那块子图的能量,它随坐标位置的改变而缓慢改变,这两项都与模板匹配无关。第二项是子图像和模板的互相关,T和S匹配时该项有最大值。
改进的用于匹配的相关系数计算公式如下:
当模板和子图完全一样时,相关系数R=1。在被搜索图中逐个像素点地移动模板图像T,同时计算每处子图与模板的相关系数,当移过整幅图像S之后,找出R的最大值,最大响应点坐标即为最佳匹配的左上角点。以该坐标为起始点,范围大小以模板的大小为准就可以锁定目标。
实验步骤
(1)首先取得待跟踪的目标图像,该目标图像通常较小,称该图像为模板,以T 表示;
(2)定义匹配公式以备在移动模板时得到匹配度;
(3)把模板T 在待检测的图像(往往是视频中的一帧帧图像)中移动,在模板覆盖下那块搜索图叫做子图,每移动到一个位置就按定义的匹配公式计算匹配度,直至移动完整幅图像为止;
(4)按照匹配度的大小,选择匹配度最大(即最匹配)的位置,此位置即为最佳匹配位置,以此点为起始点,范围的大小就以模板的大小为准,即可锁定目标;
(5)针对视频中的每一帧图像执行步骤(3)~(4),实现目标跟踪的目的。
三、核心代码
1 | void readTemData() |