VGA模型:基于三维几何表征的机器人视觉动作映射新范式

发布时间:2026/5/28 9:09:16

VGA模型:基于三维几何表征的机器人视觉动作映射新范式 1. 项目概述与核心思路拆解在机器人操作领域我们长久以来面临一个根本性的挑战如何让机器人像人一样仅仅通过“看”就能理解三维世界的几何结构并据此做出精准的物理动作。无论是抓取一个杯子还是将积木堆叠起来其本质都是将二维的视觉信息RGB图像映射为一系列三维空间中的几何动作指令比如末端执行器的三维坐标、旋转姿态和开合状态。这个映射过程我称之为“视觉到几何的映射”。过去几年业界的主流思路是借助强大的视觉-语言模型或视频预测模型。这些模型在互联网规模的图文或视频数据上进行了预训练擅长理解语义概念比如“红色的方块”或预测下一帧画面。然而当我们把它们直接用于机器人控制时会发现一个根本性的错位这些模型的“思维”是建立在二维像素或文本语义之上的而机器人要执行的动作其本质是三维空间中的几何变换。这就好比让一位精通平面设计的画家去指挥一台三维打印机他虽然能描述出精美的图案却难以精确控制打印头在三维空间中的每一个运动轨迹。因此我和团队开始思考为什么不绕开这个“二维中介”直接建立一个以三维几何为核心的模型呢我们提出的Vision-Geometry-Action模型正是基于这一理念。它的核心思想非常直接用预训练的三维世界模型如VGGT作为骨干网络取代传统的视觉-语言或视频模型骨干。这样模型从输入多视角图像开始就在一个原生的三维表征空间中进行推理最终直接输出控制机器人所需的几何动作。这就像给机器人装上了一双能直接“看见”深度和体积的眼睛以及一个能直接“思考”空间关系的大脑。1.1 为何要挑战主流范式你可能会有疑问现有的视觉-语言-动作模型表现已经很不错了为什么还要另辟蹊径根据我们大量的实验和实际部署经验主要基于以下三点考量表征的本质错位VLA模型的核心是语言模型其预训练目标是对齐图像和文本的语义。这导致其内部表征充满了“语义概念”但缺乏对“空间体积”、“相对位姿”、“遮挡关系”等几何属性的精确编码。在需要毫米级精度的抓取或装配任务中这种模糊性会成为性能瓶颈。3D-2D-3D的冗余循环一些改进方法尝试在VLA前端加入三维感知模块如深度估计网络、点云编码器将三维信息“注入”模型。但问题在于这些三维特征随后仍需通过一个为二维图像优化的VLM骨干进行处理相当于把三维信息强行压缩进一个二维的“思维通道”最后再解码成三维动作。这个过程中存在严重的信息损失和扭曲。对额外传感器的依赖许多强调三维感知的方法需要依赖深度相机等额外传感器来获取点云数据。这不仅增加了硬件成本和系统复杂性传感器噪声和标定误差也会直接引入下游任务。VGA模型的思路是“正本清源”。既然机器人操作是几何问题那么我们就应该用一个为几何理解而生的模型作为基础。我们选择的VGGT模型本身就在大规模多视角三维数据集上预训练过其内部表征天然蕴含了对相机姿态、深度、三维结构的强大先验知识。以它作为骨干我们相当于为机器人操作任务提供了一个高保真的三维“特征引擎”。1.2 VGA模型的整体工作流程为了让思路更清晰我画了一个简化的流程图来展示VGA与传统方法的区别以及它内部是如何工作的传统VLA/VAM 2D图像 → [VLM/视频模型骨干] → 2D/语义表征 → 动作头 → 机器人动作 (核心2D模式匹配或时序预测) VGA模型 多视角2D图像 → [预训练3D世界模型骨干 (VGGT)] → 原生3D几何表征 → [渐进式体积调制] → 动作头 → 机器人动作 (核心视觉到几何的直接映射)具体到单步推理时VGA的流程如下输入模型接收当前时刻的多视角RGB图像、一条文本指令如“把红色方块放到黄色方块上”以及机器人的本体感知信息如关节角度。编码与融合图像通过DINO编码器转换为视觉令牌文本通过Qwen-GTE编码器转换为语言令牌本体感知通过一个小型MLP编码。同时我们引入可学习的“动作查询”令牌用于从多模态序列中聚合与操作相关的上下文信息。三维表征生成所有令牌被拼接成一个序列送入预训练的VGGT Transformer骨干网络。VGGT采用交替注意力机制先在单个视图内进行局部注意力计算以捕捉细节再进行跨视图/跨模态的全局注意力以构建统一的三维场景理解。输出就是我们需要的原生三维几何表征。动作解码这些富含几何信息的表征通过我们设计的渐进式体积调制模块被高效、结构化地注入到动作解码器中。解码器最终输出未来一段时间内例如未来8个时间步的机器人动作序列包括末端执行器的位移、旋转和夹爪开合度。辅助监督训练时在训练阶段我们不仅用动作序列来监督模型还同时让模型预测每个输入视图的相机参数和深度图。这种联合训练策略迫使共享的三维表征必须同时满足动作预测和几何属性重建两个目标从而学得更加几何一致和鲁棒的表征。在推理时这些辅助解码头会被剥离不影响运行效率。2. 核心组件深度解析理解了整体框架我们再来深入看看VGA模型中几个关键的设计这些是它性能提升的核心所在。2.1 骨干网络为何选择并如何利用VGGTVGGT并非为我们这个任务而生它是一个通用的三维几何基础模型。它的强大之处在于其预训练目标和架构设计预训练目标VGGT在大规模的多视角三维数据集如Co3Dv2, BlendMVS上训练其学习目标是给定多张同一场景的图片预测出每张图的相机参数内参、外参、深度图、点云图以及稠密特征对应关系。这意味着它被迫去理解场景的三维几何结构而不是语义标签或美观程度。交替注意力机制这是VGGT Transformer的核心。它交替进行两种注意力计算帧内局部注意力在单张图片的令牌内部进行专注于提取该视角下的局部外观和细节特征。跨帧全局注意力在所有输入图片的所有令牌之间进行目的是整合来自不同视角的信息推理出它们之间的几何关系从而在特征层面“重建”出统一的三维场景表示。 这种设计完美契合了机器人操作的需求我们需要细节物体的纹理、边缘来识别目标更需要三维关系哪个物体在前、在后、距离多远来规划动作。在我们的使用中我们冻结了VGGT绝大部分的预训练权重仅使用LoRA低秩适应技术对其中的注意力模块进行微调。这是至关重要的一步。直接全参数微调会严重破坏VGGT来之不易的三维几何先验导致模型迅速退化为一个普通的二维特征提取器。LoRA通过注入少量的可训练参数来适配新任务最大程度地保留了骨干网络原有的强大三维理解能力。实操心得LoRA配置要点在我们的实现中LoRA的秩rank设置为64仅应用于Transformer的Q查询、K键、V值和输出投影矩阵。学习率设置为骨干网络学习率的5-10倍。这样既能高效适配机器人任务又牢牢锁住了三维先验。训练后可训练参数量仅约5亿远小于全参数微调极大地节省了计算和存储成本。2.2 渐进式体积调制模块如何让动作“听懂”几何有了高质量的三维表征下一个问题是如何将它们有效地用于指导动作生成。一个简单的做法是让动作解码器通过交叉注意力机制直接去“看”这些表征。但我们在实验中发现这种直接的方式效果有限几何信息在传递过程中容易损耗。因此我们设计了渐进式体积调制模块。它的作用就像一个精密的“信息调节阀”在动作解码器的每一层都进行一轮精细的信息交换动作上下文提炼解码器当前层的隐藏状态作为“查询”先去关注一组专门用于聚合动作上下文的“动作查询”令牌。这一步的目的是聚焦于与当前要生成的动作最相关的信息。几何-语义信息对齐将上一步提炼出的特征再作为“查询”去关注来自骨干网络的、融合了视觉与语言信息的三维表征。这一步是关键它将动作意图与具体的三维场景几何结构进行对齐。自适应融合将调制后的几何条件信息与解码器原本计算出的下一层状态进行拼接再通过一个线性层投影回原有的维度。这样几何信息不是被简单地附加而是被自适应地融合进了解码器的推理流中。通过在每个解码层重复这一“提炼-对齐-融合”的过程PVM模块确保了三维几何信息能够以一种结构化、渐进式的方式持续影响动作的生成实现了从“看到几何”到“做出几何动作”的高保真映射。2.3 联合训练策略为什么预测深度和相机参数有帮助在训练时我们不仅要求模型输出正确的动作还要求它同时预测输入图像的深度图和相机参数。这看似增加了任务复杂度实则是提升模型三维空间理解能力的“秘密武器”。深度预测迫使模型必须理解场景中每个像素距离摄像机的远近。这对于判断抓取点是否可达、物体是否被遮挡至关重要。相机参数预测迫使模型必须理解不同视角图像之间的几何变换关系。这强化了其构建统一、坐标系一致的三维场景表征的能力。这种多任务联合训练创造了一种有益的“压力”模型学习到的共享三维表征必须同时满足“驱动动作”和“解释几何”两个目标。这就像让学生同时学习解题和讲解原理他对知识的理解会比只学习解题更深刻、更结构化。在推理时我们丢弃这些辅助解码头因此不会增加任何计算开销却享受了训练带来的表征质量提升。注意事项真实世界训练的调整在仿真中我们可以轻松获取精确的深度和相机参数真值。但在真实机器人部署中获取密集、精确的3D标注成本极高。因此在真实世界实验阶段我们只使用动作序列进行监督训练放弃了深度和相机参数的辅助损失。实验证明即便没有这些辅助任务由仿真预训练带来的三维几何先验依然能大幅提升模型在真实世界的表现和泛化能力。3. 从仿真到实物的全流程实现与调优理论再好也需要实践检验。下面我将详细拆解我们如何将VGA模型从仿真环境训练最终部署到真实的Franka Panda机械臂上。3.1 仿真环境搭建与数据准备我们选择LIBERO作为核心仿真基准。这是一个专门为长期、多任务机器人操作研究设计的基准测试包含四个任务套件空间任务要求理解物体间的相对位置关系如“放在左边”。物体任务要求识别和操作特定属性的物体如“拿起红色的杯子”。目标任务任务目标在过程中可能发生变化。长期任务包含多个子步骤的复杂顺序任务。每个套件包含10个独特任务我们为每个任务收集了约400条由专家演示的轨迹数据。每条数据包含多视角RGB图像序列、对应的机器人动作序列末端位姿变化、以及从仿真引擎直接读取的深度图和相机参数真值用于辅助训练。数据预处理流程图像标准化将多视角图像统一缩放到224x224分辨率并进行归一化。动作归一化对动作数据位移、旋转、夹爪开合进行标准化使其均值为0方差为1以稳定训练。指令嵌入使用Qwen-GTE文本编码器将语言指令转换为固定维度的向量。这里我们没有对文本编码器进行微调以利用其强大的通用语义理解能力。构建数据加载器采用随机裁剪、颜色抖动等增强技术来提高模型的鲁棒性。由于是多视角输入我们确保同一时间步的所有视角图像同时被加载和增强。3.2 模型训练细节与超参数选择训练是在单张NVIDIA A100 80GB GPU上完成的最长的一次训练耗时约60小时。以下是关键的训练配置组件配置说明与理由骨干网络VGGT-Base (12层Transformer)基础版本在性能和计算开销间取得良好平衡。微调方法LoRA (rank64)仅微调注意力层的Q/K/V/O投影矩阵保护预训练三维先验。优化器AdamW权重衰减设为0.05防止过拟合。学习率骨干: 1e-5, LoRA/新层: 5e-5新引入的参数需要更大的学习率快速收敛。批次大小32在GPU内存允许范围内尽可能取大稳定训练。动作块大小8预测未来8步动作平衡了时序依赖和训练难度。损失函数L_action λ1 * L_camera λ2 * L_depthL_action为平滑L1损失L_camera为Huber损失L_depth为不确定性加权深度损失。λ1和λ2经调优后均设为0.1。训练过程观察初期动作损失下降很快但深度预测误差较大说明模型优先学习简单的动作模仿。中期随着联合训练的进行深度和相机预测损失开始显著下降同时动作损失会有一个小幅度的回升然后继续下降。这是一个好迹象表明模型正在调整其内部表征使其同时满足多个目标表征质量正在提升。后期所有损失曲线趋于平稳验证集上的任务成功率停止增长。我们通常选择在验证集成功率最高的检查点。3.3 真实世界系统部署与零样本泛化测试将仿真中训练好的模型部署到真实机器人上是检验其泛化能力的终极考场。我们的实验平台配置如下机器人Franka Panda 7自由度机械臂。感知3个Intel RealSense D415深度相机。一个安装在腕部眼在手两个固定在不同位置的三角架上外部视角。任务我们设计了三个具有代表性的任务抓取方块、按压按钮、堆叠方块。它们分别考察了基础抓取、精确定位和空间摆放能力。部署流程模型转换与优化将PyTorch模型转换为ONNX格式并使用TensorRT进行推理优化显著降低延迟。感知流水线固定相机和腕部相机以10Hz频率同步采集RGB图像。注意我们只使用RGB图像不依赖深度图以测试模型纯视觉的几何理解能力。控制接口模型以20Hz的频率输出末端执行器的相对位姿增量Δx, Δy, Δz, Δrx, Δry, Δrz和夹爪开合指令。我们通过机器人的底层控制器将其转换为关节角度指令并执行。零样本泛化测试这是最激动人心的部分。我们用固定相机1训练视角的数据训练模型。在评估时我们不仅测试相机1视角下的表现分布内测试更关键的是直接将模型部署到从未见过的固定相机2的视角下分布外测试不进行任何微调或重新训练。真实世界实验结果分析 下表展示了VGA与基线模型在真实世界任务上的成功率对比分布内测试模型 \ 任务抓取方块按压按钮堆叠方块平均成功率ACT65%40%30%45%OpenVLA70%55%35%53.3%π0.585%75%60%73.3%VGA (Ours)95%90%80%88.3%结果显而易见VGA取得了显著优势。更重要的是在零样本跨视角泛化测试中π0.5等VLA模型在切换到陌生相机视角时成功率平均下降了约25-30%。它们严重依赖于训练时见过的特定视角下的视觉模式。VGA模型的表现则异常稳健在陌生视角下的成功率仅比训练视角下平均下降了约10%。例如堆叠方块任务从80%降至72%。这强有力地证明了VGA模型学到的不是简单的2D图像到动作的映射而是对三维场景几何结构的理解。无论从哪个角度看它都能推断出物体在三维空间中的真实位置从而生成正确的动作。这种空间智能的泛化能力是迈向通用机器人操作的关键一步。4. 避坑指南与常见问题排查在复现和拓展VGA模型的过程中我们踩过不少坑也积累了一些宝贵的经验。这里分享出来希望能帮你少走弯路。4.1 训练阶段常见问题与解决问题模型训练初期发散动作输出为NaN。排查首先检查数据预处理特别是动作归一化的均值和方差计算是否正确。确保没有异常值如巨大的关节速度。其次检查学习率是否过高尤其是新初始化的PVM模块和动作头的学习率。解决采用梯度裁剪clip norm1.0。为动作解码器输出层初始化一个非常小的权重如0.01使其初始输出接近零无动作。使用Warm-up策略在前1000个迭代步内将学习率从0线性增加到设定值。问题任务成功率在仿真中提升缓慢甚至停滞。排查检查联合训练中辅助任务深度、相机的损失权重是否过大。如果λ1和λ2设置过高模型可能会过度关注重构几何而忽略了动作生成的主要目标。解决进行消融实验尝试不同的损失权重组合。我们发现λ1λ20.1是一个不错的起点。可以尝试在训练中动态调整权重例如前期侧重动作损失后期逐步引入辅助损失。问题使用LoRA微调后模型性能提升不明显甚至不如随机初始化训练。排查这通常是因为LoRA的秩rank设置不当或应用LoRA的模块选择有误。如果rank太小模型表达能力不足如果应用到了不该微调的层如LayerNorm可能会破坏预训练表征。解决严格将LoRA仅应用于Transformer注意力块的Q、K、V、O投影矩阵。对rank进行调优我们测试了16, 32, 64, 128最终64效果最佳。确保LoRA层的学习率显著高于冻结骨干的学习率通常5-10倍。4.2 仿真到真实迁移的挑战问题仿真中表现完美的模型在真实机器人上完全失效乱动或不动。排查这是最常见的“sim2real”鸿沟问题。首先检查视觉外观差异仿真渲染的图像和真实相机图像在亮度、对比度、纹理、噪声上差异巨大。其次检查动作空间差异仿真中控制的是理想化的末端位姿而真实机器人有动力学延迟、关节摩擦和误差。解决视觉域随机化在仿真训练时对图像进行大量的随机变换包括颜色、亮度、对比度、高斯噪声、模糊、随机纹理覆盖等。这能迫使模型学习更本质的几何特征而非表面的颜色纹理。动作延迟建模在仿真中可以在动作输出后引入几个时间步的延迟或加入小幅度的随机噪声来模拟真实控制的不确定性。少量真实数据微调如果条件允许收集少量几十条真实机器人演示数据用极低的学习率对模型最后一两层或LoRA参数进行微调能显著提升适应性。问题模型在真实世界中对光照变化敏感傍晚开灯后性能下降。排查模型过拟合了训练时的光照条件。解决在仿真域随机化中必须包含极端的光照变化模拟。此外在真实部署时可以考虑在相机前端使用自动曝光和白平衡已关闭的固定参数并配合一个简单的图像归一化如减均值除方差管道以减少光照变化的绝对影响。4.3 性能与效率优化问题模型推理速度慢无法达到实时控制如10Hz的要求。排查VGGT骨干和多视角输入会带来较大的计算量。使用原始的PyTorch推理效率较低。解决模型剪枝对于固定视角的任务可以尝试减少输入视角的数量如从4个减到2个。在精度损失可接受的前提下可以尝试对VGGT骨干进行知识蒸馏得到一个更小的学生网络。推理引擎优化如前所述将模型转换为ONNX并使用TensorRT或OpenVINO进行推理能获得数倍的加速。利用TensorRT的FP16或INT8量化可以进一步提速和减小内存占用。异步推理将感知图像编码、模型前向传播与控制指令发送解耦放在不同的线程或进程中。即使模型推理需要100ms只要控制环路能以更高的频率如500Hz执行最新的收到的指令整体系统依然可以流畅运行。VGA模型为我们打开了一扇新的大门绕过语义和像素的“翻译”直接建立视觉到几何的“直觉”。它证明了以原生三维几何为核心的表征范式在需要精确空间理解的机器人操作任务中具有显著的优势和泛化潜力。当然这条路还很长例如如何更好地处理长时程任务、如何与更高级的任务规划结合都是我们下一步探索的方向。但至少现在我们有了一个更坚实、更贴近物理本质的起点。

相关新闻