ReferTrack:先指认、再跟踪——把具身视觉跟踪做成"看图说话"加"看图指路"

  • 关联论文:2607.20061
  • 作者:flyP
  • 更新:2026-07-24

一句话结论

提出一个 referring-then-tracking 的具身视觉跟踪(EVT)范式:用一台前向相机,先在带索引的候选框里选中语言所描述的目标,再以这次"图像级选中的目标"为条件解码航点;并用一个滑窗队列 + TVBI token 注入历史几何特征,让跟踪在时间维度上保持稳定——单视角 SOTA,且能在腿足与人形机器人上 sim-to-real 落地。

解决什么真问题

具身视觉跟踪(Embodied Visual Tracking, EVT)要求移动机器人在只靠机载视觉的前提下,根据一句自然语言描述持续跟随某个特定目标。听起来跟"找人/找物"很像,但在工程上要同时满足三件事:

  1. 从自然语言里精确指认目标(referring)。
  2. 持续把目标锁定在画面里(tracking)。
  3. 输出可执行的控制信号(waypoint / 动作)。

最近一波 VLA(vision-language-action)策略尝试把这三件事塞进一个统一模型里,用 chain-of-thought(CoT)同时做指认和规划。但 EVT 场景下的 CoT 通常跑在"抽象空间潜变量"里,导致两个问题:

  • 难监督:潜变量本身没有 ground-truth 标注,CoT 容易被模型当成"走过场"。
  • 与显式图像检测对齐弱:模型可能"嘴上说在指目标 A,实际把航点打到目标 B 上"。

ReferTrack 的应对是 解耦:先在图像空间显式做 referring(选 bounding box),再做 tracking(基于被选中的 box 解码航点)。把这"难监督的潜变量 CoT"换成"可监督的图像级决策",让指认和跟踪各司其职。

核心方法

1. Referring-then-tracking 范式

ReferTrack 把策略拆成两步:

# 简化伪代码
candidates = detector(current_image)         # indexed bbox set
chosen_idx = referrer(candidates, language, history)  # 选哪个 box
waypoint = tracker(current_image, history, chosen_bbox_features)
return waypoint
  • Referring:从当前帧的索引候选框集合里挑出语言描述所指的那个 box。这一步是显式的、可监督的(候选框可以来自现成检测器,挑选结果就是分类标签)。
  • Tracking:把被选中 box 的几何特征作为条件,输入到跟踪/航点解码器中,输出下一时刻的导航点。

整个流程只依赖一台前向相机,没有深度、没有鱼眼拼接、没有 360° 多相机 rig。

2. 时间维度:滑动窗口 + TVBI token

光做当前帧的 referring 还不够。EVT 的目标在动、被遮挡、暂时离开画面又回来——需要把"过去选中过的 box"也带进决策里。

ReferTrack 的做法是:

  • 维护一个 sliding-window queue(滑动窗口队列):保存近期若干帧中被选中的 bounding box。
  • 把这些 box 的几何特征通过 TVBI token(temporal-viewpoint-bbox indicator)注入到视觉历史中

TVBI token 是一种"时间 + 视角 + 框"三元组的位置/标识嵌入,让模型能区分"5 步之前那个 box"和"当前帧的这个 box",并把它们的相对位移、视角变化一起编码进注意力机制里。这相当于给语言指认加了一层时间记忆。

为什么需要 TVBI 而不是简单拼接多帧图像?

直接拼接多帧图会让 attention 复杂度上来、显存吃紧,且模型隐式要学"哪一帧的哪个区域是目标"——这个表示正好是难监督的。把 box 显式作为 token 喂进去,相当于把"在哪里"从隐式变量变成显式变量,可监督性、可解释性、可调性都高一档。这也是该工作"范式上把 CoT 拆开"这条主线在时间维度上的延续:能用显式 token 表达的中间状态,就不要让模型隐式去猜。

3. 增强指认:Refer-QA 协同训练

为了让 referring 更准,论文构造了一个 Refer-QA 数据集做 co-training。QA 这种形式天然提供细粒度监督("是/不是 A,是 B,因为 B 是红色且靠左"),能压住 referring 头不要走捷径。Refer-QA 的具体规模和标注流程 abstract 没给,原文未明确

4. 训练目标

  • Referring 头:标准分类损失(给定候选框集合选对索引)。
  • Tracking 头:航点回归 / 离散 token 分类。
  • Co-training 信号:Refer-QA 上的视觉问答损失。

关键实验与数据

EVT-Bench(单视角设置),三个 split 的 success rate:

Split Success Rate
single-target(单目标) 89.4%
distracted(干扰物) 73.3%
ambiguity(多相似目标歧义) 74.1%
  • 在 EVT-Bench 上达到 单视角 SOTA
  • 在 identification-heavy 任务上与多相机 baseline 持平甚至超越——这是该工作最戏剧化的结论:在"能不能指对目标"这件事上,多相机的几何优势被显式 referring + TVBI 时间记忆追平了。
  • 真实部署:在 legged(腿足)与 humanoid(人形)机器人上完成 sim-to-real 验证,强调迁移能力。

项目代码已开源:github.com/MedlarTea/referTrack。

亮点与局限

亮点

  • 范式上的解耦:把 referring 和 tracking 分开,让"选谁"和"怎么追"也可以独立监督、独立诊断——这是 EVT 长期被忽视的关键。
  • TVBI token 是该工作的方法学亮点:用显式 token 把"过去的 box"注入到当前注意力里,比"把所有历史图拼成一个长上下文"更省内存且更可解释。
  • identification-heavy 任务追平多相机:对算力和硬件受限的部署场景意义很大——单相机就够了。
  • Refer-QA 协同训练:用 QA 形式补强 referring 头,思路简洁且可推广到其他多模态指代任务。
  • sim-to-real 落地:腿足 + 人形都跑了真实部署,不是停在仿真。

局限(基于现有信息)

  • 单前向相机视角盲区:背后、侧后方的目标丢失后恢复能力原文未明确专门测过。
  • 候选框来源依赖检测器:referring 上限由检测器的 recall 决定。如果检测器漏召回目标,referring 头再聪明也无解。
  • 滑窗大小与 TVBI 的设计选择:窗口太长会引入过时几何,太短会丢失目标重入;论文应做了消融但 abstract 未给数字,原文未明确
  • 目标外观剧变/尺度剧变:目标换衣服、被遮挡后只露一角、镜头大幅推近——这些 challenging case 的细分数字原文未明确
  • Refer-QA 数据集规模与多样性:是合成还是人工标注、覆盖多少目标类别、是否含对抗样本,原文未明确
  • 与多相机系统的能耗/算力对比:单相机胜在硬件,但网络推理的算力开销是否真的更划算原文未明确

为什么 referring 解耦这件事比表面看起来更重要

ReferTrack 的核心反直觉点:很多近期的 VLA 策略喜欢"一个模型包打天下",输入语言加视觉,输出动作,中间过一层抽象 CoT。但在 EVT 这种"必须先选对目标"的任务里,抽象 CoT 容易变成"看起来在思考,实际上跟着惯性走"。

把它拆成"先选 box,再解航点"有两个实际收益:

  1. 可监督性:每一步都有 ground-truth。box 选择可以接标准检测器标注,航点可以接仿真轨迹或遥操数据。抽象 CoT 的潜变量只能靠最终 task loss 反传,难定位错误。
  2. 可调试性:上线后如果失败,可以先问"选错 box 了吗"再问"航点打偏了吗"。两者修法完全不同。

这条思路在工业具身产品里越来越重要:研发阶段可以允许"大而黑"的端到端模型,但部署阶段必须能解释、能回滚、能逐模块优化。ReferTrack 在 EVT 场景里给出了这种分层设计的一个样板。

对工程落地的启发

  • 机器人产品团队:能用单前向相机就不要堆多相机——前提是 referring + 时间记忆做扎实。
  • VLA 训练团队:CoT 跑在抽象潜变量里往往是"好听但难训",把它换成显式中间表示(box、mask、waypoint)通常更稳。ReferTrack 是这条思路的好案例。
  • 多模态指代任务研究者:Refer-QA + 协同训练的范式可以推广到图像编辑、视频理解、GUI Agent 等"先指认、再操作"的任务。
  • 检测-跟踪串接系统:如果已有检测器,可以直接借用 ReferTrack 的 referring-then-tracking 接口做减法集成。
  • 腿足/人形机器人团队:sim-to-real 已经验证过,可以直接基于开源仓库做下游任务(跟随特定快递员、跟随某件行李、跟随家庭成员)。

一句话总结这篇工作在"EVT + VLA" 中的位置

如果把具身跟踪看作一条问题链:语言指代 → 目标识别 → 跟踪控制,那么早期工作普遍以"统一大模型 + 抽象 CoT"一笔带过整条链。Robostral Navigate(上一期解读的工作)以 image-space waypoint 跳过了控制环节的本体耦合,ReferTrack 则在 EVT 这个子问题上反过来拆出了"识别-控制"两段式——两者是同一波反思潮流下的两个不同切口:一个关心跨本体泛化,另一个关心可监督与可调试。

对多模态 VLM 社区而言,ReferTrack 传递了一个有价值的信号:在当前 SOTA 规模下,显式中间表示 + 滑窗记忆仍能拿到 SOTA,不需要为了统一端到端模型而牺牲可调试性。

与同方向工作的关系

  • 传统目标跟踪(SOT/MOT):ReferTrack 把 SOT 推到了"自然语言指代 + 单机器人控制"这一更难的层级,而不是纯像素级跟踪。
  • 视觉-语言导航(VLN):与 NaviLLM、NaVid 等同属"语言驱动导航"家族,差异在于 EVT 强调"持续跟随"而非"到达目标点"。
  • VLA 与 CoT 策略(OpenVLA、RT-2 等):ReferTrack 是对"统一大模型 + 抽象 CoT"路线的一次反思——用显式中间表示替代抽象潜变量。
  • Referring Expression(REC/RES):把"指代"研究里成熟的 box-level 监督信号接到具身跟踪上,形成新的范式融合点。

适合谁读

  • 做具身智能、VLA、机器人导航/跟踪的研发团队。
  • 多模态大模型研究者——尤其关心"显式中间表示 vs 抽象潜变量"的范式之争。
  • 产品落地导向的机器人团队——关心硬件成本、sim-to-real。
  • 不适合只关心静态 CV 检测/分割的人——本文主线在策略与控制,而非纯感知。

不确定处

  • 候选框检测器的具体选型(YOLO 系 / DETR 系 / 自研):原文未明确
  • TVBI token 的精确结构与注入位置:原文未明确
  • 滑窗大小、训练 batch、训练步数等超参:原文未明确
  • Refer-QA 数据集规模与构建方式:原文未明确
  • 单视角 vs 多相机 head-to-head 在每个 split 上的具体差距数字:原文未明确
  • 真实部署中目标丢失/重入的具体恢复率:原文未明确
  • 跟踪控制器的底层执行(waypoint → 机器人指令)是在本体上完成还是在统一控制栈里:原文未明确
  • inference latency / frame rate(实机部署能否跑上 10–30 Hz):原文未明确

工程落地与核查(Jay)

事实核查摘要

经对照 arXiv 摘要原文(2607.20061)核查: - ✅ Success rate 数据(89.4% / 73.3% / 74.1%)与摘要完全一致 - ✅ 核心范式:referring-then-tracking,single forward-facing camera(摘要一致) - ✅ TVBI token(temporal-viewpoint-bbox indicator)名称与含义一致 - ✅ Refer-QA co-training 存在(摘要提到) - ✅ sim-to-real: legged + humanoid robots(摘要一致) - ✅ 开源代码:github.com/MedlarTea/referTrack(摘要一致) - ⚠️ 解读中提到的"Robostral Navigate(上一期解读的工作)"属于知识库内部关联,arXiv 原文未提及,不影响核查结论 - ⚠️ "单视角 SOTA":摘要原文未直接使用 SOTA 字样,但 success rate 数值与多相机 baseline 对比隐含了此CLAIM,建议以实验数据本身为准,不以此作为引用依据

工程落地分析

1. 检测器是整条链路的性能天花板

ReferTrack 的 referring 头依赖候选框集合,而候选框来自检测器。这意味着: - referring 头的 recall 上限 = 检测器的 recall。如果检测器在拥挤场景(distracted split)中漏检目标,referring 头即使 100% 准确也无能为力 - 工程建议:选用当前最好的开放词汇检测器(如 YOLOv10, Grounding DINO)作为候选框来源,并在目标使用场景上做专项 recall 评测,不要假设开源预训练检测器在特定机器人场景下表现够用

2. 每帧必跑检测器的延迟问题

ReferTrack 在每个时间步都要跑一次检测器 + referring + tracking:

每帧延迟 ≈ 检测延迟 + referring推理 + tracking推理 + waypoint解码

在嵌入式平台上(NVIDIA Jetson Orin 等),YOLO 系列检测器单帧约 10-30 ms(取决于模型大小和输入分辨率),而 VLA 策略本身约 50-200 ms。总延迟若超过 100 ms,对高速运动目标的跟踪会产生明显滞后。

优化方向: - 检测器选型:在延迟敏感场景下,可以用轻量检测器(如 YOLOv8n)牺牲少量 recall 换取延迟 - Temporal smoothing:用卡尔曼滤波或简单的 EMA 对跟踪框做时序平滑,减小单帧检测抖动的影响 - 异步 pipeline:检测不必每帧都跑,可以跳帧(每 2-3 帧跑一次检测,中间用跟踪维持框位置)

3. TVBI token 的工程实现细节

TVBI token 要注入到视觉历史中,涉及到: - 滑窗队列的维护:需要正确处理帧序号、视角变化和框几何特征的同步 - Token 注入位置:是在 ViT 的 patch embedding 之后、transformer 层中间、还是最后做 late fusion?原文未明确,工程实现时需参考代码仓库的具体做法 - 显存:滑窗 queue 越长,历史 token 越多,显存线性增长。需要和 $R$ 一样做延迟/显存权衡

4. sim-to-real 的真实差距

论文提到在腿足和人形机器人上完成 sim-to-real 验证,但具体细节未给出。以下是真实落地时需要额外关注的工程问题:

  • sim-to-real 视觉gap:仿真环境的相机内参、光照、目标外观分布与真实环境差异巨大。Refer-QA 数据集的构建方式(合成 vs. 真实采集)直接影响迁移效果
  • 控制频率:航点解码出来之后,到达机器人底层执行的延迟。腿足机器人通常需要 50-200 Hz 的控制频率,而 VLA 推理通常在 1-10 Hz,需要底层的平滑/插值处理
  • 目标外观变化:真实场景中目标可能换衣服、撑伞、戴口罩——这些都会导致appearance-based matching失效。ReferTrack 主要依赖语言指认而非 appearance,理论上对换装更鲁棒,但这需要真实场景验证

5. 失败模式与调试工具

ReferTrack 的分层设计让 failure diagnosis 更容易,工程团队可以用以下方式定位问题:

失败时排查路径:
1. 检查候选框里有没有目标 → 检测器 recall 问题
2. 检查 referring 头选的对不对 → referring 模型问题
3. 检查选中后 waypoint 质量 → tracking / planning 问题
4. 检查历史滑窗有没有保存正确框 → TVBI / 队列维护 bug

每一步都有对应的 metrics 可以单独评测,这是 ReferTrack 比纯端到端模型在工程上更友好的地方。

6. 多目标跟踪场景的扩展

当前 ReferTrack 针对的是单目标 EVT(跟随一个指定目标)。如果要扩展到多目标(比如同时跟踪"穿红衣服的人"和"推行李箱的人"),主要工程挑战:

  • referring 头需要同时输出多个 box 的索引选择
  • tracking 头需要同时解码多组 waypoint
  • TVBI token 需要区分不同目标的独立时间线
  • 多目标之间的交互(遮挡、相互超越)需要额外处理

7. 开源代码工程质量参考

代码仓库:github.com/MedlarTea/referTrack。建议工程团队在正式集成前: - 先用开源模型跑通 EVT-Bench 复现,确认 89.4% / 73.3% / 74.1% 可复现 - 评估代码的模块化程度:detector / referrer / tracker 是否解耦 - 检查是否有实机部署脚本(Jetson / ROS 集成)