一句话定位
OmniH2O 把 h2o-human2humanoid 的全身遥操作从”要动捕、只能做简单移动”升级为”仅用 VR 头显 3 点稀疏输入即可驱动全尺寸人形机器人做灵巧全身操作”,并把 kinematic pose(运动学位姿)确立为一个通用控制接口,同一个 50 Hz 的 sim-to-real 策略可被 VR、RGB 摄像头、语言(文本→动作生成)、GPT-4o、以及从遥操作数据学出的扩散策略共同驱动;同时开源了首个全尺寸人形全身 loco-manipulation 数据集 OmniH2O-6。
背景与定位
paradigm:RL 全身运动跟踪 + 教师-学生蒸馏的 sim-to-real 人形遥操作与自主学习。
- 前作 h2o-human2humanoid(IROS 2024)用第三人称 RGB 相机估计人体关键点做全身遥操作,但依赖全局线速度估计、测试时需要动捕(MoCap),只能做简单移动,缺乏灵巧操作精度。OmniH2O 的核心改进:用 25 步历史观测隐式恢复速度信息、彻底去掉全局线速度输入,从而摆脱动捕、可在室内外自由部署。
- 与只做下肢 locomotion 或上下身解耦控制的工作不同(exbody 等表达性全身控制走 velocity-tracking 目标),OmniH2O 学一个端到端全身策略协调上下身:下肢作为上肢精密操作的稳定支撑。
- 与图形学社区的 VR 稀疏输入全身动作生成(QuestSim 等)不同,OmniH2O 控的是真实机器人并完成真实操作任务。
- 数据侧对标 Open X-Embodiment:作者声称是首个发布全尺寸人形全身 loco-manipulation 数据集(此前机器人数据集多为固定底座机械臂)。相关的人形数据/模仿工作可参照 humanplus、mobile-aloha,上层扩散策略与 idp3-improved-3d-diffusion-policy 同源。
- 发表于 CoRL 2024,作者 Tairan He、Zhengyi Luo、Xialin He 等(CMU + 上海交大)。
模型架构
整体是”低层全身运动跟踪策略 + 上层运动目标生成器”的分层系统,kinematic pose 作为二者之间的中间表示(intermediate representation)。
低层策略(policy backbone):
- 目标条件 RL(goal-conditioned MDP),PPO 训练,输出 target joint angles,由 **PD 控制器(200 Hz)**驱动电机;策略本身运行在 50 Hz。
- backbone 为 MLP [512, 256, 128](消融显示 MLP 优于 LSTM/GRU)。
- 机器人本体:Unitree H1(19 自由度全身);全身策略只输出这 19 个关节的目标角度。手指与手腕不经策略推理,由 Vision Pro 手部位姿经逆运动学(IK)直接映射到 Inspire 灵巧手与 Damiao DM-J4310-2EC 手腕电机。
- ACTION-conditioning / 记忆:学生策略本体感觉含 25 步历史(DoF 位置、DoF 速度、root 角速度、root 重力方向、上一动作),历史用于隐式估计全局线速度、增强鲁棒性。
教师-学生两套观测(config numbers):
- 教师(privileged)观测 913 维 = 特权本体感觉 361 维 + 特权运动目标 552 维;privileged obs 990 维。观测含仿真里可得而真机不可得的信息(每个 body link 的全局线/角速度、参考位姿与当前状态的逐帧差)。
- 学生(sim-to-real 可部署)观测 1665 维 = 26 步 × 63 维本体感觉 = 1638 维 + 运动目标 27 维;privileged obs 1742 维。
- 运动目标只用 3 点(头 + 双手),对齐 VR 头显能提供的稀疏输入;可扩展到 8/22 点但作者选 3 点以匹配消费级设备。
上层运动目标生成(多接口,同一低层策略):
- VR(Apple Vision Pro)实时遥操作;
- RGB 相机(HybrIK 姿态估计);
- 语言指令:接文本→动作生成模型 MDM(Human Motion Diffusion Model),“raise your right hand” → 运动目标;
- GPT-4o:头戴相机第一视角图像 → 从若干运动 primitive 中选择(因 GPT-4o 响应延迟大,用 primitive 而非直接生成目标);
- 扩散策略 LfD:从 OmniH2O-6 遥操作数据学 πLfD,输出 ϕ 帧未来运动目标(含灵巧手命令),再由 πOmniH2O 作为低层策略执行。LfD 用 Diffusion Policy(DDPM/DDIM)与 ResNet BC 对比。
数据
训练用运动数据(低层策略):
- 源自 AMASS 数据集,沿用 H2O 的 retargeting 流程重定向到 H1 本体(三步:写 H1 前向运动学 → 拟合匹配 H1 的 SMPL 形状 → 按对应关键点重定向)。
- 原始 约 15,886 条动作,经**可行性过滤(feasibility filter)**去掉人形不可行的动作。
- 关键的数据分布偏置:为增强稳定站立/下蹲能力,对每条序列生成”stable”变体——固定 root 位置与下肢为站立或下蹲姿态。最终仿真评测用增广后 14k 序列。作者强调 motion data distribution(偏向站立/下蹲)是获得可做操作的稳定策略的三大关键要素之一。
OmniH2O-6 遥操作数据集(开源,用于自主策略学习):
- 6 个任务:Catch-Release、Squat、Rock-Paper-Scissors、Hammer-Catch、Boxing、Basket-Pick-Place,全部 VR 遥操作采集。
- 每帧配对:头戴相机 RGBD 图像 + H1 头/双手相对 root 的运动目标 + 电机 joint targets,录制于 30 Hz。
- 时长:简单任务(Catch-Release/Squat/RPS)各约 5 分钟,Hammer-Catch/Basket-Pick-Place 各约 10 分钟,总计约 40 分钟真机遥操作演示。
- 逐任务帧数:Catch-Release 13,234;Squat 8,535;Hammer-Catch 12,759;Rock-Paper-Scissors 9,380;Boxing 11,118;Basket-Pick-Place 18,436。
- sim-vs-real:低层策略 100% 仿真训练(Isaac Gym)后 sim-to-real;上层 LfD 数据 100% 真机采集。
训练方法
两阶段 sim-to-real(teacher-student):
- Phase 1 — RL 教师:用特权信息训练 privileged motion imitator πprivileged,PPO 最大化累计折扣奖励。
- Phase 2 — DAgger 蒸馏学生:按 DAgger 框架 rollout 学生策略得轨迹,用参考位姿与仿真状态算特权状态查询教师得参考动作,监督学习更新学生(loss = ‖πstudent − πteacher‖)。作者发现:直接用 RL 训学生(尤其带长历史)会因输入复杂度指数增长而学不出连贯策略,DAgger 监督学习是有效利用历史输入的关键。
奖励设计(Table 15,含 penalty / regularization / task 三类,均以 50 Hz 计):
- 关键创新奖励 max feet height for each step = +1000(配合课程学习,让 RL 学会”何时站立、何时大步走”,取代会导致原地踏步的 feet-air-time/feet-height 奖励);feet air time 亦 +1000。
- Task reward:body position +30、body position (VR points) +50、body rotation +20、DoF position +32、DoF velocity +16、body velocity/角速度各 +8。
- Penalty:termination −250、DoF position limits −125、In-the-air −200、orientation −200、feet orientation −62.5、slippage −37.5、DoF velocity limits −50、lower-body action rate −3 等。
- 奖励课程(penalty curriculum):正则/惩罚项随课程逐步引入(penalty_scale=0.5),否则一上来重罚会破坏跟踪学习。
关键超参(Table 18):batch size 64、γ 0.99、lr 0.001、PPO clip 0.2、entropy coef 0.005、max grad norm 0.2、value loss coef 1、num learning epochs 5、init noise std RL 1.0 / DAgger 0.001、MLP [512,256,128]。
LfD 扩散策略超参(Table 19):batch 32、observation horizon 1、action horizon 8、prediction horizon 16、diffusion iterations 100、image output size 32、image patch 16、weight decay 1e-5。
Infra(训练 / 推理工程)
训练:
- 仿真器 Isaac Gym preview 4,4096 个并行环境(
num_envs=4096),单卡cuda:0起(README 命令),基于 legged_gym + rsl_rl(ETH/NVIDIA 框架改)。 - 具体训练 GPU 型号 / GPU-hours / 并行策略 / 精度:未披露。
推理 / 真机部署(两套可互换方案,性能相近):
- 方案一(全板载):H1 背部两台 16GB Jetson Orin NX。第一台接腰部 ZED(mini)相机做 VIO 定位(相机 60 Hz),并经 Wi-Fi 连 Apple Vision Pro 持续接收运动目标;第二台为主控,接收运动目标 → 跑控制策略 → 输出各电机命令。两台经以太网 + ROS 共享。
- 方案二:一台笔记本(13th Gen i9-13900HX + NVIDIA RTX 4090,32GB RAM)统一承载 ZED、控制策略、Vision Pro 通信(ROS)。
- 控制频率:策略 50 Hz,PD 控制器 200 Hz;手指/手腕由 Vision Pro 数据直接 IK 映射(不需推理)。
- 端到端延迟仅 20 ms。
评测 benchmark
仿真运动跟踪(Table 1,增广 AMASS 14k 序列;Succ = 任意时刻与参考偏差 <0.5m 才算成功):
| 方法 | Sim2Real | Succ↑ | 全局 MPJPE↓(mm) | root-rel MPJPE↓(mm) | E_acc↓ | E_vel↓ |
|---|---|---|---|---|---|---|
| Privileged 教师 | ✗ | 94.77% | 126.51 | 70.68 | 3.57 | 6.20 |
| H2O(前作) | ✓ | 87.52% | 148.13 | 81.06 | 5.12 | 7.89 |
| OmniH2O | ✓ | 94.10% | 141.11 | 77.82 | 3.70 | 6.54 |
学生策略成功率(94.10%)逼近特权教师(94.77%),且大幅超过可部署前作 H2O(87.52%)。关键消融:
- DAgger vs RL:去掉 DAgger 且带历史时成功率崩到 47.11%(RL 无法处理长历史输入);DAgger 让长历史可用。
- 历史步数:0/5/25/50 步中 25 步最优(兼顾性能与学习效率)。
- 架构:MLP(94.10%)> GRU(92.85%)> LSTM(91.03%)。
- 跟踪点:22 点 94.72% / 8 点 94.31% / 3 点 94.10%——3 点仅微损精度却换来消费级设备可用性。
- 线速度:仿真里加不加显式线速度差别不大,但真机部署会出大问题,故去掉。
真机运动跟踪(Table 2,20 条站立动作;无 Succ,报误差 mm):
| 方法 | 全局 MPJPE↓ | root-rel MPJPE↓ | E_acc↓ | E_vel↓ |
|---|---|---|---|---|
| H2O | 87.33 | 53.32 | 6.03 | 5.87 |
| OmniH2O | 47.94 | 41.87 | 1.84 | 2.20 |
真机上 OmniH2O 全局 MPJPE 几乎减半(87.33→47.94)。带 VIO 线速度的变体因摔倒无法完成测试;带 MLP/GRU 神经速度估计器的变体也劣于无速度输入版本——印证”历史隐式估速”的设计。
自主 LfD(Table 3,4 任务 × 各 10 次运行取平均):
- 数据量:25% → 4/10、50% → 6.5/10、100% → 8/10。
- 序列观测/动作:单步 Si-O-Si-A 6.5/10、全序列 Se-O-Se-A 8.75/10、Si-O-Se-A 8/10——预测动作序列很关键。
- 算法:BC(ResNet) 1/10 ≪ DP-DDIM 7.75/10 ≈ DP-DDPM 8/10——扩散策略远胜 vanilla BC。
- 逐任务满分例:Squat 100% 数据 10/10;RPS DP-DDPM 10/10。
此外定性验证:语言(MDM)驱动、GPT-4o 自主拳击/打招呼、以及对人体拳打脚踢/草地-斜坡-碎石等户外地形的鲁棒性(同一策略)。
创新点与影响
- 贡献 1:一套可训出”支持全身灵巧 loco-manipulation”鲁棒控制策略的流程,识别出三大关键要素——运动数据分布(偏站立/下蹲)、奖励设计(max feet height + 课程)、状态空间与历史利用(25 步历史替代全局线速度)。
- 贡献 2:仿真 + 真机大规模运动跟踪实验验证其模仿能力显著超越前作 H2O,且用 3 点稀疏 VR 输入 + 无动捕实现真机灵巧全身操作。
- 贡献 3:首个全尺寸人形全身 loco-manipulation 数据集 OmniH2O-6,并在其上 benchmark 模仿学习(扩散策略 vs BC),展示从遥操作数据学自主全身技能。
- 把 kinematic pose 作为通用接口,一举打通 VR / RGB / 语言 / 前沿模型 / 模仿学习五种上层驱动,为可扩展人形数据采集与自主奠定路径。后续 CMU 系工作(如 hover 统一全身控制、exbody2)延续此思路。
作者自陈局限:
- 依赖机器人 root 里程计把遥操接口的位姿转到机器人坐标系;VIO 结果可能有噪声甚至不连续,导致运动目标偏移。
- 安全性:策略虽鲁棒,但对极端扰动或 OOD 运动目标(如运动目标大不连续)无保证或安全检查。
- 未来方向:仅用稀疏上身目标让人形上下楼梯;给 LfD 加更多传感器(LiDAR、腕部相机、触觉)与更好算法。
原始链接
- arXiv abs:https://arxiv.org/abs/2406.08858
- arXiv PDF:https://arxiv.org/pdf/2406.08858
- 项目页:https://omni.human2humanoid.com/
- 代码(含 H2O + OmniH2O):https://github.com/LeCAR-Lab/human2humanoid
- 数据集(CMU Box):https://cmu.box.com/s/kmayzq5ax2rxvwn97s0hzz0aq5vws9io
- 视频:https://youtu.be/ofgxZHv0GMk
- 前作 H2O:https://human2humanoid.com/ (arXiv 2403.04436,IROS 2024)
一手源存档(sources/)
- omnih2o—github-readme — GitHub README(human2humanoid,含硬件清单与全部训练命令)快照
- omnih2o—project-page — 项目主页快照
- arXiv 原文 PDF(2406.08858,不入 git)——全文与附录 A–M(硬件、奖励表、域随机化表、状态空间表、超参、GPT-4o prompt)以 arXiv 链接为准