zhbbupt 2019-05-27
商汤科技智能视频团队首次开源其目标跟踪研究平台 PySOT。PySOT 包含了商汤科技 SiamRPN 系列算法,以及刚被 CVPR2019 收录为 Oral 的 SiamRPN++。此篇文章将解读目标跟踪最强算法 SiamRPN 系列。
背景
由于存在遮挡、光照变化、尺度变化等一些列问题,单目标跟踪的实际落地应用一直都存在较大的挑战。过去两年中,商汤智能视频团队在孪生网络上做了一系列工作,包括将检测引入跟踪后实现第一个高性能孪生网络跟踪算法的 SiamRPN(CVPR 18),更好地利用训练数据增强判别能力的 DaSiamRPN(ECCV 18),以及最新的解决跟踪无法利用到深网络问题的 SiamRPN++(CVPR 19)。其中 SiamRPN++ 在多个数据集上都完成了 10% 以上的超越,并且达到了 SOTA 水平,是当之无愧的目标跟踪最强算法。
项目地址:https://github.com/STVIR/pysot
以上动图中,红色框是 SiamRPN++ 的跟踪效果,蓝色框是 ECCV 2018 上的 UPDT 的结果,可以看出 SiamRPN++ 的效果更佳,跟踪效果更稳定,框也更准。从这个图也可以看出跟踪的一些挑战:光照急剧变化,形状、大小变化等。
SiamRPN (CVPR18 Spotlight)
在 CVPR18 的论文中(SiamRPN),商汤智能视频团队发现孪生网络无法对跟踪目标的形状进行调节。之前的跟踪算法更多的将跟踪问题抽象成比对问题,但是跟踪问题其实和检测问题也非常类似,对目标的定位与对目标框的回归预测一样重要。
研究人员分析了以往跟踪算法的缺陷并对其进行改进:
结合以上两点创新,在基线算法 SiamFC 的基础上,SiamRPN 实现了五个点以上的提升(OTB100,VOT15/16/17 数据集);同时还达到了更快的速度(160fps)、也更好地实现了精度与速度的平衡。
DaSiamRPN (ECCV18)
SiamRPN 虽然取得了非常好的性能,但由于训练集问题,物体类别过少限制了跟踪的性能;同时,在之前的训练方式中,负样本只有背景信息,一定程度上也限制了网络的判别能力,网络只具备区分前景与不含语义的背景的能力。基于这两个问题,DaSiamRPN 设计了两种数据增强方式:
经过上述的改进,网络的判别能力变得更强,检测分数也变得更有辨别力,这样就可以根据检测分数判断目标是否消失。基于此,DaSiamRPN 可以将短时跟踪拓展到长时跟踪,并且在 UAV20L 数据集上比之前最好的方法提高了 6 个点。在 ECCV18 的 VOT workshop 上面,DaSiamRPN 取得了实时比赛的冠军,相比去年的冠军有了 80% 的提升。
SiamRPN++ (CVPR19 Oral)
目前,孪生网络中的核心问题在于现有的孪生网络目标跟踪算法只能用比较浅的卷积网络(如 AlexNet),无法利用现代化网络为跟踪算法提升精度,而直接引入深网络甚至会使性能大幅衰减。
为了解决深网络这个 Siamese 跟踪器的痛点,商汤智能视频团队基于之前 ECCV2018 的工作(DaSiamRPN),通过分析孪生神经网络训练过程,发现孪生网络在使用现代化
深度神经网络
存在位置偏见问题,而这一问题是由于卷积的 padding 会破坏严格的平移不变性。然而深网络并不能去掉 padding,为了缓解这一问题,让深网络能够在跟踪提升性能,SiamRPN++ 中提出在训练过程中加入位置均衡的采样策略。通过修改采样策略来缓解网络在训练过程中的存在的位置偏见问题,让深网络能够发挥出应有的效果。
通过加入这一采样策略,深层网络终于能够在跟踪任务中发挥作用,让跟踪的性能不再受制于网络的容量。同时,为了更好地发挥深层网络的性能,SiamRPN++ 中利用了多层融合。由于浅层特征具有更多的细节信息,而深层网络具有更多的语义信息,将多层融合起来以后,可以跟踪器兼顾细节和深层语义信息,从而进一步提升性能。
除此之外,研究人员还提出了新的连接部件,深度可分离相关层(Depthwise Correlation,后续简写为 DW)。相比于之前的升维相关层(UpChannel correlation,后续简写为 UP),DW 可以极大地简化参数量,平衡两支的参数量,同时让训练更加稳定,也能更好的收敛。
为了验证以上提出的内容,研究人员做了详细的实验。在比较常用的 VOT 和 OTB 数据集上,SiamRPN++ 取得了 SOTA 的结果。在 VOT18 的长时跟踪,以及最近新出的一些大规模数据集上如 LaSOT,TrackingNet,SiamRPN++ 也都取得了 SOTA 的结果。
目前相关代码现已上传至商汤科技开源目标跟踪研究平台 PySOT。PySOT 实现了目前 SOTA 的多个单目标跟踪算法,旨在提供高质量、高性能的视觉跟踪研究代码库,并将其灵活应用于新算法的实现和评估中。欢迎大家使用与交流!
PySOT 开源项目
参考文献