一句话定位
iDP3 把 dp3-3d-diffusion-policy 的 3D 点云表征从「世界坐标系」改到「相机坐标系(egocentric)」,去掉了相机标定和点云分割两道门槛,让一台全尺寸人形机器人(Fourier GR1,25-DoF 上半身)只用单一场景采集的人类遥操数据就能把抓取 / 倒水 / 擦桌等技能零样本泛化到厨房、会议室、办公室等真实野外场景,全程仅靠机身板载算力推理。
背景与定位
论文属于**真机模仿学习 / 3D 视觉运动策略(3D visuomotor policy)**范式,是 dp3-3d-diffusion-policy(DP3,Ze et al. 2024)在人形机器人上的工程化续作,作者同为 Yanjie Ze(Stanford,联合 SFU / UPenn / UIUC / CMU)。
它要解决的核心痛点:以往人形机器人操作系统(omnih2o、HumanPlus、OpenTeleVision、HATO 等)学到的技能只能在训练那一个场景里跑,换场景就失效——原因一是算法(多为 2D 图像策略)泛化差,二是跨场景采数据太贵。作者在 Table I 里对比同类真机系统,指出自己是唯一同时具备「Arm&Hand + Head + Waist 遥操」「Object + Camera View + Scene 三重泛化」且做了 2253 次真机 rollout 严格评测的工作。
与 DP3 的关系是「继承 + 改造」:DP3 在世界坐标系里用稀疏点云 + diffusion policy,需要精确标定把目标物体从背景里分割出来,只能在固定第三人称桌面机械臂上做「物体/视角」泛化;iDP3 去掉世界坐标系依赖,把这套方法搬到会动的人形机器人机头相机上,换来「场景」泛化。对照的 2D 基线是 diffusion-policy(Chi et al. 2023)配 R3M 视觉编码器。方法后来被社区复用——PointVLA(arXiv 2503.07511)直接拿 iDP3 Encoder 训 3D VLA。论文被 IROS 2025 接收。
模型架构
整体:3D 点云 → 编码器 → 条件 diffusion U-Net → 预测未来若干步关节目标位置。属于「点云版 Diffusion Policy」,非 VLM/语言条件。
- 策略骨干:conditional 1D U-Net(
down_dims = [256, 512, 1024],kernel_size = 5,n_groups = 8,diffusion_step_embed_dim = 128),DDIM 采样器,prediction_type = sample(直接预测干净样本而非噪声)。观测作为 global condition(obs_as_global_cond = True)。 - 视觉编码器(关键改动之一):把 DP3 原本的 MLP(Linear)编码器换成金字塔卷积编码器(
multi_stage_pointnet,out_channels = 128,layernorm)。作者发现卷积层比全连接层从含噪人类数据里学到的行为更「平滑」,再叠加不同层的金字塔特征进一步提精度。 - egocentric 3D 表征(核心创新):直接使用相机坐标系下的点云,不做世界坐标系变换。因此无需相机标定、无需把目标物从背景分割——这是能上人形机器人(相机随头动、无固定外参)的前提。
- 动作头 / 动作空间:直接回归目标关节位置(action dim = 25,对应上半身 25 DoF)。作者试过用末端执行器位姿做动作/本体感觉,发现真机下算 EE 位姿噪声大,直接用关节角更准。本体感觉
agent_pos为 32 维。 - 时序:观测步
n_obs_steps = 2,预测 horizon = 16,执行n_action_steps = 15(receding horizon)。加长预测 horizon 是三大改动之一——人类示范抖动 + 传感器噪声使短 horizon(DP3 默认 4)根本学不出来。 - 点云配置:输入形状
[4096, 6](xyz + 可选颜色,实际use_pc_color = false,仅用 3 通道 xyz),点数 4096(DP3 默认 1024)。采样用 voxel 下采样 + 均匀采样级联 替换 DP3 的最远点采样(FPS),保证覆盖 3D 空间的同时推理更快。开启use_point_crop。
数据
- 规模:全部真机人类遥操数据来自单一场景。Capabilities 部分每个任务采 10 段示范 × 10 次 rollout = 100 episodes,三个任务(Pick&Place / Pour / Wipe)共 300 episodes。Effectiveness 消融用的 Pick&Place 数据量刻意压小(1st-1 / 1st-2 / 3rd-1 / 3rd-2 四种设置,数字 1/2 表示示范条数,每条含 20 轮成功执行)来放大方法差异。物体位置在 10cm×20cm(消融)或 10cm×10cm(能力评测)区域随机化。
- 采集方式:Apple Vision Pro(AVP)遥操整个上半身。AVP 给出人的头 / 手 / 腕 3D 位姿;机械臂关节用 Relaxed IK 追踪人腕位置,腰 + 头关节用人头旋转解算。实时把机器人 LiDAR 视觉回传给 AVP 做沉浸式反馈。区别于常规双臂系统,额外启用了腰部 DoF 和主动视觉,扩大工作空间(尤其应对不同高度的桌面)。
- 观测组成:视觉(点云 + 图像)+ 本体感觉(关节位置);动作 = 目标关节位置。
- sim vs real:全真机、无仿真、无 co-training。纯真实世界模仿学习。
- 数据瓶颈(作者自述):AVP 遥操虽易搭建但人累,实验室内难规模化;这是全系统的主要瓶颈。全量数据 + 三任务 checkpoint 已开源在 Google Drive。
训练方法
- 目标:diffusion policy 去噪目标(
prediction_type = sample),模仿学习,无 RL、无预训练(3D 侧缺乏 R3M 那样的预训练视觉模型,作者明确点名这是短板)。 - 单阶段:直接在收集的人类示范上训练 iDP3,训完即可无标定 / 无分割地迁到新场景部署。
- 扩放视觉输入(三大改动之二):不用以往的稀疏点采样,而是把采样点数大幅提到 4096,以「捕获整个场景」的方式来对冲「egocentric 下无法用 foundation model 剔除背景/桌面点」的问题——简单但真机有效。
- 关键超参:训练 300 epochs,优化器 AdamW(lr 1e-4,betas [0.95, 0.999],weight_decay 1e-6)。diffusion 训练 50 步、DDIM 推理 10 步。batch size 64,EMA(power 0.75)。beta 调度
squaredcos_cap_v2,beta_start 1e-4 / beta_end 0.02。 - 三大改动合起来(对照 DP3):① 金字塔卷积编码器;② 扩大点云输入(1024→4096);③ 加长预测 horizon(4→16)。消融显示缺任一项,DP3 要么学不出来、要么精度大跌。
Infra(训练 / 推理工程)
- 训练硬件:单张 Nvidia RTX 4090(24 GB)本地机。GPU-hours 未披露;论文 Figure 7 指出因用 3D 表征、即便点数扩到 DP3 数倍,训练时间仍显著短于 2D 的 Diffusion Policy(示范越多优势越明显)。并行/精度未披露。
- 推理 / 部署:仅用 Fourier GR1 机身板载计算机的 CPU(无 GPU),实时 15 Hz 推理。这是「野外可部署」的关键卖点。
- 遥操延迟:LiDAR 占用板载带宽/CPU,遥操延迟约 0.5 秒;尝试加第二个(腕部)LiDAR 会引入极高延迟致采集不可行。
- 传感器:RealSense L515 固态 LiDAR 相机(机头 egocentric 安装)。作者强调换成 D435 这类深度较差的相机会明显拖垮 DP3;也试过 Livox Mid-360,分辨率/频率不足以支撑接触密集的实时操作。
- 机器人平台:Fourier GR1(全尺寸人形,整机 29 DoF),启用上半身 {头、腰、双臂、双手} 共 25 DoF,配两只 Inspire 灵巧手;下半身禁用改用可调高度小推车保持稳定并适配不同桌面高度。
评测 benchmark
全部为真机评测,累计 2253 次 rollout。主基准任务 Pick&Place(抓一个和手差不多大的轻质杯子移开,比平行夹爪更考验精度)。指标记「成功抓取数 / 总尝试数」:成功数反映精度,尝试数反映流畅度(抖动策略会「发呆」、尝试次数少)。
Table II — 有效性对比(Total 成功/尝试,>100 trials):
| 方法 | Total |
|---|---|
| DP(ResNet18) | 24/106 |
| DP3(原版,无改动) | 0/0(完全失败) |
| DP(冻结 R3M) | 62/138 |
| DP(微调 R3M,最强 2D 基线) | 99/147 |
| iDP3(用 DP3 Encoder) | 58/127 |
| iDP3 | 75/139 |
结论:iDP3 大幅超过原版 DP、DP3、冻结 R3M 版和「iDP3+DP3 编码器」;但微调 R3M 的 DP 在这些同分布设置里反而更强(作者归因于微调预训练模型天然优于从头训,而 3D 侧暂无对应预训练模型)。原版 DP3 直接搬到人形机器人上「完全学不出来」。
Table III — 消融(Total 成功/尝试):
| 视觉编码器 | Total | 点数 | Total | 预测 horizon | Total |
|---|---|---|---|---|---|
| Linear (DP3) | 58/127 | 1024 (DP3) | 56/129 | 4 (DP3) | 0/0 |
| Conv | 49/131 | 2048 | 65/128 | 8 | 33/88 |
| Linear+Pyramid | 66/134 | 4096 (iDP3) | 75/139 | 16 (iDP3) | 75/139 |
| Conv+Pyramid (iDP3) | 75/139 | 8192 | 72/132 | 32 | 55/130 |
要点:① 卷积+金字塔同时提升流畅度与精度;② 点数增加有帮助但会饱和(4096 后 8192 无进一步收益);③ 预测 horizon 是生死线——horizon=4 时 DP3 根本学不出(0/0),16 最佳。
Table IV — 泛化能力(DP = 微调 R3M 版 DP,成功/10):
| 设置 | 任务 | DP | iDP3 |
|---|---|---|---|
| 训练环境 | Pick&Place / Pour / Wipe | 9/10, 9/10, 10/10 | 9/10, 9/10, 10/10 |
| 新物体 | Pick&Place / Pour | 3/10, 1/10 | 9/10, 9/10 |
| 新视角 | Pick&Place / Pour | 2/10, 0/10 | 9/10, 9/10 |
| 新场景 | Pick&Place / Pour | 2/10, 1/10 | 9/10, 9/10 |
这是全文核心结论:同分布下两者相当,但一换新物体 / 新视角 / 新场景,2D 图像策略崩到 0–3/10,iDP3 稳在 9/10。egocentric 3D 表征在没有任何等变/不变性专门设计的情况下天然具备强视角不变性(Property 1)与物体、场景泛化(Property 2/3)。
创新点与影响
- 贡献:首个让全尺寸人形机器人仅用单一场景数据、靠 3D 模仿学习就在多样野外未见场景自主完成操作技能的真机系统;配套开源了完整学习/部署代码 + 遥操代码 + 数据 + checkpoint。
- 改变了什么:把「3D 视觉运动策略」从「需标定+分割的固定桌面臂」解放到「会动、无外参的移动/人形平台」,证明 egocentric 相机系点云是比 2D 图像更抗场景漂移的表征——为后续 3D VLA(如 PointVLA 复用其 Encoder)提供了可迁移组件。工程上还刷新了同类工作的真机评测规模(2253 rollout)。
- 作者自述局限:① AVP 遥操累人,数据难规模化(主瓶颈);② 深度传感器点云仍噪,限制 iDP3 上限(作者预期更准的 3D 观测能进一步提升,如仿真里所示);③ 拧螺丝等精细技能用 AVP 采集太慢,ALOHA 类系统此阶段更适合采灵巧操作;④ 回避了下半身——当前人形硬件平衡仍难,故用小推车替代全身控制。
原始链接
- arXiv abs: https://arxiv.org/abs/2410.10803
- arXiv PDF: https://arxiv.org/pdf/2410.10803
- 项目主页: https://humanoid-manipulation.github.io/
- 学习/部署代码: https://github.com/YanjieZe/Improved-3D-Diffusion-Policy
- 遥操代码: https://github.com/YanjieZe/Humanoid-Teleoperation
- YouTube: https://youtu.be/6H2MkMetmFk
一手源存档(sources/)
- idp3-improved-3d-diffusion-policy—project-page — 项目主页快照(含方法叙述、三重泛化演示说明、局限)
- idp3-improved-3d-diffusion-policy—github-readme — 学习/部署仓库 README 快照(硬件、安装、训练/部署命令、IROS 2025 收录)
- arXiv 2410.10803 全文(arXiv 原文 PDF,不入 git;正文数字与消融表均取自此原文 HTML/PDF)