李顺芳
在线多目标跟踪(Multi Object Tracking, MOT)在视频理解[1]、智能监控[2]和无人驾驶[3]等领域起着至关重要的作用。其逐帧关联视野中所有特定类别的目标,最终得出所有目标的运动轨迹。随着深度学习的发展,YOLO系列[4]和Faster RCNN[5]等基于深度学习的目标检测器日渐成熟,并展现出令人满意的检测性能。基于这些检测器的检测跟踪范式(Tracking by Detection, TBD)主导了在线MOT领域的研究[6]。
基于TBD范式的SORT方法[7]在跟踪准确度和速度方面表现出色,这得益于其有效结合了检测器、卡尔曼滤波(Kalman Filter, KF)[8]、交并比(Intersection over Union, IOU)距离[9]和匈牙利算法[10]等技术手段。在此基础上,Zhang等[11]通过在数据关联过程中增加低分检测框匹配步骤,提出了ByteTrack算法,为MOT领域提供了一个强大的基线。然而,这两种方法均为基于运动的MOT方法,难以应对长期目标遮挡和目标的非线性运动。Cao等[12]认为基于运动的方法难以处理非线性运动是因为KF使用线性运动假设并以预测为中心,导致估计结果均为次优解。他们提出OC-SORT方法,其采用观测中心思想,展现了对非线性运动的强抗性。然而,该方法以观测为中心的设计却影响了正常场景下的性能。Liu等[13]提出一种基于幂次变换的自适应卡尔曼滤波(Adaptive Kalman Filter,AKF),将其与ByteTrack相结合,提出PA-ByteTrack算法,有效处理了非线性运动和检测失真,然其性能受超参数设置影响较大。此外,针对相机运动导致的KF预测失真,Aharon等[14]在ByteTrack的基础上,引入相机运动补偿(Camera Motion Compensation, CMC)和深度外观提取器,提出BOT-SORT,在多个主流数据集上达到了最先进(state-of-the-art, SOTA)的性能。Maggiolino等[15]也基于OC-SORT,引入了CMC技术和外观模型,提出Deep OC-SORT取得了出色的性能。然而,由于额外的图像配准和外观特征提取过程,这两种方法均难以实现实时跟踪。
针对目标的非线性运动和检测失真问题,在离散线性KF中引入轨迹IOU相似度和检测置信度作为自适应参量,动态调节KF的过程和观测协方差。此外,为应对相机运动造成的预测失真,基于图像匹配算法,利用稀疏光流[16]方法,剔除动态目标特征点,并结合随机采样一致性(Random Sample Consensus, RANSAC)[17],估计前后帧仿射变换矩阵,并对KF预测量进行运动补偿。综合以上两点改进,得出所提补偿-自适应卡尔曼滤波(Compensation-Adaptive Kalman Filter, C-AKF)。为验证其性能,将其与BYTE[11]框架结合,在MOT17数据集[18]上开展了消融实验和定性分析,以验证所提方法有效性。此外,还与近期的SOTA方法进行了对比实验。
与BOT-SORT[14]类似,定义目标的状态向量为一个8元组,如式(1)所示。
(1)
z=[xc,yc,w,h]T
(2)
在不存在主动控制的跟踪任务中,离散时间KF由一组线性随机差分方程控制,如式(3)和(4)所示。
xk=Fxk-1+μ
(3)
zk=Hxk+ν
(4)
其中,F为状态转移矩阵。所提KF依旧采用线性运动假设。因此,所提F如式(5)所示。观测矩阵H如式(6)所示。
(5)
(6)
随机变量μ∈8×1和ν∈4×1分别表示过程噪声和观测噪声。它们相互独立,且服从正态分布。由此可得,所提KF模型的过程协方差矩阵Q和观测协方差矩阵R,如式(7)所示。
(7)
此外,状态估计协方差矩阵P∈8×8如式(8)所示。
(8)
所提C-AKF预测过程如式(9)所示:
(9)
(10)
(11)
(12)
(13)
(14)
(15)
所提C-AKF的状态更新过程如下。首先,需要权衡估计与观测误差,求解卡尔曼增益Kk∈8×4,如式(16)所示。
(16)
(17)
(18)
将所提C-AKF与全关联匹配MOT算法BYTE[11]结合,得出所提在线MOT方法,如图1所示。
所有方法均在MOT17数据集上进行实验。其包含14段视频,囊括相机运动、低视点和夜晚等多种复杂场景。所用视频的前一半被划分为训练集,另一半则为验证集。实验所涉及所有方法均采用相同的YOLOX检测器[4],其权重和超参数设置与文献[11]相同,所有实验数据均未使用后处理。实验设备如下:CPU型号为AMD 3700X,内存大小为32GB,显卡型号为Nvidia RTX3060。程序部署环境为Python 3.8和PyTorch 1.10。
为综合评估所提方法跟踪性能,引入主流CLEAR[21]指标,其包含多目标跟踪准确度(Multi-Object Tracking Accuracy, MOTA)、IDF1分数(Identification F1-Score, IDF1)、身份切换(ID Switch, IDs)、主要跟踪目标(Mostly Tracked, MT)、主要丢失目标(Mostly Lost, ML)、轨迹碎片(Fragment, Frag)、假阳性(False Positive, FP)和假阴性(False Negative, FN)等度量。此外,还引入近期更受关注的高阶跟踪准确度(High Order Tracking Accuracy, HOTA) 和关联准确度(Association accuracy, AssA)。关联速度则由每秒帧数 (Frames Per Second, FPS)表示。为直观反映性能优劣,以下数据中通过箭头表示度量最优变化方向。
以ByteTrack作为所提方法基线,在MOT17半验证集上开展消融实验,量化评估所提2个改进点的贡献,结果如表1所示。
表1的实验结果表明,无需使用所提补偿过程就可显著提高ByteTrack的跟踪性能。仅使用AKF时,HOTA、MOTA、IDF1和AssA指标分别提高了0.7、0.2、0.5和0.7,MT和ML指标也有所改善,但IDs指标增加了97,关联速度下降了10FPS。在加入CMC模块后,跟踪性能再次提高,尤其是跟踪鲁棒性。与ByteTrack基线相比,加入补偿过程的方法在HOTA、MOTA、IDF1和AssA指标上分别提高了1.2、0.7、1.8和1.6,而IDs指标降至174。然而,由于CMC模块造成的额外图像配准延迟,关联速度下降至60.3。因此,在实际部署时,需根据实际需求选择性调整所提方法。总的来说,无论是仅使用AKF还是完整版本的C-AKF方法,均可有效地提高算法的跟踪性能。C-AKF的效果更好,但会造成关联速度大幅下降,不过即便如此,仍能满足实时跟踪需求(FPS >15)。
表2报告了所提方法与近期SOTA方法在MOT17半验证集上的评估结果。
表2 对比实验结果(最优数据加粗表示)
由表2可知,所提方法在HOTA、MOTA、IDF1和AssA指标上分别取得了68.9、78.4、81.1和71.1的性能表现。仅次于SOTA方法BOT-SORT。与同为基于运动的方法OC-SORT相比,所提方法的HOTA、MOTA、IDF1和AssA分别高出2.8、3.9、3.5和2.5,IDs降低59,提升显著。额外的CMC模块使得所提方法速度大幅落后于前者,但仍满足实时需求。Deep OC-SORT具有所有方法中最低的IDs,但其余指标均落后于所提方法。由于外观特征提取和CMC带来的额外计算延迟,其关联速度仅为所提方法的10.9%,并未达成实时跟踪。综上,所提方法在具备令人满意的跟踪性能的同时,兼顾了实时跟踪需求。
为比较所提方法与其基线ByteTrack的性能,图2报告了ByteTrack、仅使用AKF和所提方法在MOT17-05序列中的第10、20、30和40帧的跟踪结果。
由第10帧黄色三角形处突然进入的黑衣男主可见,面对非线性运动,ByteTrack难以及时做出反映。相比之下,使用了AKF的两个方案均能够成功跟踪黑衣男子。相似的情况也出现在第20帧红色三角形处女子身上;此外,由于视角运动和高度遮挡的影响,在黄色三角形左侧的6号目标以及第30、40帧蓝色三角形处的小目标上,ByteTrack和仅使用AKF的方案都无法跟踪目标,引入了CMC过程的所提方法则成功跟踪。因此,所提方法在应对非线性运动、检测失真和视角运动等问题时具有更好的鲁棒性和跟踪效果。
(1) 所提C-AKF方法中的两个改进点(CMC和AKF)均可有效改善ByteTrack的跟踪性能。然而,CMC过程会造成关联速度下降,因此需要在实际运用场景中进行权衡。
(2) 所提MOT方法在MOT17验证集上表现优异,其跟踪性能仅次于SOTA方法BOT-SORT,能够实现68.9 HOTA和81.1 IDF1,且具有明显的关联速度优势。因此,所提方法能够用于时间关键型在线MOT任务。