1. 算法目的:
运动目标跟踪算法的目的就是对视频中的图象序列进行分析,计算出目标在每帧图象上的位置。这里要根据区域分割过程给出的目标质心位置,计算出目标位移,并且根据质心位置的变化判断出目标的运动方向,以及运动目标是否在观察窗口,实现对客流量的统计。因为该跟踪是对多目标的追踪,需要找出运动目标在相邻帧上的对应区域。
系统具有固有噪声,目标周围背景的干扰可能会产生误差,但这些噪声在前面的过程已经去除,如有必要可做适当调整修正。
2. 算法难点:
(1)因为要跟踪的是多目标,需要找到相邻帧之间对应的运动目标区域不致跟踪混乱。
(2)如何判断运动目标区域是否是新的目标进入观测窗口
(3)运动目标是否离开了观测窗口以及离开的方向;即计数器何时加1、是否加1
(4)对跟踪过程中出现的一些偏差和问题,要进行必要的修正
3. 算法描述:
(1)跟踪首先要判断的是:帧与帧之间如何将运动目标对应起来。追踪过程中的追踪特
征是物体的质心(由运动区域分割过程中给出),这里判断对应目标可以:a.只利用质心间的最短距离做为特征; b.利用加权系数将最短距离,运动目标区域的长度,宽度以及长宽比和面积等综合起来作为特征。
(2)根据判断特征设置目标链,记录每个被跟踪目标的最新质心位置,为下步判断提供条件。另外将每个目标的质心位置存储起来,可以随时掌握目标的运动情况,为以后要输出目标的运动曲线做基础。
(3)每进入观察窗口一个新的运动目标,就将它的最新质心位置加入该目标链。如何判断该运动目标是新的:设置门限值ymin,ymax(当ymin<y<ymax视为在观测窗口,当y>ymax或y<ymin可认为是新目标区域),当有目标的质心位置 目标.y<ymin或目标.y>ymax并且它的标志位为未被跟踪,则肯定是新目标(在新目标区域出现的目标有可能是要离开观测窗口的目标,不过它们的标志位肯定为被跟踪)。这样判断出来的新目标方向是有出、入之分的。
(4)与目标链(MB[h][l])相对应的还有位置数组(WZ[m][n]),用来存放目标链中相应目标的质心位置。最初进行处理时,目标链是空的,在当前帧中若有新目标,则将其横、纵坐标加入到目标链中,并存储在对应的位置数组中,置标记为被跟踪。
(5)处理新的当前帧时,首先将目标链MB中每个元素(代表前一帧中所有运动目标)依次与当前帧中记