觉得有帮助请点赞关注收藏~~~
一、目标跟踪简介
目标跟踪算法可以进行轨迹特征的分析和提取,以弥补目标检测的不足;有效地去除误检,提高检测精度,为进一步的行为分析提供基础。例如,在自动驾驶系统中,目标跟踪算法要对运动的车、行人等目标进行跟踪,根据运动轨迹对它们在未来的位置、速度等信息作出预判。
跟踪就是在视频的不同帧中定位某一目标,从算法的设计角度来说分为两个阶段
1:预测第S帧图像中目标A 目标B 在第S+N帧图像中可能出现的位置 即候选区域
2:第S+N帧的候选区域是否为第S帧图像中目标A 目标B 如果是则跟踪成功
目标跟踪算法的研究难点如下图,包括外观变形,光照变化,快速运动和运动模糊,背景相似干扰,平面外旋转,平面内旋转等等,当目标跟踪算法投入实际应用时,实时性也是需要考虑的重要因素
传统的目标跟踪算法有如下几种
1:Mean Shift算法
一种基于概率密度分布的跟踪方法 目标的搜索一直沿着概率梯度上升的方向,迭代收敛到概率密度分布的局部峰值上
2:粒子滤波器算法
它是一种基于粒子分布统计的方法,它首先对跟踪目标进行建模,定义一种相似度度量确定粒子与目标的匹配程度,在目标搜索的过程中,它会按照一定的分布撒一些粒子,统计这些粒子的相似度,确定目标可能的位置
二、基于光流特征的目标跟踪算法
光流(Optical Flow)是空间运动物体在观察成像平面上像素运动的瞬时速度,光流法是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法,通常将二维图像平面特定坐标点上的灰度瞬时变化率定义为光流矢量,简单来说,光流就是瞬时速度,在时间间隔很小时,也等同于目标的位移,光流场是灰度图像的二维矢量场,它反映了图像上像素的变化趋势,可看成是带有灰度的像素点在图像平面上运动而产生的瞬时速度场,它包含的信息即是各像素点的瞬时运动速度矢量信息,它既可以表现物体运动的运动方向也可以表现物体运动的速率
三、LK光流法
LK光流法有三个假设条件:
1:亮度恒定:对于灰度图像中运动目标,其像素点的亮度在相邻帧间不发生变化
2:时间连续或者运动足够小:在每次计算时,不会由于时间的变化而引起目标位置的剧烈变化,运动目标的像素点在相邻帧之间对应位置的变化比较小
3:空间一致:特征点附近所有相邻的像素点运动情况相似
LK光流法相比HS光流法避免了计算目标区域内所有像素点的光流,减小了运算开销,提高了程序的运行速度,但LK光流法的三个假设条件也会在应用稀疏光流法时产生一定的限制,比如当物体运动位移较大或者速度较快时,图像间的相关性较弱,并且较大的运动不满足泰勒公式的展开条件,导致无法求出最有匹配解而导致跟踪失败
为了避免大位移运动跟踪失败的情况,在较大的尺度上进行跟踪时,将图像金字塔与LK光流法相结合,使图像分辨率降低到一定程度时,原本较大的运动位移变得足够小,利用图像金字塔来自上而下的计算来得到准确的光流
创作不易 觉得有帮助请点赞关注收藏~~~