1 摘要
DeepSort是在Sort目标追踪基础上的改进。引入了在行人重识别数据集上离线训练的深度学习模型,在实时目标追踪过程中,提取目标的表观特征进行最近邻匹配,可以改善有遮挡情况下的目标追踪效果。同时,也减少了目标ID跳变的问题。
2 核心思想
算法的核心思想还是用一个传统的单假设追踪方法,方法使用了递归的卡尔曼滤波和逐帧的数据关联。
2.1 轨迹处理和状态估计
该部分的思路和sort很接近。
- 运动状态估计:
使用8个参数
来进行运动状态的描述,其中(u,v)是bounding box的中心坐标,r是长宽比,h表示高度。其余四个变量表示对应的在图像坐标系中的速度信息。使用一个基于常量速度模型和线性观测模型的标准kalman滤波器进行目标运动状态的预测,预测的结果为(u,v,r,h)。
- 目标的创建与移除
对每一个追踪目标,记录自其上一次检测结果与追踪结果匹配之后的帧数λ=0,Amax=30
和sort对比,好处是:
- 减少了45%的ID switch;
- 结合了深度外观信息,对遮挡目标的追踪效果大大提升;
- FP的升高很多,文章中提出这主要是由于静态场景中detection的错误以及过长的允许丢失的track age所导致的(相对于SORT只用相邻帧进行匹配来说,Deep SORT允许高达30帧的丢失,而Kalman的等速运动模型没有改变,这主要造成了FP的升高)。
- 20Hz,依旧实用;
- 达到了state-of-art online tracking的效果。
以下是deepsort的工作过程
1.读取当前帧目标检测框的位置以及各检测框图像块的深度特征。(这里实际处理时要自己来提取)
2 根据置信度对检测框过滤,对置信度不够高的检测框和特征予以删除
3.对检测框进行非极大抑制,消除一个目标多个框(这里如果用python的接口,可以省去着一个环节)
4 预测:使用kalman滤波预测目标在当前帧的位置
</div><div><div></div></div>
<link href="" rel="stylesheet">
</div>
</article>