SiamMOT是一个online的多目标跟踪(MOT)算法,SiamMOT: Siamese Multi-Object Tracking作者来自亚马逊团队,SiamMOT是ACM2020 Hieve竞赛行人多目标跟踪赛道的第一名,同时是ICCV2021 airmot竞赛的baseline。 顾名思义,SiamMOT将SOT中siamese的思想引入MOT中,文中把这个过程叫做instance-level motion model。

这种图可以比较清晰的呈现出SiamMOT的原理,首先 I t I^t It帧的图像带检测结果,过SiamMOT的backbone之后,输出feature map,检测结果会在feature map上扣取SOT的模板, I t + δ I^{t+\delta} It+δ同样过SiamMOT的backbone之后输出feature map,根据上一帧的检测结果位置扩大,作为SOT的搜索区域,然后模板在搜索区域上进行卷积,确认 I t I^t It帧的目标在 I t + δ I^{t+\delta} It+δ帧的位置。这个位置是motion model的预测,同时 I t + δ I^{t+\delta} It+δ帧是一个完整的检测过程,所以也会输出检测结果,这个是检测的预测,二者做个简单的空间匹配,就完成了跟踪过程。 由于前后两帧都过相同的backbone,所以也就有了siamese结构。
所以SiamMOT的运动建模过程其实就是靠着SOT完成的,这种上一帧预测与当前帧检测的匹配在MOT中也很常见,比如Sort,DeepSort都是这样,只是它们上一帧预测是靠卡尔曼滤波。
为什么SiamMOT要选择Faster RCNN结果,起码论文中是这样,猜测原因有两个:
SiamMOT中SOT的建模就是EMM,此外它还有一个更简单的建模方式,就是纯靠空间信息,类似于卡尔曼滤波。
它把自己定位成一个public的多目标跟踪方法(在mot challenge上),但是其实和Tracktor相似,这种定位带了取巧的成分。 从SOT for MOT的角度看,SiamMOT和DeepMOT都是将SOT引入到MOT中,但是二者有比较大的区别
在其他MOT方法中,和SiamMOT最像的一个是CenterTrack,可以理解为二者的区别在于如何构建两帧间的关联,前者使用SOT,后者使用center的offset,这个offset本质上靠特征,没有使用空间信息。