SparseTrack
SparseTrack: Multi-Object Tracking by Performing Scene Decomposition based on Pseudo-Depth[1]
作者是来自华科的Zelin Liu, Xinggang Wang等人。论文引用[1]:Liu, Zelin et al. “SparseTrack: Multi-Object Tracking by Performing Scene Decomposition based on Pseudo-Depth.” ArXiv abs/2306.05238 (2023): n. pag.
Time
- 2023.Nov
Key Words
- sparse decomposition
- a method for obtaining the relative depth of targets from 2D images: pseudo-depth
- depth cascading matching(DCM)
总结
探索鲁棒的、高效的关联方法一直是MOT中重要的问题,尽管现有的跟踪方法实现了很好的性能,阻塞和频繁的遮挡仍然是MOT中挑战性的问题。作者表明了:在密集场景中进行sparse decomposition是增强关联遮挡目标的重要的步骤。为了这个目的,提出了一个pseudo-depth估计的方法,来得到2D图像中的targets的相对的深度。其次,设计了一个深度级联匹配算法,用得到的深度信息将dense target 多个稀疏 的target subsets,在这些稀疏的target subsets中进行数据关联,以从近到远的方式。SparseTrack提供了一个新的视角,用于解决MOT中挑战性的拥挤场景。只用IoU匹配,SparseTrack实现了很好的性能。
MOT在很多场景中有应用。它旨在持续地在不同的视频帧中识别相同的目标,尽管之前的tracker在多个跟踪数据集上实现了很好的性能,密集场景和频繁的遮挡仍然是MOT中的重要挑战。当前的主流的跟踪方法是用tracking-by-detection(TBD)的范式,逐帧地进行数据关联。为了解决密集场景中的遮挡关联的障碍,一些方法例如bytetrack通过关联低置信度的detections,实现了有效的跟踪。尽管bytetrack展示了处理低置信度detections的高效,在大量低分数的遮挡或者频繁拥挤的场景中,它在location association上的精度容易下降。其他的方法通过用了powerful 时序建模和轨迹query 机制来确保遮挡实例的跟踪性能。然而,这些方法是高计算成本的,特别是被大量的物体和频繁的遮挡所填充的场景。在这个工作中,作者证明了基于depth information的target set decomposition是一个有效的路径,用于处理密集遮挡中的数据关联。作者展示了一个occlusion order for the objects in a local region, occlusion order是和depth order一致的,从近到远。因此,一组密集的occlusions可以通过基于深度信息的分割测量,被划分为几个不重叠的subsets。在相邻的target subsets之间,它们的x-y location可以是相似的,但是它们的x-y-depth locations更容易区分。这个跟踪器在不同的depth level对稀疏的subsets进行数据关联。相比于直接关联整个的occluded object set,在数据关联中,sparse decomposition能够缓解位置相似但是深度不同的轨迹的冲突。特别地,优先对有更小的depths的target subsets进行关联,因为occlusion order和depth order高度相关。因此,每个子集中的targets可以以fine-grained的方式被处理,受到较小的来自其他depth level的targets的影响。
为了实现以上的设计,提出了一个方法,用于得到来自2D image中的targets的relative depth: pseudo-depth,基于两个scene priors: (1)捕捉目标的相机is higher than the ground
- 场景中的所有目标都是在平地上。 换句话说,地面上没有明显的起伏。这种情况下,可以将targets的相对深度从三维空间投影到2D 图像平面,得到target pseudo-depth values,即目标bbox的底部到图像底边的距离。这个pseudo-dpeth值用作reference,来测量targets之间的相对深度关系,用ground作为参考系统,而不是三维空间中的目标的ground truth depth。另外,设计了一个depth cascade matching(DCM)算法,基于pseudo-depth信息,来执行层次化的关联。具体地,根据pseudo-depth value,将轨迹和检测划分成多个target subsets,DCM算法在这些稀疏的target subsets上,以pseudo-depth value从近到远的方式,执行IoU关联。通过将pseudo-dpeth方法和DCM集成到数据关联过程中,提出了一个新的tracker称之为SparseTrack,SparseTrack的本质是通过DCM、基于depth,对遮挡进行层次化的关联。
SparseTrack在多个数据集上实现了很好的性能,证明了基于pseudo-depth的target set decomposition的高效。 主要贡献如下:
- 提出了一个从2D 图像中得到目标的相对深度的方法:pseudo-depth,是基于场景中的两个先验,能够得到目标的pseudo-depth value,比较不同目标之间的相对深度关系
- 基于pseudo-depth方法提供的深度信息,设计了一个有效的、用于在密集场景关联遮挡的深度级联匹配方法,能够将密集的target sets分解成多个稀疏的target subsets,实现scene decomposition
MOT:当前的主流MOT关注于确保鲁棒的时序关联,导致多种tracking的发展,基于不同的时序建模方法,主流的tracking方法可以分为4类:通过位置信息的时序关联;通过外观特征的时序关联;通过图优化的时序关联;通过注意力机制的时序关联;早期的trackers,基于深度学习,执行连续帧之间的时序关联,基于恒速运动先验利用KF来对目标的帧间运动进行建模,确保了轨迹的稳定性。为了实现长期的关联,DeepSORT和MOTDT通过增加外观特征,补偿关联长期轨迹中位置信息的缺陷。尽管外观信息通过ReID模型产生的外观cuesu对于关联长期目标是有效的,目标遮挡和运动模糊对这些cues的可靠性提出了挑战,一些方法用自监督预训练增强的ReID模型来缓解遮挡目标的外观,但是有更高的计算成本。其他的tracker,通过用单一的框架,联合优化detection和reid,提高计算效率,这有点限制了检测性能和外观质量的上限。受Transformer启发,有的从注意力机制的角度执行轨迹时序的propagation,实现了复杂场景下的高性能。最近的一些工作将MOT视为一个图优化问题,用图神经网络或者图匹配,来实现鲁棒的数据关联。当场景中目标数量增加时,基于图的方法的计算开销会增加2倍。
处理目标遮挡的方法:tracker的性能一定程度上依赖于处理遮挡的能力,最近的工作尝试从不同的角度处理遮挡。例如MotionTrack学习轨迹的运动模式,将它和历史信息结合,来对遮挡的轨迹进行建模。MOTR是一个端到端的MOT框架,用detection queries和trajectories queries处理新出现的目标和跟踪目标。由于queries和大量的时序训练之间的相对独立,MOTR在遮挡的时序建模表现很好。DPMOT提出subject-ordered depth estimation方法,来自动的对2D 场景中的检测目标的deption 位置进行排序,通过构建pseudo-3D 卡尔曼滤波,DPMOT实现了鲁棒的遮挡目标的关联,BoTSORT结合相机运动补偿和IoU-ReID 融合,能够结合运动和外观信息实现更精确的遮挡跟踪。OUTrack用一个无监督的reid模块和occlusion-aware module来预测目标遮挡出现的位置,为了补偿缺失的detections。ApLift引入了一个先进的近似求解器用于处理不相交的path problem,来管理扩展的和拥挤的轨迹序列。
目标集合分解:很多的trackers跟着tracking-by-detection范式,执行一定程度的target set 分解。例如DeepSORT通过多阶段的级联匹配,实现了逐步的检测关联。FairMOT基于外观和位置信息,分别处理detection set,也可以被视为通过tracking clues的detection set的分支。LMGP通过引入了一个pre-clustering的方法,有效地消除了single-camera trackers的轨迹误差,将检测到的objects分组用于association。ByteTrack将detection set基于置信度分数,分为高分和低分,用scores和occlusion之间的关联分别处理低分遮挡的目标。然而,在密集场景中,阻塞导致遮挡,导致低分的检测,虽然bytetrack将低分的occlusion从场景中解耦,低分的目标仍然是拥挤的。这种情况下,基于IoU的数量关联会产生更多的匹配误差,限制了跟踪的能力,为了这个目的,SparseTrack基于pseudo-depth levels,划分detection set和轨迹set,确保关联阶段中的目标不再拥挤。
深度信息在MOT中的应用:深度信息用在了很多与3D场景有关的应用中,例如单眼或者立体深度估计、3D检测和跟踪,最近流行的Nerf。标准的深度提供了物体的大量的外观和位置信息,导致不同的3D tracking方法。例如TrackRCNN用外观和运动特征用于tracking,通过交替跟踪3D点云和2D图像中的物体,增强了精度和稳定性。FANTrack用了一个基于特征的关联网络FAN用于tracking,features是来自3D CNN from point cloud data和2D CNN from camera image。CenterPoint用keypoint检测器检测目标的中共新,回归出其他属性例如3D size、3D direction、speed等。然而,通过简单地greedy nearest point matching执行3D object tracking。事实上,二维图像可以被视为在透视变换下三维场景的投影。根据相机模型,可以简单地推理2D图像和3D场景之间的关系。SparseTrack利用这个variable relationship,来得到2D图像中目标的pseudo-depth,部分取代了标准深度在描述物体间位置关系的作用。
General Framework:SparseTrack遵循tracking-by-detection范式,执行逐帧的数据关联。给定要给frame \(f_i\),首先被YOLOX处理,输出bbox和置信度分数。然后,基于每个检测到的bbox和输入的image size,用pseudo-depth方法得到2D图像中的目标的pseudo-depth值。pseudo-depth值反应了图像中目标之间的相对深度关系。在数据关联阶段,用pseudo-depth值和用DCM算法来完成decomposition和association for tracks and the detections。最后,SparseTrack输出tracking results (\(x_1,y_1,w,h,s\))
Pseudo-Depth:在通常的跟踪场景中,pseudo-depth方法是基于两个先验的假设:捕捉目标的相机is above teh ground和场景中的所有目标在同一个平面上。这些假设在一般的场景中很容易满足,特别地,pseudo-depth方法是一个获得pseudo-depth values的简单的几何方法;首先,得到位置点 \(P_0\),物体在3D space中接触地面的点,将 \(p_0\)投影到图像平面 F上,得到对应的投影点 \(p_1\);第二,从\(p_1\)点画个垂线到图像的底边 \(L_b\),得到垂线和底边 \(L_b\)的交点 D。顶一个投影点 \(P_1\)和交点 D之间的欧氏距离作为物体的pseudo-depth value。设置图像的高度为H,pixel coordinates of \(P_1\)为 \((x_p,y_p)\),pseudo-depth计算如下:
\[L_p = H - y_p\]
\(L_P\) 是pseudo-depth值,尽管pseudo-depth值不能代表三维空间中物体的ground truth depth,它能够充分地衡量不同物体之间的相对depth relationship,为在depth level上,密集场景的划分提供了基础。
- 作者提出了一个简单但是powerful的数据关联方法,不同于其他的方法关注于提高外观特征和motion cues,来确保关联的可靠性,SparseTrack场景中的所有目标通过pseudo-depth方法和DCM划分为多个稀疏的target subsets,来有效地关联遮挡。将detection set划分为高分和低分的detection subsets based on confidence scores。然后,用DCM算法在高分detection subset上进行数据关联。对于出现在之前帧中的轨迹但是不匹配的,通过DCM将它们和低分的detection subset关联。对于未匹配的高分detections,将它们和之前帧中出现的轨迹关联。最后,没有匹配的高分detections初始化为新的轨迹,丢失的轨迹超过了一定的帧数就会被删除。 因为置信度分数和目标的遮挡相关联,基于置信度分数,继承了decomposition方法,因为高分的检测通常意味着很低的遮挡,在关联高分目标的时候,将pseudo-depth level设为1或2,相反,在关联低分detection的时候,将pseudo-depth level设为4或8.帮助密集遮挡的细粒度关联
\(Fig.2{[1]}\)
在bytetrack中,低分检测将和track set用IoU
进行匹配,因为低分检测的位置的高度相似,容易出错。这篇文章尝试从低分检测分解的角度来解决这个问题,而不是将它们进行匹配。
\(Fig.2{[1]}\)
在局部区域的occlusions。随着depth
values的增加,被遮挡目标的排序逐渐向背景偏移
\(Fig.1^{[1]}\)
DCM的层次化关联的例子,白色方形区域表示在水平和竖直方向上都没有对应的detection和轨迹subsets之间的数据关联。方形中的深色区域反应了轨迹和detections之间的相似度,更深的颜色表示更高的相似度。DCM根据depth
order 从近到远,将同一个depth level的target
set分解为多个subsets。对于每个depth
level中的没有匹配的轨迹和检测,tracker会在下一个depth
level中处理它们。
\(Fig.2{[1]}\)
SparseTrack的框架,图例信息位于右下角的框中,\(\tau\)
用来划分高分和低分,SparseTrack执行target set
decomposition,通过DCM和pseudo-depth来精确地关联低分occlusions。