一句话定位
TrackVLA 是一个把目标识别和轨迹规划塞进同一个 LLM 前向过程里训练的 VLA:识别走语言建模头,跟踪走锚点扩散动作头,两者共享 Vicuna-7B 主干和视觉 token,用 170 万条自采样本联合训练;在公开基准 Gym-UnrealCV 上零样本超过此前 SOTA,在自建的 EVT-Bench 上大幅领先 Uni-NaVid 等基线,四足机器人真机部署可达 10 FPS。
背景与定位
具身视觉跟踪(embodied visual tracking,让机器人仅凭第一人称视觉持续跟随一个被语言描述的目标)此前的主流做法是模块化:先用检测/分割模型识别目标,再用强化学习或模仿学习训练的规划器决定怎么走,比如 DiMP、AD-VAT、AD-VAT+、TS、EVT 这批方法。这类流水线的问题是识别和规划两个模型各自训练、误差会互相传染,识别错了规划跟着错。能接受自然语言描述目标的 Uni-NaVid 用大规模模仿学习在仿真中训练了一个支持人物跟随的 VLA,解决了语言接口的问题,但它把动作离散化为词表里的 bin token 再自回归预测(类似 rt-2 的离散动作路线),这种离散动作空间限制了它在复杂真实环境里的灵活性。
TrackVLA 的定位是把识别和规划这两件事放进同一个共享 LLM 主干里联合训练,用语言建模头解码识别任务的文本回答,用扩散头解码跟踪任务的路径点,二者共用视觉 token 编码和 LLM 前向,只在解码阶段分叉。作者把这条路线和 figure-helix、groot-n1 这类”快慢双系统”VLA 做对比,区别在于 TrackVLA 不是把语言理解和动作生成拆成两个独立模型分层调用,而是共享同一个 LLM 的单次前向,靠一个特殊的 [Track] token 决定这次前向的输出走文本头还是走扩散头。
模型架构
整体:视觉编码器 EVA-CLIP(预训练权重初始化,全程冻结不参与训练)把每帧图像编成 N=256 个 patch、通道数 C=1408 的视觉特征;随后做两种粒度的网格池化(grid pooling),fine 粒度池化到 64 个 token(用于当前最新一帧,保留细节以利识别)、coarse 粒度池化到 4 个 token(用于历史帧和 VQA 任务,压缩序列长度)。跟踪任务的视觉 token 序列结构是”过去 k 帧的 coarse token + 当前帧的 fine token”,其中滑动窗口长度 k 固定为 32 帧;VQA 识别任务则是全部帧都用 coarse token。视觉特征经一个 2 层 MLP 投影器映射到 LLM 的隐空间,与文本 token 拼接后送入 LLM(Vicuna-7B)做一次前向;序列里会加入一个特殊 [Track] token 来标记这次前向是跟踪任务。
任务分叉:LLM 输出的预测 token 如果检测到 [Track] 标记,就把该 token 的最后一层隐状态送进动作头(此时 LLM 只做单步自回归,不做完整解码);否则走标准语言建模头,自回归解码出文本回答。
锚点扩散动作头:核心创新是”锚点式扩散”(anchor-based diffusion),做法是先对训练数据里全部专家轨迹跑 K-means 聚类,得到 M=40 条轨迹锚点 {τ_i},每条锚点是 N_w=10 个路径点 (x, y, θ) 的序列;训练/推理时给这些锚点加高斯噪声再用 DiT(Diffusion Transformer)去噪,而不是从纯噪声开始去噪。训练时只把总扩散步数 1000 步中的前 50 步(T_train=50)施加到锚点上(噪声幅度较小),推理时只用 10 步(T_infer=10)加噪对应的噪声水平,再用 DDIM 做 2 步去噪(N_step=2),比原始扩散策略少几十倍去噪迭代,作者称比 vanilla diffusion policy 提速 5 倍。动作头输出每条锚点的去噪轨迹 τ̂_i 和对应的分类得分 ŝ_i,训练时标注离真值最近的锚点为正样本(s=1),其余为负样本(s=0),联合优化轨迹回归损失(MSE,仅对正样本锚点计权)和得分预测损失(BCE,权重 λ=100);总损失是跟踪损失加权文本损失 L = L_track + α·L_text(α=1)。推理时选得分最高(top-1)的锚点对应的去噪轨迹作为最终输出。消融显示动作头本身可以从 13M(Ours-Small)扩到 89M(Ours-Base)参数并带来性能提升,呈现出扩散动作头的规模效应。
机器人侧只输出路径点,不直接输出线速度/角速度;真机部署时由机器人本体的纯追踪(pure pursuit)算法结合自身位姿把路径点转换成闭环的线速度/角速度控制指令。
数据
训练数据总规模 170 万样本,由跟踪数据和识别数据按 1:1 比例混合(消融显示这个比例最优,且样本规模越大性能越好,符合数据规模定律):
- 具身视觉跟踪数据:论文摘要和正文第 4 节口径为 85.5 万样本(附录 A 训练细节前一段落里另有一处写作”我们收集了 88.5 万条 EVT-Bench 训练集样本”,与摘要口径不一致,疑似原文笔误,此处两个数字都如实记录)。数据来自作者基于 Habitat 3.0 自建的具身视觉跟踪仿真器与配套基准 EVT-Bench:用 SMPL-X 人体模型 + ATLAS UV 纹理数据集随机生成 100 个高保真人形 avatar,外观描述由 Qwen-VL2.5 自动生成;avatar 行走速度在自然人类步速范围 1.0-1.5 m/s 内随机采样,并用 ORCA 算法做动态避障使其行为更自然。EVT-Bench 场景取自 HM3D 和 MP3D 共 804 个场景,共生成 25,986 个 episode,划分为训练集 21,771 个 episode(703 个场景)和测试集 4,215 个 episode(101 个训练时未见过的场景),确保 avatar 和场景在训练/测试间不重叠。基准按难度分三个子任务,每个子任务训练 7,257 个 / 测试 1,405 个 episode:Single-Target Tracking(简单指令如”跟着那个人”)、Distracted Tracking(细粒度外观描述,如”跟着穿黑西装白腰带的浅肤色男性”)、Ambiguity Tracking(故意模糊的指令,如”跟着你看到的第一个人”,场景里还有外观相同的干扰者)。
- 识别(VQA)数据:85.5 万样本,由 36.2 万人物识别样本 + 49.3 万开放世界 VQA 样本组成。人物识别样本基于大规模行人图文数据集 SYNTH-PEDES 构造,每个样本随机挑 1-3 张人物图片贴到不同背景上,配上描述每个人外观属性、相对位置、是否为同一身份的文本;开放世界 VQA 样本取自公开数据集,用于补足合成场景之外的开放世界识别能力。
- 跟踪数据全部来自仿真(无真实世界跟踪训练数据),真机部署完全是零样本 sim-to-real 迁移。
训练方法
两阶段流程,沿用常见 VLM 训练范式:第一阶段只训练视觉投影器,用大规模图文对齐数据把视觉特征空间和 LLM 隐空间对齐;第二阶段联合训练视觉投影器、LLM 和动作头,用跟踪数据+识别数据的混合批次,按标准 VLM 实践只训练 1 个 epoch。学习率 2e-5,总 batch size 196,cosine 学习率调度加线性 warmup,优化器 AdamW。视觉编码器 EVA-CLIP 全程冻结,不参与任何阶段的梯度更新。扩散动作头训练时对轨迹锚点施加的噪声被截断在总步数 1000 步里的前 50 步(小噪声区间),这个设计和推理时只需 10 步噪声、2 步 DDIM 去噪是配套的,目的是省去多数扩散去噪迭代同时保留去噪模型的表达能力。
Infra(训练 / 推理工程)
训练:在一台配备 24 张 NVIDIA H100 的集群服务器上训练约 15 小时,合计 360 GPU-hours(1 个 epoch)。
推理效率(仿真侧,Table 4 消融):动作头对比里,131M 的自回归动作头单步耗时 460ms,7M 的 3 层 MLP 耗时 0.5ms,89M 的 6 层 MLP 耗时 0.8ms,89M 的 vanilla diffusion policy(DP-Base)耗时 65ms,TrackVLA 采用的锚点扩散动作头在 13M(Ours-Small)耗时 8ms、89M(Ours-Base)耗时 13ms,在效率和跟踪成功率(SR/TR/CR)之间取得当时最优平衡。识别任务上 TrackVLA 推理帧率 10 FPS,比 SoM+GPT-4o(0.1 FPS)快约 100 倍,比 LISA++(0.6 FPS)快约 17 倍。
真机部署:模型部署在一台配备 NVIDIA RTX 4090 的远程服务器上;机器人本体是 Unitree GO2 四足机器人,装 Intel RealSense D455 相机(仅用 RGB,640×480 分辨率,水平视场角 90°),机器人背部搭载便携 WiFi 通过互联网和远程推理服务器通信。图像压缩后经互联网传给服务器,服务器推理出未来轨迹再传回机器人;机器人侧用纯追踪(pure pursuit)算法结合自身位姿闭环控制线速度/角速度来跟踪该轨迹,另外用 LiDAR 点云 + elastic band 算法做避障。端到端在真实场景保持 10 FPS 推理速度。
评测 benchmark
Gym-UnrealCV(公开基准,零样本评测,Table 1):指标为平均 episode 长度(EL,满分 500 步)和成功率(SR),对比 DiMP、SARL、AD-VAT、AD-VAT+、TS、此前 SOTA EVT。TrackVLA 在 Single Target(500/1.00)和 Unseen Objects(500/1.00)两个子任务上跑满全部 500 步、成功率 100%;在更难的 Distractor 子任务上 474/0.91,相比此前 SOTA EVT 的 459/0.81 分别提升 EL 3.25%、SR 12.3%。
EVT-Bench(自建基准,Table 2):三个子任务 STT/DT/AT,指标为成功率 SR、跟踪率 TR、碰撞率 CR(越低越好)。对比基线含模型式方法 IBVS(配 GroundingDINO 做开放词汇检测)、RL 方法 PoliFormer、EVT(原版与配 SoM+GPT-4o 视觉基础模型的增强版)、模仿学习 VLA 方法 Uni-NaVid。TrackVLA 在三个子任务上的 SR/TR/CR 分别为:STT 85.1/78.6/1.65,DT 57.6/63.2/5.80,AT 50.2/63.7/17.1,全面超过表现最好的基线 Uni-NaVid(STT 25.7/39.5/41.9,DT 11.3/27.4/43.5,AT 8.26/28.6/43.7)。三个子任务从 STT 到 DT 到 AT 成功率明显下降,说明细粒度描述识别和歧义消解仍是这类任务的主要难点。(注:GitHub 仓库在论文发布后放出了 Uni-NaVid 的官方开源 checkpoint 在 EVT-Bench 上的复测结果,STT 53.3/67.2/12.6、DT 31.9/50.1/21.3、AT 15.8/41.5/26.5,明显高于论文 Table 2 里的 Uni-NaVid 数字,可能是复现版本与官方版本存在差异,此差异在原论文中未作说明。)
目标识别能力(Table 3):在 SYNTH-PEDES 上随机抽两张未见过的行人图片做二选一识别,对比 RexSeek(ACC 54.3,1.1 FPS)、LISA++(ACC 78.2,0.6 FPS)、SoM+GPT-4o(ACC 82.4,0.1 FPS)。TrackVLA 去掉 VQA 联合训练时 ACC 62.3,加上 VQA 联合训练后 ACC 80.7(相对提升 29.53%),推理帧率均为 10 FPS,与 SoM+GPT-4o 精度相当但快约 100 倍。
动作头架构消融(Table 4,DT 子任务):见上文 Infra 部分,锚点扩散动作头在同等或更小参数量下同时超过自回归、MLP、vanilla diffusion policy 三类基线的 SR/TR/CR。
历史窗口长度消融(Table 10):窗口长度 L_his=0(不用历史帧)时 SR/TR/CR 为 29.9/49.6/6.94,32 帧时 57.6/63.2/5.80,64 帧时 56.5/63.3/6.49,作者选 32 作为最优窗口长度。
未来轨迹步数消融(Table 11):预测 1 个路径点时 SR/TR/CR 为 44.3/60.6/14.4,10 个路径点时 57.6/63.2/5.80,20 个路径点时 51.3/60.2/7.54,10 为最优。
人物识别数据构成消融(Table 12):四类数据标记(Single Human / Multiple Human / Same Human / Random Background)全不启用时 ACC 62.0(相对全量下降 22.9%);启用 Single Human + Random Background 时 72.3(下降 10.4%);在此基础上再加 Multiple Human 时 76.7(下降 4.60%);若改为启用 Single+Multiple+Same Human 但去掉 Random Background(换成纯白背景)则降到 67.4(下降 16.2%),印证了随机背景对识别泛化的贡献;四类数据全部启用时 ACC 80.7,对应 Table 3 里 Ours 的数字。
真实世界对比商用跟踪无人机(附录 Table 13):与商用跟踪无人机 DJI Flip 对比 Easy/Medium/Hard 三档场景(各测 10 次),Easy 场景双方都是 100% 成功率;Medium(有遮挡)TrackVLA 90% vs DJI Flip 70%;Hard(目标高速移动)TrackVLA 70% vs DJI Flip 50%。
创新点与影响
- 把具身视觉跟踪里长期分离的”识别”和”规划”两件事,统一进同一个共享 LLM 主干的单次前向里训练,用一个特殊 token 在解码阶段分叉成语言建模头(识别)和扩散头(规划),是对此前”检测模型+规划模型”两阶段流水线范式的直接改造。
- 提出锚点式扩散动作头:先聚类出一小批(40 条)轨迹原型,再对原型加噪去噪而非从纯噪声开始,把去噪迭代压到 2 步 DDIM,在真机 10 FPS 的约束下仍能跑扩散式动作生成,这个设计比直接照搬 vanilla diffusion policy 快 5 倍。
- 构建并将开源 EVT-Bench:分三档难度(简单跟踪 / 细粒度外观区分 / 歧义消解)、覆盖 804 个室内场景、2.6 万余条 episode 的具身视觉跟踪基准,弥补了此前该任务缺少细粒度语言指令、拥挤干扰场景评测集的空白。
- 全部跟踪训练数据来自仿真,真机四足机器人部署是零样本 sim-to-real,在遮挡、高速运动、低光照等场景下的表现优于同价位商用跟踪无人机产品。
- 作者自述局限:(1)当前只用第一视角单目观测,视场角受限(约 90° HFOV),全景或多视角输入有望缓解视野受限问题;(2)当前只有路点级别的轨迹输出加一个下游纯追踪控制器,缺少更灵活的局部运动控制器,限制了移动速度和可达区域,作者计划未来把局部运动能力整合进 TrackVLA。
原始链接
- arXiv abs:https://arxiv.org/abs/2505.23189
- arXiv PDF:https://arxiv.org/pdf/2505.23189
- 项目主页:https://pku-epic.github.io/TrackVLA-web/
- 代码与 EVT-Bench:https://github.com/wsakobe/TrackVLA
- 视频:https://youtu.be/v51U3Nk-SK4
一手源存档(sources/)
- trackvla-embodied-visual-tracking—project-page — 项目主页快照(摘要、pipeline 图说明、数据集说明、真机对比无人机说明、BibTeX)
- trackvla-embodied-visual-tracking—github-readme — GitHub README 快照(安装步骤、EVT-Bench 发布说明、Uni-NaVid 官方 checkpoint 在 EVT-Bench 上的复测结果表、CC BY-NC-SA 4.0 许可)
- arXiv 原文 PDF:https://arxiv.org/pdf/2505.23189 (arXiv 原文 PDF,不入 git)