觉得有帮助请点赞关注收藏~~~
一、目标跟踪简介
目标跟踪算法可以进行轨迹特征的分析和提取,以弥补目标检测的不足;有效地去除误检,提高检测精度,为进一步的行为分析提供基础。例如,在自动驾驶系统中,目标跟踪算法要对运动的车、行人等目标进行跟踪,根据运动轨迹对它们在未来的位置、速度等信息作出预判。
跟踪就是在视频的不同帧中定位某一目标,从算法的设计角度来说分为两个阶段
1:预测第S帧图像中目标A 目标B 在第S+N帧图像中可能出现的位置 即候选区域
2:第S+N帧的候选区域是否为第S帧图像中目标A 目标B 如果是则跟踪成功
二、Deep SORT多目标跟踪算法
上一篇博客介绍的SORT算法使用简单的卡尔曼滤波处理逐帧数据的关联性,并使用匈牙利算法进行关联度量,这种算法在高帧速率下可以获得了较好的目标跟踪性能,但由于SORT算法忽略了被检测物体的外观特征,只有在物体状态估计不确定性下较低时比较准确,在Deep SORT算法中,使用更加可靠的度量来代替关联度量,使用卷积神经网络在大规模数据集进行训练,从而增加目标跟踪系统对遗失和障碍的鲁棒性
Deep SORT算法跟踪原理
算法原理图如下所示,在目标检测算法得到检测结果后,利用目标框来初始化卡尔曼滤波器,使用一个八维空间去刻画轨迹在某时刻的状态分别表示目标框的中心位置、纵横比、高度以及在图像坐标中对应的速度信息,计算卡尔曼滤波器提供的预测框与目标检测框之间的位置关系和外观特征关系,利用两个信息综合判断目标检测框与跟踪框之间的关联程度,完成多目标的跟踪匹配
外观特征间的关联性计算
更深的卷积神经网络模型拥有更好的非线性表达能力,可以提取更加抽象的语义特征,拟合更加复杂的特征输入,神经网络通过增加模型深度来提高模型的表达能力,但是当网络很深时,会产生梯度消失,模型退化等问题,ResNet网络模型有很好的图像的特征提取能力。目标框区域及预测框区域经过卷积层、池化层和残差块后提取特征向量,计算特征向量之间的余弦相似度
利用运动信息关联目标
在对目标进行实时跟踪的过程中,卡尔曼滤波器对过去时刻检测到的目标在当前时刻的运动状态进行预测,将预测结果与当前检测结果之间的马氏距离进行运动信息的关联操作,有利于处理多元数据问题,避免了使用欧式距离时将样本的不同属性或变量之间的差别同等看待而导致分析结果易受变量量纲影响的问题。
马氏距离能够反映数据的协方差距离,可以有效地衡量两个未知数据的相似度、考虑数据内在特性间的关联,并且不受量纲的影响。马氏距离利用检测框与平均轨迹位置两者间的标准偏差来衡量状态估计不确定性,在一定程度上,马氏距离可作为良好的关联度量,但从卡尔曼滤波器获得的预测状态仅能大致估计目标位置
级联匹配
若一个跟踪器长时间未匹配到新的检测结果,卡尔曼滤波器的状态没有得到及时的更新,预测的不确定性大大增加,此时会产生更大的协方差,因此使用级联匹配来将更高的优先级赋给时间更近的跟踪器,按跟踪器未匹配成功的次数与目标检测结果进行匹配,即先将短时间内未匹配成功的跟踪器进行匹配,再匹配长时间未匹配成功的,通过对近期未匹配成功的跟踪器赋予更大的优先级,解决了长时间未匹配成功的跟踪器更容易误匹配的问题
创作不易 觉得有帮助请点赞关注收藏~~~