1. 引言:为什么对比学习是MOT的“游戏规则改变者”?
如果你做过多目标跟踪(MOT),肯定被ID切换(ID Switch)这个问题折磨过。目标一多,遮挡一来,或者外观一变,辛辛苦苦跟了半天的轨迹就断了,或者张冠李戴,把A的ID给了B。传统的解决思路,要么是依赖复杂的运动模型(比如卡尔曼滤波)来预测下一帧的位置,要么是训练一个强大的外观特征提取网络(ReID网络),通过计算特征相似度来关联目标。但后者有个老大难问题:怎么训练这个外观网络?
早期的做法,比如JDE、FairMOT,把训练外观特征看作一个分类问题——数据集中每个目标ID就是一个单独的类别。想象一下,一个大型数据集可能有成千上万个不同的行人ID,这相当于要训练一个成千上万个类别的分类器,而特征向量的维度通常只有128或256。这就像让你用一把只有256个格子的钥匙去开上万个不同的锁,难度极大,模型很容易过拟合或者学不到判别性强的特征。
这时候,对比学习(Contrastive Learning)就像一位“救火队长”登场了。它的核心思想特别直观:不用管到底有多少个类别,我只需要学会“分辨”就行了。具体来说,就是让同一个目标在不同帧中的特征(正样本对)尽可能接近,而不同目标的特征(负样本对)尽可能远离。模型只需要学习这种“拉近推远”的关系,训练目标一下子清晰了很多,也避免了超多类别分类的困境。
从2021年的QDTrack开始,对比学习正式在MOT领域大放异彩。它不仅仅是一种新的训练损失,更带来了一种全新的跟踪范式:“外观相似度即关联”。后续的研究者们沿着这条路,不断添砖加瓦,比如利用更长的轨迹历史信息、解决无监督训练中的不确定性、甚至处理多类别跟踪中的分类错误。今天,我们就来一起捋一捋这条清晰的技术演进线,从QDTrack的奠基,到后续几个代表性工作的精进,最后聊聊在实际项目中怎么用起来、有哪些坑。你会发现,理解了对比学习的核心,这些看似复杂的论文其实都围绕几个朴素的直觉在解决问题。
2. 基石:QDTrack与密集对比学习
QDTrack可以看作是“对比学习驱动MOT”的开山之作。它最核心的贡献,是提出了 “准密集”(Quasi-Dense) 的样本匹配策略,极大地丰富了对比学习在视频数据中的正负样本对,从而学到了更强、更鲁棒的外观特征。
2.1 核心思想:从“稀疏匹配”到“密集轰炸”
在它之前,也有一些工作尝试用对比学习做跟踪,但样本构建方式往往比较“稀疏”。比如,只选取那些置信度很高的检测框作为样本,或者只在相邻帧之间找匹配。这就像你学认人,每次只给你看一张清晰的正面照和另一张照片,学习效率有限。
QDTrack的想法很直接:既然对比学习“数据越多越好”,那我们就想方设法制造更多的数据对。它不再只关注那些高置信度的完美匹配,而是采用了一种更“宽容”的策略。在训练时,它会选取一个关键帧(Key Frame),然后在时序上附近随机采样一个参考帧(Reference Frame)。对于这两帧,检测器会给出大量的候选框。QDTrack用一种密集的匹配方式,让关键帧里的每一个候选框,都和参考帧里的所有候选框去计算相似度。
那么,如何定义“正样本”和“负样本”呢?这里用到了两个IoU阈值:


4202

被折叠的 条评论
为什么被折叠?



