跳转至

YesTrack: Referring Multi-Object Tracking via MLLM-based Yes/No Reasoning

会议: ECCV 2026
论文: ECCV 原文
代码: https://github.com/ggbondrighthere24/YesTrack
领域: VLM 推理
关键词: 指代多目标跟踪、多模态大语言模型、判别式范式、Yes/No 验证、时序一致性

一句话总结

YesTrack 不让 MLLM 生成目标描述,而是直接读取其词表中 Yes/No 两个决策 token 的 logits 做判别式指代验证,配合时序置信度先验 TCP 与时序参考传播 TRP 两个推理期约束,用最小的 Qwen3-VL-2B-Instruct 在 Refer-KITTI 达到 HOTA 54.00、Refer-KITTI-V2 达到 43.75 的 SOTA,并把同一范式迁移成通用 MOT 跟踪器 YesTrack-MOT(KITTI HOTA 45.10)。

研究背景与动机

指代多目标跟踪(RMOT)要求在视频中持续定位并关联所有符合给定自然语言表达的目标:既要像通用多目标跟踪那样跨帧维持身份,又要让轨迹与语言对齐。端到端方法(TempRMOT、DKGTrack、HFF-Tracker 等)在统一框架里建模跨模态交互,性能强但依赖任务特定模块,且训练词表有限,容易带入数据集偏差、难以泛化到更复杂的真实表达;两阶段方法(iKUN、ReferGPT)先跑通用跟踪、再做语言筛选,其中 ReferGPT 引入 MLLM 生成与表达对齐的 caption,再用文本相似度模块完成匹配。这条生成式路线提升了对多样表达的鲁棒性,但自回归逐 token 解码带来显著时延,把文本转成指代决策还要额外的相似度模块,架构复杂度与推理时延一起涨,与跟踪所需的实时性相悖。

更深一层的矛盾是:大模型其实早有判别潜力——Reflexion 等工作已用显式 Yes/No 判断做评估、验证与迭代控制——但这些用法只取离散的 Yes/No 文本输出,把模型当硬二分类器,丢掉了词表 logits 里的连续置信度;而没有连续置信度,就做不了"哪些候选值得花更多算力"的路由,也做不了时序上的软性修正。

YesTrack 据此把指代重新表述为二选一的图像-文本匹配问题:候选轨迹的裁剪图、归一化框坐标与表达一起输入 MLLM,模型只回答 Yes 或 No,系统对这两个决策 token 的 logits 做 softmax 得到连续匹配置信度,每个候选只需一次前向,完全绕开自回归解码与后置文本匹配。核心 idea:把 MLLM 从"描述生成器"变成"判别式指代头",用 Yes/No 两个 token 的 logits 直接输出匹配置信度,再以 TCP/TRP 两个轻量时序约束在推理期稳住逐帧决策、砍掉重复验证。

方法详解

整体框架

YesTrack 是两阶段 RMOT 框架:现成 MOT 跟踪器逐帧产生候选(裁剪图、身份 ID、归一化框坐标),MLLM 判别验证器负责判断每个候选是否匹配表达。推理从时序参考传播(TRP)开始:只有关键帧触发 MLLM 验证,非关键帧直接继承最近一次指代分数。关键帧上,Stage 1 以帧模式对候选单帧打分,经时序置信度先验(TCP)调整后按置信度路由——高置信候选直接保留或丢弃,模糊候选才进入 Stage 2 视频模式,由记忆库取过去 K 帧的裁剪与分数做联合判定,最后按阈值 γ 定输出。图中两个时序组件都是推理期约束,不改变模型结构,也基本不改跟踪器本身。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
    V["视频 + 指代表达"] --> T["现成 MOT 跟踪器<br/>候选裁剪、ID、坐标"]
    T --> TRP["时序参考传播 TRP<br/>仅关键帧触发验证"]
    TRP -->|非关键帧<br/>继承指代分数| O
    TRP -->|关键帧| S1["MLLM Yes/No 验证器<br/>Stage 1 帧模式打分"]
    S1 --> TCP["时序置信度先验 TCP<br/>调整匹配概率"]
    TCP --> R{"置信度路由"}
    R -->|"p≥0.8 保留<br/>p≤0.2 丢弃"| O
    R -->|模糊候选| S2["Stage 2 视频模式<br/>记忆库取过去 K 帧联合判定"]
    S2 -->|"阈值 γ"| O["输出指代分数"]

关键设计

1. 判别式 Yes/No 验证器:让 MLLM 从"描述生成"改为"读两个 token 的 logits"

生成式路线的痛点是逐 token 解码慢、输出措辞不可控。YesTrack 为每个候选构造统一多模态输入:裁剪区域、嵌入文本提示的归一化坐标(提供显式位置线索)、指代表达,并明确指示模型只回答 Yes 或 No。闭集设定把决策空间收缩到两个语义选项,使输出 logits 的决策边界更锐利。关键机制是不等自回归解码完成,直接抽取 Yes/No 两个决策 token 的 logits 并做 softmax:

\[ p_i=\frac{\exp(\ell^{\text{yes}}_i)}{\exp(\ell^{\text{yes}}_i)+\exp(\ell^{\text{no}}_i)}. \]

与生成式解码相比,这个设计同时拿到三样东西:不受意外措辞与解释影响的稳定决策、可直接用于路由与时序精化的连续置信度、以及免去迭代 token 采样的单次前向开销。帧模式与视频模式共用同一二选一格式,仅提示词模板与输入图像数不同(模板在补充材料)。

2. 两阶段验证与置信度路由:只为模糊候选支付视频级验证的开销

Stage 1 帧模式对候选 \(i\) 与表达做单帧成对验证得到置信度 \(p_i\),TCP 调整后按区间路由:\(p_i \ge p_h\) 直接保留、\(p_i \le p_l\) 直接丢弃(实验取 \(p_l=0.2\)、\(p_h=0.8\)),只有 \(p_l < p_i < p_h\) 的模糊候选进入 Stage 2。Stage 2 视频模式从记忆库取该身份过去 K 帧的裁剪与指代分数,让 MLLM 结合时序上下文输出最终判定,阈值 γ 取 0.4。这样设计的理由很直接:单帧证据在遮挡、小目标上不可靠,但给所有候选都跑视频级验证代价过高;路由把昂贵的时序验证集中到真正拿不准的少数候选上。这也解释了为什么必须取连续 logits 而非离散文本答案——没有连续置信度就划不出"模糊带"。

3. 时序一致性约束:TCP 稳住逐帧判断,TRP 砍掉重复调用

两个约束都只作用于推理期、不改架构,可直接移植到其他两阶段 RMOT。TRP 利用"指代决策比跟踪状态更时序稳定"这一不对称性:轨迹要逐帧更新,但一个身份与查询的语义相关性在短窗口内很少变化。于是指代只在固定间隔 Δ、新身份出现或表达变化时触发;非关键帧只跑跟踪,直接继承最近关键帧的指代分数。TCP 则利用身份级历史置信度:若某身份最近 K 帧全部被高置信匹配,当前预测就获得一个时序先验加成并截断到 1(该式依原文上下文复原,以原文为准):

\[ \tilde{p}_i^{(t)}=\min\bigl\{1,\;p_i^{(t)}+\lambda\cdot\mathbb{I}\{\min\nolimits_{k\in[t-K,\,t-1]}p_i^{(k)}\ge\alpha\}\bigr\}. \]

外层 min 保证结果仍是合法概率;内层 min 确保"连续 K 帧都高置信"才施加先验,防止把偶发误匹配固化。实验取 K=3、α=0.4、λ=0.3。

4. YesTrack-MOT:把同一判别范式搬进通用 MOT 的数据关联

跟踪底座本可用任意现成跟踪器;论文进一步用同一范式实例化了一个极简跟踪器 YesTrack-MOT:用 MLLM 成对身份验证替代基于外观 embedding 的 ReID。机制与指代验证完全一致,唯一差别是输入从"图-文"换成"图-图"(上一帧轨迹裁剪对当前帧检测裁剪),同样直接读 Yes/No logits 得到验证概率。流程三步:先做距离门控减少候选对——框中心位移超过阈值 δ 的组合不送验证(实验取 200 像素);门控通过的对进入 MLLM 验证,代价矩阵取 \(c_{jk}=1-p_{jk}\),用匈牙利算法求一对一指派;未匹配轨迹标记丢失并保留 10 帧,期间丢失检测可与丢失轨迹再关联一次,超过最大丢失龄期即删除。整套流水线刻意不用精细运动模型,靠"门控 + MLLM 验证 + 匈牙利指派"三件套达到强性能。

损失函数 / 训练策略

每个输入对 \((I_i, E)\) 带二元标签 \(y_i\in\{0,1\}\),用两个决策 token 经 softmax 得到的匹配概率 \(p_i\) 计算标准二元交叉熵,softmax 归一化只限制在这两个 token 上:

\[ \mathcal{L}_i=-\left[\,y_i\log p_i+\left(1-y_i\right)\log\left(1-p_i\right)\right]. \]

MLLM 底座为 Qwen3-VL-2B-Instruct,候选裁剪缩放到 320×320 后送入视觉编码器。推理超参:置信区间 \([p_l,p_h]=[0.2,0.8]\)、决策阈值 γ=0.4、TCP 的 K=3/α=0.4/λ=0.3、TRP 间隔 Δ=5(Refer-KITTI)与 10(Refer-KITTI-V2)、记忆库大小 4;YesTrack-MOT 的距离阈值 200 像素、丢失保留 10 帧。全部实验在 2 张 RTX 4090(24GB)上完成。提示词模板与训练/推理耗时对比放在补充材料,正文无法独立复现训练细节。

实验关键数据

主实验

Refer-KITTI 来自 18 条 KITTI 跟踪序列、818 条表达(仅 215 条互异、词表 49 词),表达短、重复且结构简单;Refer-KITTI-V2 扩到全部 21 条序列、9758 条表达(7193 条互异、词表 617 词),覆盖外观、空间关系、运动与目标间交互,还加入歧义表达与无目标情形,语言空间大得多。TempRMOT* 是从 TempRMOT 去掉所有语言输入与多模态融合组件得到的纯 MOT 模型,用它做底座可以对齐跟踪器、隔离指代策略本身的贡献。

方法(Refer-KITTI) 跟踪器 HOTA DetA AssA
DKGTrack(端到端) – 52.08 41.10 66.04
TempRMOT(端到端) – 51.15 39.99 65.61
iKUN(两阶段) NeuralSORT 44.56 32.05 62.48
ReferGPT(O)(两阶段) PC3T 46.36 36.58 59.00
YesTrack TempRMOT* 54.00 43.91 66.57
YesTrack YesTrack-MOT 52.96 46.84 60.03
方法(Refer-KITTI-V2) 跟踪器 HOTA DetA AssA
TransRMOT(端到端) – 31.00 19.40 49.68
TempRMOT(端到端) – 34.72 22.52 53.64
DKGTrack(端到端) – 35.26 23.04 54.13
iKUN(两阶段) NeuralSORT 10.32 2.17 49.77
ReferGPT(两阶段) PC3T 30.12 15.69 59.02
YesTrack TempRMOT* 41.78 32.69 53.75
YesTrack YesTrack-MOT 43.75 37.04 52.36

Refer-KITTI 上,YesTrack(TempRMOT* 底座)以 HOTA 54.00、AssA 66.57 双双领先,超过最强端到端 DKGTrack 1.92 分;换 YesTrack-MOT 底座则取得最佳 DetA 46.84 与最佳 DetRe 62.72。更难的 V2 上,YesTrack-MOT 变体取得最佳 HOTA 43.75 与 DetA 37.04,并领先 DetRe 48.78、AssPr 83.95,比 DKGTrack 高 8.49 分;iKUN 在 V2 上只有 10.32 HOTA,说明其指代模块在更大语言空间下明显失稳。

消融实验

帧模式 视频模式 TCP TRP HOTA DetA AssA 推理时间
✓ 52.64 42.68 65.06 40mins
✓ 53.49 43.29 66.24 2h15mins
✓ ✓ 53.47 43.70 65.60 1h32mins
✓ ✓ ✓ 54.00 43.91 66.57 1h34mins
✓ ✓ ✓ 53.54 43.69 65.88 22mins
✓ ✓ ✓ ✓ 53.66 43.27 66.71 25mins
  • TCP 与 TRP 的收益方向不同。 TCP 单独把 HOTA 推到 54.00、DetA 43.91 最佳,说明历史置信度确实稳住了轨迹选择,但推理要 1h34mins;TRP 单独 22mins 全表最快、HOTA 53.54 基本不掉;两者叠加拿到最佳 AssA 66.71,仅比 TRP 单独多 3mins——精度与效率的取舍被显式拆成了两个可独立开关的组件。
  • 指代能力与底座跟踪器解耦(原文表 4)。 用 GT 轨迹做候选时,YesTrack 指代 Acc 91.15 / Prec 74.14 / Recall 85.71,全面高于 iKUN 的 84.62 / 59.88 / 70.24;在 TempRMOT* 底座上 HOTA 54.00 对 iKUN 42.95。无指代基线的 AssA 恒最高,说明指代方法只做语言过滤、不改善关联本身,AssA 天然被底座跟踪器封顶。
  • 通用 MOT 验证(原文表 5,统一 RF-DETR 检测)。 YesTrack-MOT 在 KITTI 上 HOTA 45.10 / DetA 40.96 超过 OC-SORT 41.34 等基线,但 AssA 51.23 低于 ByteTrack 52.30,DetPr 64.52 明显低于 BoT-SORT 76.94——增益主要来自检测相关指标,纯关联质量并非最强。
  • 对噪声表达鲁棒。 定性对比中,面对拼写错误("blakc car in the left")与口语冗余("emmm.... black car is in the left side of the road"),DKGTrack 与 ReferGPT 容易跟丢,YesTrack 仍能稳定锁定目标。

亮点与洞察

  • 读 logits 而不是读生成文本:把 MLLM 的判别潜力从"离散 Yes/No 文本"推进到"连续置信度",一次前向同时拿到决策与不确定度,这是路由和时序精化能成立的前提。任何"逐候选验证"类任务(ReID、RAG 重排、agent 工具结果审核)都能复用这一招。
  • TRP 抓住了"语义判断可以稀疏采样"的不对称性:几何关联必须逐帧更新,但身份与查询的相关性在短窗口内几乎不变,于是 MLLM 调用次数直接砍到 1/Δ 量级,而精度几乎不掉。
  • 同一验证机制换输入模态就覆盖第二个任务:指代是图-文验证,YesTrack-MOT 是图-图验证,BCE 训练目标与概率抽取完全一致——说明"MLLM 当验证器"是可组合的通用组件,而非 RMOT 专用 trick。

局限与展望

  • 作者承认:两阶段设计受现成跟踪器质量制约;TRP 下关键帧发生的跟踪或验证错误会一直传播到下一次重评估,可能暂时丢目标或跟错干扰物;计划把启发式 TCP 换成可学习模块,并探索更紧耦合的框架。
  • 自见:实验全部在 KITTI 系数据(car/person 两类)上做,跨数据集泛化未验证;referential 指标用 GT 轨迹做候选,隔离了跟踪方差,但也不反映真实流水线中两阶段的错误耦合;TRP 后处理整个基准仍要 22–25mins,距实时驾驶场景有距离。
  • 可行改进:关键帧置信度低时自适应缩短 Δ,抑制错误传播;把 MLLM 判别信号蒸馏进轻量匹配头,在保住鲁棒性的同时压时延。

相关工作与启发

  • vs ReferGPT:同为两阶段 + MLLM,ReferGPT 先生成 caption 再做文本相似度匹配,YesTrack 直接读 Yes/No logits。同为 Qwen3-VL-2B 时(ReferGPT(Q),PC3T 底座)HOTA 32.56 对 YesTrack 54.00——但两者底座跟踪器不同,该对比同时包含范式与底座两个因素。
  • vs iKUN:iKUN 用 Knowledge Unification Module 对齐视觉语言特征、用 Neural Kalman Filter 改关联;YesTrack 不重训跟踪器,指代指标在四种底座上全面更高,但在 V2 大词表上两阶段方法的共同短板(iKUN 10.32)说明语言泛化仍主要靠 MLLM 本身。
  • vs 端到端 TempRMOT / DKGTrack:端到端方法在受限词表上训练、依赖任务特定模块;YesTrack 把语言理解交给 MLLM 的指令跟随能力,对噪声表达更稳,代价是 AssA 上限受底座跟踪器封顶。
  • vs 已有 LLM 判别式用法(Reflexion 等):它们引出离散 Yes/No 文本、本质把模型当硬二分类器;YesTrack 进一步利用 token 级 logits 的连续置信度做路由与时序精化,是从"能用"到"好用"的关键差别。
  • 资源:代码仓库来自论文摘要,其在线可用性未额外核实。

评分

  • 新颖性: 4/5。判别式 Yes/No 用法并非首创,但"决策 token logits + 连续置信度路由 + 推理期时序约束"的组合干净有效,且验证了范式可迁移到通用 MOT。
  • 实验充分度: 4/5。双基准、模式与时序组件消融、四种底座交叉实验、通用 MOT 对比齐备;缺少跨数据集验证与多种子统计。
  • 写作质量: 4/5。动机与流程清楚、公式适量;prompt 模板与训练细节移到补充材料,正文不足以独立复现。
  • 价值: 4/5。给出了 MLLM 判别式落地的低成本范式;但两阶段上限受底座跟踪器制约,效率离实时仍有差距。