BoT-SORT 论文笔记及思考
时间:2023-04-20 15:07:00
BoT-SORT: Robust Associations Multi-Pedestrian Tracking
BoT-SORT论文链接
参考文章
最近新出来的霸榜多目标跟踪BoT-SORT论文在MOTChallenge数据集的结果排名第一(state-of-the-art),实现了指标 80.5% MOTA、80.2% IDF1 和 65.0% HOTA。
MOT指标参考
论文坚持一贯的使用风格 Tracking-by-detection 作为MOT使用目前最先进的检测器的任务YOLOX在ByteTrack在此基础上更新许多作者自己的想法。
一、修改卡尔曼滤波器(KF)状态向量和其他矩阵参数
起初SORT中KF状态向量由7元组成:,其中x,y为中心值,s边界框比(面积),a为边界框的纵横比(w/h)。
而DeepSort中KF状态向量改为8元组:a它仍然是边界框的纵横比,只是预测第四维改为边界框的高度h。
论文中修改KF状态向量改为预测宽度w,因为作者发现,在真实预测的过程中,预测框并不完全包含行人,而是正确预测宽高能更好地匹配行人框,跟踪匹配IOU也有很大的改进。
论文截取的图片
此外,根据状态向量修改初始矩阵参数(过程噪声和测量噪声),以满足整体修改预测。
二、相机运动补偿(Camera Motion Compensation)
由于KF它是一种匀速线性运动模型,会对非线性跟踪产生不适应。作者提出了传统的方法Global motion compensation (GMC),使用OpenCV背景提取特征描述子中的提取图像关键技术(类似于ORG、SIFT、SURF),稀疏光流征跟踪稀疏光流RANSAC计算并获取背景运动的仿射变换矩阵,以此通过前后帧的运动信息生成仿射变换矩阵来预测行人边界框,称为运动补偿,仿射变换矩阵平移部分只会影响中心点位置,其它影响状态向量和噪声矩阵。因此,作者给出了运动校正的等式方程:
在跟踪中加入运动补偿后的效果实际上是可以想象的,作者的实验也贴了图片,在实际过程中,KF在预测过程中,如果目标运动过快或过慢,可能会出现预测滞后和提前,在运动匹配过程中iou事实上,匹配会更加困难,因为无论预测框是滞后的还是提前的,总会导致与检测框的重合度不高,这就给MOT它带来了巨大的挑战,更不用说运动模糊了。
三、IOU ReID的融合机制
使用FastReID库中ResNest50作为backbone,BoT(SBS)作为基线训练reid默认参数用于网络和网络训练FastReID可以在项目中找到,分辨率为128x输入分辨率为384,损失函数为经典TripletLoss,总共迭代60个epoch训练强有力ReID网络提取特征。使用指数移动平均(EMA)为了更新第k帧中第一个预测框的轨迹状态,在拥挤和屏蔽场景中检测得分低的特征不可靠,不会用于特征匹配。
并且有提出使用IOU ReID匹配融合机制的策略,以下公式作为匹配输出:
作者使用设置iou阈值为0.5.余弦相似度阈值为0.2作为匹配的限制。
最后,作者提到了使用场景的差异GMC来说大图会产生耗时较大的问题,可以采用多线程的方式来抵消平衡这一部分耗时,不过博主觉得在嵌入式端的话使用的分辨率一般不会太大,毕竟板端的耗时太大会影响整个跟踪的性能。
此外,作者还使用了一些匹配技巧,这些技巧经常发生在跟踪中。由于目标的屏蔽和不匹配,预测的梯度弥散效应会导致预测框的变形。在这里,我们可以做一些基本的策略来维护它们。作者没有提出,而是给出了相关文献,我们可能知道,为了保持这个预测框在目标出现之前的轨迹尽可能匹配,类似于ByteTrack策略,当低分检测框出现时,仍然使用IOU匹配以保持轨迹的连续性。
而且,作者说他不知道为什么会这样MOT一些指标得到了改进,猜测可能是因为KF状态向量W参数的预测修改使预测框与检测框拟合,匹配更好。我认为这仍然非常有用。当预测框大小的拟合与检测框相似时,iou匹配可以起到鲁棒的作用。
实用性:
就我个人而言,我认为这篇论文仍然有很多实用的参考价值,因为在跟踪过程中经常会发生运动过程中丢失的目标KF状态修改可以直接影响预测匹配,实践中运动补偿可能有点困难,但值得一试!