Skip to content

[CVPR 2022] TrackFormer:基于 Transformer 的端到端多目标跟踪框架

📄 论文:TrackFormer: Multi-Object Tracking with Transformers 📅 会议:CVPR 2022 🔗 论文地址:https://arxiv.org/abs/2101.02702 💻 GitHub:https://github.com/timmeinhardt/trackformer


一、研究背景

多目标跟踪(Multi-Object Tracking, MOT)传统采用两阶段方式:先检测,再通过匈牙利匹配、ReID 或运动模型进行数据关联。此类流程虽有效,但存在以下问题:

  • 非端到端,需手工设计关联规则;
  • 难以处理遮挡、消失与再出现等复杂情形;
  • 推理速度受限,难以统一优化。

TrackFormer 是首个纯基于 DETR 框架的 MOT 方法,提出将“跟踪”转化为“跨时间的序列预测问题”,利用 Transformer 实现检测与关联统一处理,无需额外 ReID 模块或运动预测器


二、核心思想

TrackFormer 基于 DETR,核心思想在于:

通过递归性地将上一帧目标的解码器状态作为当前帧输入,从而实现帧间 ID 关联。

简而言之,TrackFormer 不是通过 IoU 或 ReID 匹配,而是通过延续上帧 query 的状态,追踪目标本身


三、整体架构

帧 t−1 预测状态 → 帧 t 图像 + backbone → Transformer 编码器 → Transformer 解码器(带上帧 track queries)→ 当前帧目标检测 + 跟踪

1. 图像特征提取

  • 使用 CNN(如 ResNet50)提取图像特征;
  • 多尺度融合以适应不同大小目标。

2. Transformer 编码器(Encoder)

  • 输入图像特征 + 位置编码;
  • 自注意力建模空间上下文。

3. Transformer 解码器(Decoder)

  • 接收两类 queries:

✅ Track Queries(已跟踪目标)

  • 来自上一帧 decoder 输出;
  • 作为“延续目标”再次用于解码;
  • 若目标消失,模型可学习输出 no-object 类。

✅ Detection Queries(新目标)

  • Learnable queries;
  • 用于发现新进入画面中的目标。

📌 将这两类 query 合并输入 decoder,一步同时实现检测与追踪。


四、输出结构

每个 decoder 输出被送入两条 MLP:

  • 边界框预测:\([x, y, w, h]\)
  • 类别预测(含 no-object)

此外,每个 query 会被赋予一个ID,用于跨帧跟踪目标。


五、跟踪方式说明

TrackFormer 没有显式使用任何传统的 ReID 或运动模型,而是:

  • 利用每帧 query 向量的递归传递;
  • 隐式建模目标运动轨迹;
  • 匹配与延续在 Transformer 内部完成。

如果某个 track query 在当前帧预测为 no-object,即表示目标暂时消失。


六、损失函数设计

TrackFormer 采用 DETR 相同的 bipartite matching 策略:

1. 匹配策略(Hungarian Matching)

  • 基于类别和边界框误差计算总匹配成本;
  • 每帧目标与输出 query 一对一分配。

2. 损失项

总损失为:

\[ \mathcal{L} = \mathcal{L}_{cls} + \lambda_{L1} \cdot \mathcal{L}_{L1} + \lambda_{giou} \cdot \mathcal{L}_{giou} \]
  • \(\mathcal{L}_{cls}\):交叉熵损失(类别)
  • \(\mathcal{L}_{L1}\):边界框位置误差
  • \(\mathcal{L}_{giou}\):边界框重叠程度

七、TrackFormer vs. TransTrack 对比

模型 TrackFormer TransTrack
框架来源 基于 DETR 基于 DETR
关联方式 上帧 decoder output 作为 track queries 显式将上一帧 bbox encode 为 track queries
ReID 特征 ❌ 不使用 ❌ 不使用
运动模型 ❌ 不使用 ❌ 不使用
新目标检测 learnable detection queries learnable detection queries
ID 分配机制 递归 query ID 传递 匹配结果隐式 ID 分配
是否端到端

简要总结

  • TransTrack 将前一帧 bbox 编码为 track query;
  • TrackFormer 将上一帧 decoder 输出直接作为 query,是更“语义连续性”的方式。

八、实验结果(MOT17)

方法 MOTA ↑ IDF1 ↑ HOTA ↑ IDS ↓ FPS ↑
Tracktor++ 56.3 55.1 - 2,072 17
FairMOT 76.2 72.3 63.1 3,303 25
TransTrack 75.9 63.5 60.5 2,121 18
TrackFormer 74.1 68.6 61.8 1,074 12
  • TrackFormer ID Switch 更少,说明关联更稳定;
  • FPS 略慢,但结构更端到端、鲁棒。

九、关键创新点

  • 🧠 引入递归式 decoder query 表示目标延续性,实现无 ReID 的多目标跟踪;
  • 检测 + 跟踪统一处理,结构整洁;
  • 🔄 消失目标可自然处理,适配复杂场景;
  • 📦 端到端训练,兼容已有 DETR 实现

TrackFormerMOTR (Multi-Object Tracking with Transformers) 虽然都基于 DETR 架构并用于 多目标跟踪(MOT),但它们在 query 设计、关联方式、框架整合深度 等方面有重要区别。以下是对两者的详细对比分析:


🆚 TrackFormer vs. MOTR

项目 TrackFormer [CVPR 2022] MOTR [ECCV 2022]
📚 论文 https://arxiv.org/abs/2101.02702 https://arxiv.org/abs/2102.00763
📁 代码 https://github.com/timmeinhardt/trackformer https://github.com/megvii-research/MOTR
🔧 基础架构 DETR DETR + Deformable DETR
🧠 跟踪 query 来源 上一帧 decoder 输出 上一帧目标的位置(+ 匹配结果)
📥 新目标检测 learnable queries 动态生成新 query
🧵 ID 管理方式 decoder 递归传递 显式维护 track query pool(带 ID)
🔄 Query 生命周期 query 递归传递,自动学习消失 query 显式激活/终止管理
🚀 关键点 简洁递归设计,无需额外模块 结合 Deformable DETR,性能更强,结构复杂
🧪 是否使用时序信息 间接建模(递归 query) 显式跨帧建模
🎯 新目标引导方式 detection query 捕获新目标 MOTR 自动初始化新 query 并分配 ID
🧰 模型复杂度 相对较小 更复杂,依赖 deformable attention

🎯 结构图比较

🔹 TrackFormer

帧 t 图像 → Backbone → Transformer Encoder
帧 t−1 decoder output(track query) → Transformer Decoder
           输出框 + 类别 + ID(隐式传递)
  • 使用上一帧的 decoder 输出作为当前帧 query;
  • query 是语义向量,没有显式位置;
  • 不显式维护 ID pool。

🔹 MOTR

帧 t 图像 → Backbone → Deformable Encoder
track query pool(带目标 ID) → Decoder
    输出框 + 类别 + ID(显式 ID 管理)
  • 使用 Deformable DETR 架构提升性能;
  • track query 是结构化对象,带显式 ID 和状态(激活/结束);
  • 可显式初始化、更新、终止 track;
  • 支持可变数量目标和动态 query 管理。

🧠 区别总结

维度 TrackFormer MOTR
Query 机制 隐式 显式维护和控制
Query 生命周期管理 模型自动学习 显式设计管理机制
新目标处理 Detection query 捕获 自动初始化新 track query
使用 Deformable Attention 是(提升性能)
是否 end-to-end
是否支持遮挡与重现 有限 更鲁棒(ID 生命周期可控)
实际效果 好,结构简洁 更强,效果更优但结构更复杂

🏁 总结一句话

TrackFormer 是一个结构优雅、设计简洁的 “递归 query” MOT 框架;而 MOTR 更像是 DETR + 显式目标生命周期管理机制的结合,结构更复杂但鲁棒性更强,适合大规模、长序列跟踪任务


Ref