[论文笔记oc-sort] Observation-Centric SORT: Rethinking SORT for Robust Multi-Object Tracking

本文作为OC-SORT的论文阅读记录,中间可能会加入自己的看法,由于是tracking这块的初学者,文中若有错误的认识麻烦读者帮忙修正。

1 前言

OC-SORT是来自CVPR2022的一篇文章,采用的范式是MOT中的TBD(Tracking by Detection)。虽然学术界中JDE的研究越来越多,2022年开始也有很多基于Transformer的方法效果非常不错,但是目前工业界还是使用TBD这种方式比较多,类似还有Bytetrack等等,基本都可以满足跟踪的需求。

TBD范式中比较出名的一系列就是SORT系列,这其中笔者了解的有最初的鼻祖SORT,还有后期衍生出来的DeepSORT, StrongSORT, StrongSORT++, ByteTrack,还有本文要讨论的OC-SORT。

关于SORT系列方法具体解析可以参考下面的博客和帖子,个人认为写的很详细和易懂,方便随时查阅:

  • SORT, DeepSORT:知乎上Harlet的总结https://zhuanlan.zhihu.com/p/97449724
  • StrongSORT系列:https://blog.csdn.net/gubeiqing/article/details/123488715
  • ByteTrack:https://blog.csdn.net/zhouchen1998/article/details/120932206

2 Motivation

通过回顾SORT方法,作者提出三个问题作为方法设计的动机:

  1. 高帧率视频不利于抑制目标运动产生的噪声 Sensitive to State Noise

    比如,目标对象在连续帧之间的位移仅为几个像素,移动的距离可能和估计产生的噪声(这里我理解为误差/偏差)相同,这样一来卡尔曼滤波的估计结果会存在很大的方差。

  2. 误差累积 Temporal Error Magnification

    当出现遮挡或者非线性运动(比如跳舞)的情况,1.中的状态噪声(误差)会进一步累积。

  3. Estimation-Centric

    在1和2的基础上,以估计为中心的KF模型就会在丢失目标的情况下出现问题。卡尔曼滤波预测基于状态,检测只作为辅助信息。作者认为现在检测器的效果很好,可以更多关注这部分的信息。

3 方法

oc-sort整体方法。目标#1因为遮挡跟丢了,后续通过OCR把它恢复回来了。

文章提出三项改进:

  • OOS(Observation-centric Online Smoothing):减少KF带来的累积误差
  • OCM(Observation-centric Momentum):在代价矩阵中加入轨迹的方向一致性,更好地实现匹配
  • OCR(Observation-centric Recovery):恢复由于遮挡造成的跟丢问题

3.1 Observation-centric Online Smoothing,OOS

OOS

这种在线平滑方式通过当前帧检测到的结果和之前帧的轨迹位置,来生成更多的虚拟点,以此辅助KF做预测。具体通过⼀个虚拟的轨迹对参数进行在线平滑,回溯到目标检测丢失的时候,可以修复在时间间隔内累积的误差。

3.2 Observation-centric Momentum,OCM

在计算IOU度量矩阵的时候,把速度/方向计算成代价矩阵放在原来的度量矩阵中,(个人理解类似模型训练的trick):

OCM公式

这部分看的不是很懂…

3.3 Observation-centric Recovery,OCR

OCR用于恢复轨迹,这部分依赖于检测值而不是错误的估计值。当轨迹丢失后检测目标再出现时,直接将丢失轨迹时检测值和重新出现的检测值相关联以恢复轨迹。

你可能感兴趣的:([论文笔记oc-sort] Observation-Centric SORT: Rethinking SORT for Robust Multi-Object Tracking)