论文:EgoHumanoid‑V2: Human‑to‑Humanoid Transfer of Coordinated Whole‑Body Skills for Loco‑Manipulation,作者来自 OpenDriveLab/HKU、阿里巴巴等,2026.09

一、它要解决什么问题

V1(Shi et al., RSS 2026)用的是解耦控制:上半身靠 IK 跟手臂目标,下半身单独负责行走和平衡。V1 的重点是让 loco‑manipulation 能泛化到更多场景。V2 想更进一步:让机器人从人类第一视角示范里直接学会全身协调技能,比如弯腰配合伸手、单脚抬起踢抽屉同时保持平衡。

要做到这点,就必须换成全身跟踪控制器(这里用的是 SONIC),由它根据全身参考统一输出关节命令。这样做带来两个矛盾:

  1. 直接跟踪人类参考,末端误差很大。 只用初始化 H 时,平均误差为 11.2 cm / 21.2°,真机得分只有 21.25%。
  2. 用在线 IK 修正末端会破坏平衡。 原因是 IK 覆盖了控制器协调输出的一部分。附录 D 测了 3 种在线 IK 组合,60 次仿真全部不稳定,抽屉任务 15/15 在初始化阶段就摔倒。

所以核心问题是:在不破坏全身协调的前提下,提高末端交互精度。 V2 的回答是:把修正放到离线阶段,并且在 SONIC 的 motion token 空间里做。

二、整体流程

如图所示EgoHumanoid‑V2:

  • 人类采集 (GoPro + PICO 全身/手部追踪, 50Hz)
  • │
  • ├── 动作对齐 (offline, coarse-to-fine)
  • │ H: 人体运动经 SONIC 仿真 rollout → 初始轨迹 b(29-D) + token
  • │ K: 约束离线 IK 修正参考几何 → 用 SONIC 编码器 E_r 编成 token z⁰
  • │ D: 基于 rollout 反馈 + MLP 响应模型,迭代优化 token
  • │ D_s: 历史候选筛选 + 稳定性验证
  • │
  • ├── 视觉对齐
  • │ SAM2 分割前臂/追踪器 → DiffuEraser 补全 → 渲染 G1 机械臂合成
  • │ + 训练时图像增强
  • │
  • └── π0.5 VLA 后训练(每任务一个策略,无目标任务机器人数据)

统一的观测与动作接口(式 1)

  • 观测:o = (Ĩ, q, ℓ),即对齐后的图像、43 维 G1 状态、语言指令。
  • 动作:a = (z, hᴸ, hᴿ),其中 z ∈ ℝ⁶⁴ 是 SONIC motion token,hᴸ/ᴿ ∈ ℝ⁶ 是 Revo2 灵巧手命令,合计 76 维。
  • 训练时用到的机器人状态 q 来自控制器的仿真 rollout,不是人体状态。所以训练和部署时策略看到的都是机器人状态空间。
  • 4 个任务共用同一个 SONIC checkpoint,不做任何任务相关的微调。

关键设计:VLA 不直接输出关节角,而是输出全身跟踪器的 latent token。 全身协调交给 SONIC 解码器负责,VLA 只需要学"做什么动作"。

三、动作对齐(核心贡献)

如图所示用于人类演示捕捉及人形机器人部署的硬件:

如图所示视觉和动作对齐的流水线:

0. 目标构造

  • 所有点都转到以骨盆为中心、只随 yaw 旋转的坐标系(式 5)。z 轴始终竖直,不随身体倾斜。
  • 手部目标取人类手掌位姿。高度按人和机器人的骨盆高度差逐帧平移:y = p_z^H + h^{R,0} − h^H,用来补偿身高差异。
  • 足部目标用踝关节和脚部关键点的中点近似鞋底中心,并用中位数估计的地面高度做校正。
  • 目标在整个优化过程中保持不变。

1. H:运动初始化

把人体运动直接送进 SONIC 在仿真里跑一遍,记录得到的关节轨迹和 token。文中还对比了 GMR 重定向和 HuMI 式全身 IK(表 2)。三者末端误差相近,但 SONIC rollout 的运动质量最好:骨盆下沉、倾斜、关节跳变、多余 yaw 都最小,所以选它做初始化。

2. K:运动学参考修正(粗阶段)

  • 对初始参考做有约束的离线 IK,减小末端误差,同时限制偏离原轨迹的幅度并保持时间连续。
  • 手部任务只动手臂和腰,足部任务只动腿,以原始运动为锚点。
  • 修正后的参考经 SONIC 机器人运动编码器得到 z⁰ = E_r(b^ref)。

作用:一轮就去掉大部分几何误差,从 11.21 cm 降到 4.45 cm。但这只是运动学上的修正,没有考虑控制器实际执行时的偏差。

3. D:动力学感知精修(细阶段,最有意思的部分)

本质上是一种以学习到的局部响应模型为代理的迭代学习控制(ILC)。

第 k 轮流程:

  1. 在仿真里执行 zᵏ,得到观测历史 sᵏ 和末端残差 rᵏ(目标位姿减去实际执行位姿)。
  2. 固定 rollout 上下文,用 SONIC 解码器算出候选 token 带来的关节命令变化:
    Δu(z) = D_c(z, sᵏ) − D_c(zᵏ, sᵏ)
  3. 用运动学雅可比 Jᵏ 把它映射成运动学末端变化,再交给 MLP 响应模型,预测实际执行时的末端变化:
    Δê(z) = R_ψ(Jᵏ Δu(z))
  4. 在 zᵏ 的邻域 N(zᵏ) 内优化 token,让预测的执行变化正好抵消残差(式 6):
    z^{k+1} = argmin ‖Δê(z) − rᵏ‖²_Q + L_reg

关键点:

  • 梯度只穿过冻结的 SONIC 解码器和 MLP,不穿过仿真器。 仿真器只用来每轮重新 rollout、给出新的残差和上下文,类似闭环 shooting。
  • 正则项包括:关节命令惩罚 ‖Δu‖²_W、token 变化惩罚、时间平滑项,以及 IK 修正先验。
  • 关节保持权重按任务区分。手部任务是腿/腰/臂 = (20, 20, 0.1),即尽量不动腿;足部任务是 (0.1, 20, 20)。
  • 每轮 400 步 Adam。默认调度是 1 轮 K、7 轮常规 D、1 轮保守 D。

MLP 响应模型 R_ψ(附录 A.3):

  • 训练数据来自 BONES‑SEED 动作库,对 token 做扰动后成对 rollout,共 34.5 万对,训练和验证按采集日期划分。
  • 输入:两手掌加两脚底的位置与旋转变化(24 维);当前值加 5 条不同时间常数的指数平滑历史(144 维),用来表达执行响应的时间滞后;另有 93 维机器人状态和 64 维 token。
  • 结构:冻结的线性响应,加一个小 MLP 残差(两层,宽 64,SiLU)。减去零输入时的输出,保证输入为零时响应也为零。
  • 实际用法:手部任务里学习响应的混合权重只有 0.15,其余用单位响应(即假设实际执行变化等于运动学变化)。足部任务则完全使用学习响应。

4. D_s:候选筛选与验证

  • 所有轮次的候选都会记录,包括 H 和 H+K 本身。
  • 硬阈值:位置误差 5 cm、姿态误差 15°、骨盆下沉 0.10 m、基座倾斜 25°。
  • 按"最大归一化误差"排序后,依次独立重放验证。都不通过就丢弃整条 episode。
  • 这一步保证了训练数据在动力学上可执行且稳定。仅看末端误差低还不够:附录 D 中在线 IK 变体 B 的误差只有 1.5–2.4 cm,但目测明显不稳。

为什么"先 K 后 D"(图 6、表 8)

配置位置 (cm)姿态 (°)耗时 (s/帧)
K¹(1 轮 K)4.8616.460.65
K⁸(8 轮 K)4.7716.512.55
D⁸(只做 8 轮 D)8.4016.401.27
D¹⁶(只做 16 轮 D)7.1612.362.11
K¹D⁸(本文默认)3.978.081.49
  • K 负责大幅几何纠偏,但重复做没有收益:误差卡在约 4.8 cm,因为它看不到执行偏差。
  • D 负责执行层面的精修,对姿态误差改善尤其明显。但从很差的初值出发收敛很慢。
  • 两者互补,所以采用 1 轮 K 加多轮 D。

四、视觉对齐

  1. 采集时戴蓝手套,方便分割。
  2. 用 SAM2 分割人的前臂和腕部 PICO 追踪器,再用 DiffuEraser 做视频补全。
  3. 根据对齐后的关节位置渲染 G1 机械臂,调整平移、旋转和尺度,使其与人的手腕对齐后合成到画面里。
  4. 训练时加随机裁剪、小角度旋转和颜色扰动,以应对人和机器人运动幅度不同造成的视角差。部署时直接使用机器人相机图像。

消融结果(表 4):基线 33.33%,只加增强 47.50%,只加渲染(3 个手部任务)38.89%,两者都加 48.33%。不过收益因任务而异:Close Laptop 只加增强得 61.67%,反而高于两者都加的 53.33%。

五、主要结果

指标数值
200 条人类示范,4 任务平均得分51.67%(38.33–61.67%)
示范从 25 条增加到 200 条38.33% → 51.67%
动作对齐消融:H → H+K → H+K+D_s21.25% → 47.08% → 51.67%
末端误差:H → H+K → H+K+D_s11.21/21.22 → 4.45/13.77 → 3.41 cm/6.71°
50 任务仿真扩展实验17.03 → 5.22 → 3.83 cm
每条示范采集人力比遥操作低 76.36%(140.85 → 33.30 人·秒)
与机器人数据对比200 条人类数据 53.33% / 53.33%,50 条遥操作数据 63.33% / 56.67%

六、评价

亮点

  1. 在跟踪器的 latent 空间里修正动作。 这是全文最核心的想法。修正量经过 SONIC 解码器后天然是"协调的"全身命令,避免了 IK 覆盖部分关节导致失衡。
  2. 把在线修正改为离线优化。 离线可以多轮 rollout、跨轮次挑选候选、设置稳定性门槛。这些在实时控制里都做不到,而且部署端完全不变。
  3. 梯度不穿过仿真器。 用"冻结解码器 + 雅可比 + 学习响应"作为可微代理,仿真只负责提供闭环反馈,工程上很务实。
  4. 负面结果做得扎实。 附录 D 系统证明了在线 IK 在全身跟踪器下不可行,给"为什么要离线"提供了直接证据。

局限与疑点

  1. 对齐目标纯粹是运动学的。 仿真 rollout 里没有任务物体(附录图中写明 “Task objects are omitted”)。对齐的是"手掌到达人类手掌的位置",而不是接触力或交互动力学。对于需要持续用力的任务(比如拉冰箱门,得分最低 38.33%),这可能是瓶颈。
  2. MLP 响应模型的贡献偏小。 3 个手部任务只改善了 0.13–0.17 cm,混合权重也只有 0.15。真正明显的收益集中在 Close Drawer(9.18 → 5.80 cm),说明学习响应主要在需要平衡调整的足部任务上有价值。
  3. 人类数据效率仍明显低于机器人数据。 大约需要 4 倍数量的示范才接近机器人数据的效果。"人力成本降低 76%"的结论是按单条示范计算的。按达到同等效果计算,节省会少很多(文中给出的是 26–31%)。
  4. 评估规模较小。 每个任务一个专用策略,每个条件 20 次试验,没有误差棒,且不涉及跨任务泛化。表 4 中部分条件之间的差异可能落在噪声范围内。
  5. 处理成本较高。 约 1.49 s/帧,作者也承认吞吐量受限。文中没有报告 D_s 验证阶段的丢弃率,这会影响数据的真实可用比例。
  6. 对 SONIC 强依赖。 整套方法建立在 SONIC 的编码器、解码器和 token 接口上。换用别的全身跟踪器需要重新训练响应模型,通用性有待验证。

总结

EgoHumanoid‑V2 的本质是:把"人类运动到机器人动作"的映射,变成在冻结全身跟踪器 token 空间里的一次离线迭代学习控制。 它先用 IK 修正参考几何,再用一个可微的执行响应代理逐轮抵消执行残差,最后用稳定性门槛筛选出可执行的轨迹,作为 VLA 的监督数据。真正有效的主要是 K 阶段(得分从 21% 提升到 47%),D 阶段加历史筛选则把姿态精度和最终得分进一步推高。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐