这几个月都在做把centernet用在跟踪的实验,结果前段时间看到arxiv上刚刚就挂了几篇这类思想的文章,难受撞车,那就顺便总结一下目前anchor free的目标跟踪方法。之前也写过一篇,Anchor Free的目标跟踪,这里会把前面记录过的也写下来。
目前anchor-free的目标跟踪用的思想大体可以划分为两类,一类是FCOS类的,还有一类就是CenterNet类的,关于这两个检测算法可以先了解一下。
SiamFC++: Towards Robust and Accurate Visual Tracking with Target Estimation Guidelines
论文:https://arxiv.org/pdf/1911.06188v4.pdf
代码:https://github.com/MegviiDetection/video_analyst

这个应该是第一篇将anchor-free用在siamese跟踪中的工作,作者仔细分析了anchor机制在跟踪中的缺陷,并提供了设计跟踪器的几条准则,依次准则设计了SiamFC++,也是FCOS第一次在siamese跟踪中亮相。
SiamCAR: Siamese Fully Convolutional Classification and Regression for Visual Tracking
论文:https://arxiv.org/abs/1911.07241v2
代码:https://github.com/ohhhyeahhh/SiamCAR

这一篇和SiamFC++很类似,这里标注一些实践细节的差异,首先backbone采用了改造的resnet50,然后特征融合上是先对特征融合再做相关,而不是像siamrpn++那样先对每个stage做相关再融合,这里我实验了一下两者性能差异不大(会略微低一点),但是前者计算量更小。(记得以前好像看到哪篇文章讲siamese类做了相关之后不宜再接很多卷积,但是这篇文章这样做了性能也没有下降,有看过的小伙伴可以提醒我一下)。inference阶段这里取了中心点周围top-k的均值作为最终结果。
Siamese Box Adaptive Network for Visual Tracking
论文:https://arxiv.org/abs/2003.06761
代码:https://github.com/hqucv/siamban

同样是FCOS的应用,比较insight的地方是打标签的时候使用椭圆标签,两个椭圆,小椭圆E2内的点是positive,大椭圆E1外的点是negative,两个椭圆中间的部分为ignore,具体参考之前笔记。

Fully Conventional Anchor-Free Siamese Networks for Object Tracking
论文:https://www.researchgate.net/publication/335467780_Fully_Conventional_Anchor-Free_Siamese_Networks_for_Object_Tracking

这篇注意的一个是Fusion Module,另一个就是分配GT到AFPN层时采用了FCOS一样的思路(划分[0,64], [64,128], [128,∞])

Ocean: Object-aware Anchor-free Tracking
论文:https://arxiv.org/abs/2006.10721
代码:https://github.com/researchmm/TracKit


这篇内容挺丰富的,出发点是anchor类方法只能回归IOU大于阈值的部分anchor,对于跟踪过程中如果出现overlap很小的anchor很难去refine,而anchor-free可以针对每个点进行预测。其次,作者设计了一个feature alignment module来从预测框中学习object-aware feature(图2c),从而对物体尺度敏感。特征融合上采用xy轴膨胀系数不同的膨胀卷积进行融合。最后就是采用了类似ATOM/DiMP的在线分类器更新方式。这篇还是很值得一读的,之后有时间做一个详细笔记。
Siamese Attentional Keypoint Network for High Performance Visual Tracking
论文:https://arxiv.org/abs/1904.10128v2


这篇将CenterNet和CornerNet结合到跟踪中,分别预测中心点和两个角点,以及运用了CBAM注意力机制强化上下文信息,应该是第一个将CenterNet/CornerNet用进来的,遗憾的是性能没有刷的很高。
Accurate Anchor Free Tracking
论文:https://arxiv.org/abs/2006.07560

这篇就是比较典型的CenterNet模式了,预测中心点,中心偏移以及宽高。

作者另外设计了backbone,最后在VOT2018性能虽然比siamrpn++略低但是速度是它的3.9倍(136FPS v.s. 35FPS)。
Siamese Keypoint Prediction Network for Visual Object Tracking
论文:https://arxiv.org/abs/2006.04078
代码:https://github.com/ZekuiQin/SiamKPN

这一篇将casscade的思想结合在centernet类的siamese跟踪器中,看上面图2结构已经很清晰了,KPN结构如下:

还有一个需要关注的就是每个stage训练的时候分类标签的高斯方差不一样:

遵循的原则就是越高的stage峰值越收束。