当机械臂挣脱视角的牢笼:CamVLA 如何用一场"自我定位"的革命,让机器人真正学会"看见"
论文: From Fixed to Free Cameras: Calibration-Free View-Robust Vision-Language-Action Model
作者: Wenhao Li, Xueying Jiang, Quanhao Qian, Deli Zhao, Shijian Lu, Gongjie Zhang, Ran Xu
机构: 南洋理工大学, 阿里巴巴达摩院, 湖畔实验室
arXiv: https://arxiv.org/abs/2607.05396
🎭 引子:那个让机械臂崩溃的 15 度
想象这样一个场景。
你花了三个月时间,调教出了一台相当聪明的机械臂。它看得懂人话——你说"把杯子放进碗",它能稳稳完成。它在实验室里表现堪称完美,成功率超过六成。你信心满满,准备把它推向真实世界。
然后,有人不小心碰了一下相机支架。相机歪了 15 度。
你重新测试。成功率从 65.3% 暴跌到 6.3%。
不是 50%,不是 30%,是 6.3%。这比随机猜还惨。你的机械臂,这个刚刚还在实验室里指点江山的"专家",瞬间变成了一个连杯子在哪都搞不清的"睁眼瞎"。
这不是科幻小说的情节。这是论文中 π0(当前最先进的 Vision-Language-Action 模型之一)在 RLBench 仿真环境中的真实表现。一个 15 度的视角偏移,足以让最先进的机器人策略土崩瓦解。
为什么?
答案藏在一种我们习以为常却从未深思的几何关系里:机器人"看到"的世界,和它"动作"所在的坐标系,根本不在同一个框架里。它像一只被蒙住眼睛走钢丝的猫——训练时记住了"这个画面意味着往左走 5 厘米",但当画面因为相机挪动而变了样,它脑海里的地图就全盘错乱。
今天这篇论文要讲的,就是如何解开这个死结。不是通过更多的数据、更复杂的网络,而是通过一种几何上的重新思考——让机器人自己搞明白:"相机在哪里?"
不是被告知,而是自己推断。就像你蒙上眼睛转几圈后,仍然能凭感觉知道前后左右一样。
🔍 困住机器人的几何迷宫
标准 VLA 的致命假设
要理解这个问题,我们得先搞清楚现有的 Vision-Language-Action(VLA)模型是怎么工作的。
简单来说,VLA 就是一个"看图说话然后动手"的模型。它接收三个东西:一张相机拍的照片、机械臂当前的姿态信息、以及一句自然语言指令(比如"把红色积木推到蓝色区域")。然后它输出机械臂下一步该怎么动——往哪走、转多少、抓不抓。
在标准的 VLA 架构里(比如 OpenVLA、π0、GR00T N1),这个动作输出被定义在机器人基座坐标系(base frame)里。什么意思呢?就是说模型预测的是"机械臂末端相对于机器人底座应该怎么动"。
这听起来很合理,毕竟机械臂的底层控制器就是按基座坐标系来工作的。
但问题来了:模型看到的图像是相机坐标系下的,预测的动作却是基座坐标系下的。
这就好比你让一个外国人看一幅中文地图,然后要求他用法语描述路线。他当然可以学——背下"这个画面等于向左转"——但这是一种死记硬背,不是真正的理解。一旦地图的角度变了(相机动了),他积累的所有"对应关系"就全部失效。
隐式的 Hand-Eye 变换
在机器人学里,相机坐标系和基座坐标系之间的变换关系叫做 hand-eye transformation(手眼变换)。它描述的是:相机在机器人的哪个位置?朝向哪里?
标准 VLA 的问题在于,这个 hand-eye 变换从未被显式地告诉模型,也从未被显式地学习。它被隐式地"压缩"进了网络的权重里。模型在训练时看到的是固定视角的画面,它就默默记住了"这种画面配这种动作"。
这就像一个学生在考试前把答案和题目位置死记硬背下来,而不是真正理解题目。考试卷子一换(相机一挪),分数就断崖式下跌。
论文中有一张让人触目惊心的图(Figure 1):π0 在训练视角下成功率 65.3%,10 度偏移掉到 35%,15 度偏移只剩 6.3%。这不是渐进式衰减,这是断崖式崩溃。
现有方案的共同软肋
那么,之前的研究者有没有意识到这个问题?有。而且他们提出了各种方案:
- OC-VLA [46]:把动作表达在标定好的相机坐标系里——但需要预先知道相机外参。
- Jiang et al. [23]:用射线嵌入(ray embeddings)来编码相机参数——但需要知道相机内参。
- 4D-VLA [45]:用已知的内参外参把像素反投影到机器人坐标系——同样需要标定。
- AnyCamVLA [16]:根据源视角和目标视角合成标准视角——但要知道两个视角的位姿。
看出来了吗?这些方法的共同点是:它们都在"告诉"模型相机在哪里。它们解决视角问题的手段,恰恰是假设你知道相机参数。
这就很讽刺了——这些方法之所以需要 view robustness(视角鲁棒性),恰恰是因为真实部署中相机位置会变;但它们解决这个问题的办法,又要求你提供相机位置。就像一个医生给你开的药,需要你先把病治好才能吃。
论文作者冷冷地指出了这个悖论:
"Existing view-robust VLAs are therefore most fragile in the deployment regimes that motivate view robustness in the first place."
(现有的视角鲁棒 VLA,恰恰在那些最需要视角鲁棒性的部署场景中表现得最脆弱。)
🧠 人类的秘密:我们怎么做到的?
在说解决方案之前,让我们想一个问题:人类是怎么解决这个的?
你蒙上眼睛原地转三圈,然后让你去够面前桌子上的水杯。你能做到。为什么?
因为你并没有在"世界坐标系"里思考。你在一个自我中心坐标系(egocentric frame)里操作:"水杯在我视线偏左下方,手应该往那个方向伸"。与此同时,你的大脑深处还有一个** allocentric 系统**,在默默维护着你的头相对于躯干的位置和朝向。
这两者是可以分离的。你可以不知道自己在房间的绝对坐标(allocentric 可能模糊),但你仍然可以准确地拿到面前的水杯(egocentric 仍然精确)。
这正是 CamVLA 的灵感来源。论文引用了神经科学里的经典发现:人类的视觉-动作系统存在两条分离的通路——背侧通路(dorsal stream,负责"怎么做")和腹侧通路(ventral stream,负责"是什么")[^15][^12]。CamVLA 把这种生物学的因子化(factorization)思想搬到了机器人策略里。
⚡ CamVLA 的双头龙架构
CamVLA 的核心思想可以一句话概括:
把"怎么动"和"从哪看"拆开,让它们各自学习,再几何地拼回来。
具体来说,CamVLA 在标准 VLA 的视觉骨干网络之上,添加了两个并行的"头"(heads):
🎯 Action Head:在相机坐标系里思考动作
第一个头叫做 Action Head(动作头)。它的任务不是预测"机械臂末端相对于基座该怎么动",而是预测**"机械臂末端相对于相机该怎么动"**。
也就是说,输出变成:
ΔA_c = [Δp_c, Δr_c, g]
其中 Δp_c 是相机坐标系下的相对平移,Δr_c 是相机坐标系下的相对旋转,g 是夹爪开合状态。
为什么这样更好?因为视觉观察和动作输出现在共享同一个坐标系了。如果图像中物体往左移动了 50 像素,这个动作就对应相机坐标系下 X 轴负方向的一个固定偏移。这种对应关系是几何上不变的——无论相机被搬到哪个位置,只要画面中的相对运动是一样的,动作的相机坐标系表达就是一样的。
论文里有一句很精准的话:
"A leftward visual translation in the image consistently corresponds to a negative displacement along the local X-axis of the camera."
(图像中的左向视觉平移,始终对应相机局部 X 轴的负向位移。)
这就好比你戴 VR 眼镜操作虚拟手柄——你不需要知道头盔在房间的哪个位置,你只需要知道"手柄在我视野里往左移,我就往左挥"。这种映射是本能的、与绝对位置无关的。
🧭 Geometric Head:自己推断相机在哪
但这里还有一个问题:机械臂的底层控制器不会说"相机坐标系",它只认"基座坐标系"。所以你需要把相机坐标系的动作翻译成基座坐标系的动作。
翻译需要一本"字典"——hand-eye 变换矩阵 T。这本字典在哪?
之前的方法说:"我们给你一本印好的字典(标定好的外参)。"
CamVLA 说:"不,我让模型自己学认路。"
第二个头 Geometric Head(几何头)做的就是这个。它从同一张 RGB 图像中,回归出 6-DoF 的 hand-eye 矩阵——也就是相机相对于机器人基座的位姿(3 维平移 + 3 维旋转)。
这个头的实现非常轻量:只是一个三层的 MLP,1024 维隐藏层,GELU 激活,参数量只有 6.30M——只占整个模型的 0.19%。
它接收的是图像编码器(Image Encoder)输出的视觉特征(经过平均池化)。注意,这里是关键设计选择:论文发现用 Image Encoder 的特征比用 VLM Backbone 的深层特征效果更好——虽然后者的任务成功率略高(53.5% vs 51.4%),但几何估计的误差大得多(14.7cm vs 4.7cm),而且在未见过视角上会出现不连续的几何跳跃,这在真实机器人部署中是危险的。
🔗 确定性的几何融合
现在我们有了:
- 相机坐标系下的动作
ΔA_c - 相机到基座的位姿
T = [R | τ](旋转矩阵 + 平移向量)
如何把 ΔA_c 转换成基座坐标系下的 ΔA_b?
这里出现了整篇论文最优雅的一个数学洞察:
对于 delta 动作(相对动作),平移向量 τ 会被完全抵消。
让我展开说一下,因为这真的很美:
假设末端执行器在相机坐标系下有两个位置 p_c^(0)(当前)和 p_c^(1)(目标)。它们对应的基座坐标系位置是:
p_b^(i) = R * p_c^(i) + τ (i = 0, 1)
那么基座坐标系下的位移就是:
Δp_b = p_b^(1) - p_b^(0)
= (R * p_c^(1) + τ) - (R * p_c^(0) + τ)
= R * (p_c^(1) - p_c^(0))
= R * Δp_c
τ 精确地抵消了。
旋转也是一样:delta 旋转在基座坐标系下就是 R * Δr_c。
这意味着什么?意味着即使你预测的手眼平移有几十厘米的误差,只要旋转矩阵 R 足够准,执行出来的动作就是对的。而旋转预测正是 Geometric Head 最擅长的——在 15 度训练间隔的配置下,旋转误差只有 1.41 度。
论文的作者一定在推导出这个式子时露出了微笑。一个看似复杂的 6-DoF 回归问题,因为 delta 动作的数学结构,被降解成了一个对平移误差不敏感的、主要由旋转决定的鲁棒控制问题。
这就是那种"既简洁又深刻"的数学——它不依赖于更多的数据或更大的模型,而是依赖于对问题结构的真正理解。
🏆 数字说话:从 6.3% 到 51.4% 的跨越
好,架构讲完了。它真的有用吗?
仿真世界:RLBench 上的零样本泛化
论文在 RLBench 仿真环境中进行了大规模测试。训练时只在离散的几个视角采样(每 15 度一个),测试时却在所有中间角度(每 5 度一个)上评估——这意味着测试视角全部是训练时从未见过的。
结果如下表(Table 1 的核心数据):
| 模型 | Slide Block | Push Buttons | Take Umbrella | Close Laptop | Lamp Off | Put Knife | 平均 |
|---|---|---|---|---|---|---|---|
| π0 | 18.3 | 51.5 | 32.3 | 57.0 | 29.8 | 10.0 | 33.2 |
| π0 + CamVLA | 44.5 | 72.3 | 39.2 | 69.0 | 58.0 | 25.3 | 51.4 |
| GR00T N1.7 | 27.5 | 13.5 | 41.8 | 47.7 | 28.2 | 11.5 | 28.4 |
| GR00T N1.7 + CamVLA | 44.7 | 30.5 | 50.3 | 56.0 | 35.0 | 14.0 | 38.4 |
CamVLA 在 π0 基础上将平均成功率从 33.2% 提升到 51.4%——18.2 个百分点的绝对提升。在一些 baseline 几乎崩溃的任务上(比如 Slide Block 从 18.3% 到 44.5%,Lamp Off 从 29.8% 到 58.0%),提升尤为显著。
更值得注意的是,CamVLA 是一个即插即用的框架——它可以套在任何现有的 VLA 架构上。π0 可以套,GR00T N1.7 也可以套,都获得了显著提升。
消融实验:每一个设计选择都有意义
论文做了一组非常漂亮的消融实验(Table 7),让我们可以精确地看到每个组件的贡献:
| 变体 | 状态输入 | 动作输出 | Hand-Eye 来源 | 免标定? | 成功率 |
|---|---|---|---|---|---|
| π0 (baseline) | 基座 | 基座 | 无 | ✓ | 33.2% |
| CamVLA ‡ | 相机 | 相机 | 真值 | ✗ | 51.9% |
| CamVLA * | 相机 | 相机 | 自预测 | ✗ | 51.7% |
| CamVLA † | 基座 | 相机 | 真值 | ✗ | 52.3% |
| CamVLA | 基座 | 相机 | 自预测 | ✓ | 51.4% |
这组消融揭示了几个关键信息:
-
仅仅把动作输出从基座坐标系改成相机坐标系,就从 33.2% 涨到了 51%+(比较 π0 和 CamVLA ‡)。这是最大的单一提升来源。
-
用自预测的 hand-eye 矩阵替代真值,性能只掉 0.9%(51.4% vs 52.3%)。这说明 Geometric Head 的预测精度已经非常高,足以替代昂贵且易错的人工标定。
-
用基座坐标系的状态输入(而不是相机坐标系),只掉 0.3%。这是一个刻意的设计选择——虽然理论上用相机坐标系的状态会更好,但用基座坐标系意味着你不需要在状态观测阶段也做标定,实现了真正的全链路免标定。
还有一个有趣的结果是关于 hand-eye 矩阵表示的消融(Table 8):预测完整的 6-DoF(旋转+平移)和只预测旋转,成功率几乎没有差别(51.4% vs 51.3%)。这再次验证了那个优雅的数学结论——对于 delta 动作,平移真的不重要。
🌍 走进现实:Franka 机械臂的考场
仿真世界里的好成绩,在真实机器人上能复现吗?
论文团队在真实的 Franka Research 3 机械臂上进行了验证。他们设置了五个不同的相机视角来收集训练数据,然后用三个测试相机在 5°、10°、15° 的偏移下评估。
真实世界的测试结果(Table 2)同样令人印象深刻:
在 15 度偏移这个最极端的条件下:
- π0 的平均成功率从 63.3%(标准视角)暴跌到 16.0%
- π0 + CamVLA 从 79.0% 降到 29.3%——虽然也有下降,但相对 baseline 几乎翻倍
在 5 度偏移(更接近日常部署中的相机漂移):
- π0 从 63.3% 降到 53.3%
- π0 + CamVLA 从 79.0% 降到 68.0%——仍然保持了可观的性能
这意味着什么?意味着你的机械臂在工厂里跑了三个月,相机支架稍微松了一点、歪了 5 度,CamVLA 仍然能大概率完成任务,而标准 VLA 已经开始频繁出错了。
论文还展示了一个更酷的场景(Figure 14):手持相机。一个人手持相机在机械臂旁边走动,相机持续移动,CamVLA 仍然能实时追踪 hand-eye 位姿并完成操作。这已经完全超出了传统"标定一次一劳永逸"的范式——这是一个真正动态的、自适应的系统。
计算开销:几乎可以忽略不计
你可能会问:加了一个额外的 Geometric Head,推理会变慢吗?
答案是:几乎不会。
| 指标 | π0 | CamVLA | overhead |
|---|---|---|---|
| 参数量 (M) | 3238.1 | 3244.4 | +0.19% |
| FLOPs (G) | 660.9 | 661.9 | +0.15% |
| 推理时间 (ms) | 61 | 62 | +1 ms |
在 RTX 4090 上,单次推理从 61ms 增加到 62ms。对于 10Hz 的控制频率来说,这完全是噪声级别的开销。
🎯 为什么这个方法如此聪明
读完整篇论文,我觉得 CamVLA 的聪明之处不仅仅在于它"work",而在于它对问题结构的深刻洞察。
它做了三件其他方法没做到的事:
1. 从"隐式记忆"到"显式推理"
标准 VLA 把 hand-eye 变换藏在了网络权重里,靠记忆来应对。CamVLA 把它变成了显式的网络输出,靠推理来应对。
这类似于自动驾驶里从"端到端黑盒"到"显式感知+规划"的进化。显式化不仅更鲁棒,更可解释、可调试、可扩展。
2. 从"给定几何"到"学习几何"
之前所有的视角鲁棒方法都假设你知道相机几何参数。CamVLA 说:不,我不需要你给我。我只需要一张 RGB 图片,自己就能推断出来。
这是一种范式的转换——从"依赖外部标定系统"到"自给自足的闭环感知"。在真实世界中,标定会漂移、会失效、会被遗忘。而自定位是活的、连续的、自适应的。
3. 从"耦合一切"到"解耦因子"
CamVLA 的核心设计哲学是因子化(factorization):把动作生成(怎么动)和几何定位(从哪看)拆开。
这不是为了因子化而因子化。而是因为这两个子问题有不同的数学结构:
- 动作生成是视觉-动作对齐问题,在相机坐标系下天然视角不变
- 几何定位是单目位姿估计问题,被降解为单一的 6-DoF 回归
解耦之后,每个子问题都变得更简单,合起来却解决了原来耦合时无法解决的复杂问题。
🔮 边界与未来
论文在 Conclusion 里诚实地列出了 limitations,这也值得说说:
-
只支持单目第三人称相机。手腕相机(wrist camera)的扰动还没考虑,多相机系统的协同也未涉及。
-
极端视角变化仍然困难。虽然论文证明了 15 度内的鲁棒性,但如果相机被搬到完全看不到物体的位置,或者发生了剧烈的遮挡变化,模型仍然会失败。
-
高精度任务有挑战。如果要求亚毫米级的操作精度,hand-eye 矩阵的微小旋转误差会被放大为末端的大位移。
这些限制指明了自然的后续方向:
- 把 CamVLA 扩展到手腕相机和多相机融合
- 结合视觉里程计(VO)或 SLAM 来增强大位移下的几何稳定性
- 在线 hand-eye 标定系统与 CamVLA 的预测互相校正
但即便有这些限制,CamVLA 已经做到了一件非常重要的事:它证明了 VLA 模型可以不需要任何外部标定信息,仅凭单目 RGB 图像就实现视角鲁棒的操控。这在机器人学的实用化道路上,是一个实质性的里程碑。
📝 写在最后
我读这篇论文的时候,反复想起 Richard Feynman 说过的一句话:
"What I cannot create, I do not understand."
CamVLA 的作者显然深谙此道。他们没有堆砌更复杂的网络结构,没有喊更大的模型、更多的数据,而是回到了问题的第一性原理——坐标系之间的几何关系到底是什么?
他们发现,只要换一个坐标系来表达动作,就能把视角不变性从网络需要隐式学习的"负担",变成数学上自然保证的"性质"。这就像是爱因斯坦发现只要换一个参考系,光速不变就从实验事实变成了公理。
当然,这个比喻夸张了。但其中的精神是相通的:好的物理/几何洞察,往往比更多的参数更有效。
CamVLA 用 6.30M 额外参数(0.19% 的 overhead),解决了困扰 VLA 社区的一个核心问题。它的成功提醒我们:在深度学习时代,几何学并没有过时。相反,当我们把深度学习的力量和经典几何的优雅结合起来时,往往能创造出既强大又简洁的解决方案。
下一次当你看到一台机械臂在被人碰歪相机后仍然从容地完成任务时,请记住:它不再是一个死记硬背的学生了。它学会了看地图,也学会了认方向。
📚 参考文献
[1] Li, W., Jiang, X., Qian, Q., Zhao, D., Lu, S., Zhang, G., & Xu, R. (2026). From Fixed to Free Cameras: Calibration-Free View-Robust Vision-Language-Action Model. arXiv preprint arXiv:2607.05396.
[2] Black, K., et al. (2024). π0: A vision-language-action flow model for general robot control. RSS.
[3] Bjorck, J., et al. (2025). GR00T N1: An open foundation model for generalist humanoid robots. arXiv preprint arXiv:2503.14734.
[4] Kim, M. J., Pertsch, K., et al. (2024). OpenVLA: An open-source vision-language-action model. CoRL.
[5] Zhang, T., et al. (2026). Grounding actions in camera space: Observation-centric vision-language-action policy. AAAI, 40, 18782-18790.
[6] Heo, H., et al. (2026). AnyCamVLA: Zero-shot camera adaptation for viewpoint robust vision-language-action models. arXiv preprint arXiv:2603.05868.
[7] Zhang, J., et al. (2025). 4D-VLA: Spatiotemporal vision-language-action pretraining with cross-scene calibration. arXiv preprint arXiv:2506.22242.
[8] Jiang, T., et al. (2025). Do you know where your camera is? View-invariant policy learning with camera conditioning. arXiv preprint arXiv:2510.02268.
[9] Goodale, M. A., & Milner, A. D. (1992). Separate visual pathways for perception and action. Trends in Neurosciences, 15(1), 20-25.
[10] Crawford, J. D., Medendorp, W. P., & Marotta, J. J. (2004). Spatial transformations for eye-hand coordination. Journal of Neurophysiology.
[11] James, S., Ma, Z., Arrojo, D. R., & Davison, A. J. (2020). RLBench: The robot learning benchmark & learning environment. IEEE Robotics and Automation Letters, 5(2), 3019-3026.
[12] Tsai, R. Y., & Lenz, R. K. (1989). A new technique for fully autonomous and efficient 3D robotics hand/eye calibration. IEEE Transactions on Robotics and Automation, 5(3), 345-358.
[13] Murray, R. M., Li, Z., & Sastry, S. S. (2017). A mathematical introduction to robotic manipulation. CRC Press.
[14] Qian, Q., Zhao, G., Zhang, G., et al. (2025). GP3: A 3D geometry-aware policy with multi-view images for robotic manipulation. ICRA.
#论文 #arXiv #AI #小凯
讨论回复
加载中...正在加载回复...
推荐
智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。