具身智能:资产到轨迹:机器人数据生产线怎么跑通
仿真机器人数据集不是“收集一批 3D 模型”这么简单。一个资产要进入机器人训练,必须同时有视觉外观、真实尺寸、物理属性、碰撞体、抓取标注、任务脚本、轨迹规划和成功判定。缺其中一环,数据看起来很多,训练时却很难复现失败。
从一个物体资产到一条可训练的机器人轨迹,中间要经过感知、抓取、轨迹、记录和评测等环节。

图源:SpatialVLA,Figure 3。原图展示机器人实验中的多视角相机、机器人本体和任务场景。读图重点:资产、scale、camera pose、grasp pose 和 trajectory GT 最终都要在这样的实验设置里对齐,才能支持 VLA、WAM 或传统 planner。
资产不是一张 3D 图
一个可用于机器人仿真的资产至少有四层。
视觉外观包括 mesh、材质和纹理,服务相机渲染和 VLA 输入。几何尺寸包括 scale、origin、轴向和真实米制尺寸,服务放置、碰撞、抓取和 success checker。物理属性包括质量、摩擦、刚体/可变形、弹性和接触参数,服务仿真接触和滑动。操作标注包括抓取点、抓取轴、可开启轴、功能点和任务 affordance,服务轨迹规划和技能库。
类似下面的目录只是开始:
1 | assets/apple/scale_080_080_070/ |
其中 visual_mesh 负责“看起来像苹果”,collision_mesh 负责“物理上怎么碰撞”。二者不应该混为一谈。视觉 mesh 可以复杂、好看;碰撞 mesh 通常要简化、稳定、可凸分解。视觉模型正确但碰撞网格偏了,会导致机械臂看起来没碰到,仿真却判定穿模或卡住。
尺度、origin 和坐标系决定能不能抓
机器人不只需要知道“这是苹果”,还要知道它在世界里的位置、朝向和大小。scale 决定模型单位到真实米制尺寸的缩放,origin 决定物体自身坐标系原点,pose 决定物体在场景里在哪里,frame 决定位置是相对 world、object、camera 还是 gripper。
如果 scale 错了,规划器会以为杯口更大或更小;如果 origin 错了,“上移 5cm”可能不是沿你以为的方向移动;如果 object frame 和 world frame 混了,抓取标注看起来对,执行时会偏。
资产进入数据生产线前,最少要能回放这条链:
1 | asset scale |
这条链能回放,资产数据才真正能进入世界模型数据引擎。
抓取标注标的是位姿,不是一个点
抓取不是一个像素点,而是夹爪相对物体的一组位姿和动作参数。可以写成:
这里 是夹爪相对物体的位置, 是夹爪相对物体的朝向,整体变换 表示从物体坐标系到夹爪坐标系的抓取位姿。实际标注里还会有 approach direction、pregrasp、夹爪开合、置信度和任务 affordance。
物理可行和任务可行也要分开。抓锤头也许能把锤子拿起来,但如果任务是敲钉子,应该抓手柄。抓取标注最好存候选集合,并在任务层过滤,而不是只存一个“能夹住”的姿态。

图源:GR-2,Figure 7。原图展示 bin picking 真实机器人设置。读图重点:bin picking 的难点不是一个抓取点,而是多物体遮挡、候选抓法冲突、抓起后是否还能完成后续放置。
Planner 把目标位姿变成轨迹
一条机器人轨迹是随时间变化的一串状态和动作:
1 | t0: joint_pos, end_effector_pose, gripper_command |
从“抓这个苹果”到可执行轨迹,中间通常要经过检测/分割、物体 pose、抓取候选、pregrasp、IK、碰撞检测、motion planning、轨迹优化和控制器执行。FK 是已知关节角算末端在哪里;IK 是已知末端目标位姿求关节角;collision checking 判断是否碰撞;motion planning 找一条可行路径;trajectory optimization 再优化平滑、速度和安全裕度。
由 planner、遥操作、人类示范或专家策略生成并通过仿真验证成功的动作序列,才可以作为 ground truth trajectory。它可以用于行为克隆,也可以用于评测 VLA 是否复现专家动作。
批量轨迹生成为什么经常失败
批量生成轨迹时,失败不是异常,而是常态。IK 可能无解,planner 可能找不到无碰撞路径,抓取后物体可能滑落,放置时物体可能滚动,success checker 可能不通过,仿真接触也可能因为 collision mesh 或时间步问题不稳定。
更稳的批量生成逻辑是不断重采样场景、抓取候选、规划随机种子和目标位置:
1 | for task in tasks: |
这段伪代码的重点是失败也要记录。plan is None、抓取失败、碰撞、滑落、checker 不通过,都应该进入 failure bucket。它们是训练 risk head、恢复策略和世界模型反事实评测的高价值样本。
Success checker 不能只看最终状态
任务成功判定要同时看最终状态和过程。比如“把杯子放进篮子”不能只看杯子最后在篮子里,还要看夹爪是否释放、是否碰撞其他物体、杯子是否穿模、轨迹是否越界、是否靠不真实的物理参数成功。
RoboTwin 这类平台的价值,就在于把资产、任务、功能点、专家轨迹和 success checker 放进同一条数据管线。这样一条轨迹失败时,可以定位是资产尺度、碰撞网格、抓取标注、planner、控制器还是 checker 出了问题。
和 VLA / 世界模型的关系
资产到轨迹的数据线,最终会变成 VLA 和世界模型的训练样本。VLA 学的是从观测和语言到动作;世界模型学的是候选动作之后未来状态、风险和成功概率怎么变。两者都需要同一批 episode 能回放。
如果只保存成功轨迹,模型学不到边界;如果只保存视频,模型学不到动作因果;如果只保存动作,不保存相机和物理状态,失败无法归因。真正有价值的数据包,是能同时提供观测、动作、状态、评测和失败原因。
外部材料
- RoboTwin 2.0 docs:理解双臂任务、资产、轨迹和 success checker 的组织方式。
- SpatialVLA:理解空间编码和跨 embodiment 动作网格如何连接数据和模型。
- GR-2:理解视频先验和机器人轨迹如何结合。
- cuRobo:理解 GPU 加速运动规划和轨迹优化在机器人数据生成中的位置。
- DROID:理解真实机器人轨迹采集和多场景数据组织。
- Title: 具身智能:资产到轨迹:机器人数据生产线怎么跑通
- Author: Charles
- Created at : 2025-05-18 09:00:00
- Updated at : 2025-05-18 09:00:00
- Link: https://charles2530.github.io/2025/05/18/ai-files-embodied-ai-asset-perception-grasp-and-trajectory-pipeline/
- License: This work is licensed under CC BY-NC-SA 4.0.