这篇论文是我觉得目前在多目标跟踪领域效果最好的,能够有SOTA级MOTA以及很高的推理速度,最快能够达到60FPS.
解决的核心问题:如何在匹配过程中充分利用从高分到低分的检测框
具体思路:保留了几乎所有的检测框,并将它们分为高分检测框和低分检测框。我们首先将高分检测框与tracklet相关联。有些轨迹无法匹配,因为它们与高分检测框不匹配,这通常发生在发生遮挡、运动模糊或大小变化时。然后,将低分数检测框和这些不匹配的轨迹关联起来,以恢复低分数检测框中的对象,同时过滤掉背景。

如上图所示,其中图a列出了每一帧中的所有检测框(即不使用阈值过滤),但是这样会发生误检;图b仅列出了高分检测框(使用阈值过滤),所以当目标发生遮挡的时候会丢失其轨迹,容易发生ID切换;对于图c,在跟踪过程中,使用卡尔曼滤波预测下一帧的轨迹,并且保留下一帧的低分检测框,因为它可能与预测的轨迹相匹配,从而不丢失目标。
算法流程

- 输入是一段视频序列及目标检测器Det,并设置检测阈值q,然后依次遍历每个帧,使用检测器检测,
是得出的预测框及分数的集合。
- 根据检测阈值q将
划分为高分检测框
和低分检测框
。
- 对上一帧的轨迹集合T采用卡尔曼滤波来预测T中每个轨迹在当前帧中的位置。
- 在高分检测框与T(包括丢失的轨迹
)执行第一次关联。可以通过IOU或ID特征来计算它们之间的相似性,然后使用匈牙利算法完成基于相似度的匹配。将未完成匹配的高分检测框保留在
中,未匹配的轨迹保留在中。
- 第二次关联在低分检测框和第一个关联后的剩余轨迹
之间执行。然后将未匹配的轨迹保留在
中,未匹配的低分检测框则直接删除(即将它们看作背景)。
- 在第二次关联之后,将
放入
中。对于
中的每个轨迹,只有当它存在超过一定数量的帧(即30帧)时,才会将其从轨迹T中删除。否则,将保留T中丢失的轨迹
。最后,在第一次关联之后,从未匹配的高分检测框
中初始化新轨迹。每个帧的输出是当前帧中轨迹T的边界框和标识。
在第二个关联中单独使用IoU作为相似度很重要,因为低分数检测框通常包含严重的遮挡或运动模糊,所以外观特征不可靠。
附:
卡尔曼滤波:【小白学习笔记】(二)目标跟踪-卡尔曼滤波 - 知乎
匈牙利匹配:【小白学习笔记】(一)目标跟踪-匈牙利匹配 - 知乎
稀有目标跟踪数据集地址:非机动车检测数据集(百度网盘提取,永久有效)-深度学习文档类资源-CSDN文库
多目标跟踪算法:高效率与SOTA级MOTA实现

这篇博客介绍了在多目标跟踪领域的一种高效算法,该算法能实现SOTA级别的MOTA指标并保持快速推理速度(60FPS)。核心创新在于区分高分和低分检测框,先尝试将高分框与轨迹关联,再利用低分框恢复遮挡或模糊的目标。通过卡尔曼滤波预测轨迹并应用匈牙利算法进行匹配,有效地减少了ID切换和误检。算法在第二次关联时只使用IoU,以处理低分框中的遮挡情况。
2739

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



