论文:《Simple Online and Realtime Tracking》
代码:https://github.com/abewley/sort
1.背景
当前,随着神经网络在目标检测上的应用,目标追踪的问题多借助检测来实现,即Tracking by Detection。SORT是2016年昆士兰科技大学的 Alex Bewley
发表在 ICIP
会议上的一篇关于多目标追踪(Multi Object Tracking,MOT)的论文。
2.方法简介
SORT
算法主要包括以下几部分:
❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄
❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄ ❄
其算法逻辑比较简单,对于当前帧中的每个对象有两个检测框。一个是通过检测模块获取的物体的检测框,另一个是通过卡尔曼滤波算法基于上一帧中对象的对象的位置估计出来的位置,对每个对象的这两种框之间计算IOU,使用IOU来衡量检测框与预测框的匹配程度,再使用匈牙利算法完成检测框与预测框的匹配。
关于卡尔曼滤波算法和匈牙利算法的介绍可参考:
结合前述可知,SORT算法不涉及训练的过程,可使用任意的检测算法获取的解决实现目标追踪,且仅基于检测框的位置信息做匹配,因此追踪速度很快。
-
优缺点
- 优点:逻辑简单,速度快
- 缺点:仅使用了检测框位置信息做匹配,完全没使用对象外观信息,对于有遮挡和消失重出现的场景,存在大量的
Switch-ID
现象。
3.改进
基于SORT算法的改进,是同样由原作者团队实现的DeepSort算法,在匹配标准中增加了一个128维的描述对象外观信息的特征向量,并优化了检测框和预测框的匹配,留到下一篇中详细介绍。