一句话定位

UT Austin RPL 实验室(联合 NVIDIA Research)提出的 Harmon:不训练任何新的生成模型,而是把预训练的人体运动扩散模型 PhysDiff 生成的人体动作,通过逆运动学重定向到 Fourier GR1 人形机器人,再用 GPT-4 / GPT-4V 的零样本常识推理去补全人体动作数据里缺失的手指与头部自由度、并迭代纠正重定向带来的语义偏差,人类评测中整体对齐得分达 81.2%,并在真实 GR1 机器人上完成了手语、语言指令动作等演示。CoRL 2024。

背景与定位

人形机器人要理解自然语言并做出类人动作,但语言-人形动作配对数据集几乎不存在,直接训练文本条件人形运动生成模型不可行。Harmon 走了一条”借用人体运动先验 + VLM 后编辑”的路线:先用在大规模人体动作数据集(HumanML3D、AMASS、ACCAD、KIT、CMU Mocap 等)上训练的文本到人体动作扩散模型 PhysDiff 生成 SMPL 参数化的人体动作,再重定向到人形机器人。但人体模型与人形机器人存在结构差异——人体动作数据通常不含手指、头部动作,且运动学约束差异会让重定向后的动作偏离原始语义——因此 Harmon 引入 GPT-4/GPT-4V 作为编辑器,在渲染视频上做迭代式的动作评判与调整。

与直接用 LLM/VLM 生成人形动作的路线(Yoshida et al. 2023,“From text to motion: grounding GPT-4 in a humanoid robot Alter3”)相比,Harmon 强调人体运动先验的必要性:论文的人类评测显示纯 VLM 生成动作基线在各项指标上得分最低。真机部署阶段,Harmon 沿用 Cheng et al. 2024 (Expressive Whole-Body Control) 的思路,把下肢与上肢控制解耦;身体形状对齐环节则借鉴 He et al. 2024 (H2O) 的 T-pose 关键点优化方法。

模型架构

Harmon 本质是一条三段式、无需训练的推理时 pipeline,而非端到端神经网络:

1. 文本到人体动作(外部预训练模型,不训练)

  • 使用 PhysDiff(Yuan et al., ICCV 2023)——一个带物理约束的扩散式人体动作生成模型——从文本描述 X 生成 SMPL 参数序列 P = {(θ₁,t₁),…,(θ_T,t_T)},θ_i 为关节旋转、t_i 为根节点平移;SMPL 体型参数 β∈ℝ¹⁰。

2. 人体→人形重定向(IK,一次性形状对齐 + 逐帧关节对齐)

  • 形状对齐:将 SMPL 与人形机器人置于同一 T-pose,选取 17 对对应关节,用 Adam 优化器最小化关节位置差以求解最优 β*(一次性标定,非逐动作)。
  • 逐帧关节对齐:用 pink(基于 Pinocchio 的 Python IK 求解器)以手腕、肘、肩、膝、踝为关键关节,逐时间步求解人形关节速度以跟踪 SMPL 关键点目标位置,得到重定向关节序列 Q_r。

3. VLM 编辑(GPT-4 / GPT-4V,零样本 prompt,无微调)

  • 动作描述分解:GPT-4 把原始文本描述拆成 head_motion / hand_motion / body_motion 三个 JSON 字段(附录给出完整 prompt 与示例)。
  • 手指动作生成:从渲染视频等间隔采 4 帧,连同手指动作描述输入 GPT-4,输出每个区间的手指关节配置 q_i^f∈ℝ^(n_f),n_f=12(左右手各 5 指 + 拇指旋转方向,共 12 维);论文测试增加到 9 帧反而降低效果(见评测消融),故固定用 4 帧。
  • 头部动作生成:GPT-4 直接根据头部动作描述、总帧数、FPS(系统 prompt 中固定标注运动为 24 FPS)输出关键帧上的 3 维颈部关节配置 q_i^h∈ℝ³(pitch∈[-20,20]、yaw∈[-70,70]、roll∈[-20,20]),关键帧间做插值得到平滑头部运动序列 Q_h;关键帧位置由 GPT-4 自主决定。
  • 迭代动作调整(judgment agent + adjustment agent):judgment agent(GPT-4V)看 4 帧渲染图 + 文本描述,生成动作描述 caption、判断是否对齐、给出改进建议;adjustment agent 看同样 4 帧 + 建议,从一组预定义控制原语中组合输出左右手腕的调整指令。控制原语包括方向类(move_up/down/left/right/forward/backward,位移量 10-20cm)与身体部位类(move_toward_head/chest/hip,位移 15cm)。只编辑上半身(手腕通过 IK),因为下半身在真机上由独立控制器接管;调整循环最多执行 2 轮,若 judgment agent 判定当前控制原语无法改善则提前跳过编辑。
  • 最终把编辑后的躯干序列 Q_b(或未编辑时的 Q_r)与手指序列 Q_f、头部序列 Q_h 拼接成完整关节配置序列 Q*。

动作解耦执行:真机上不直接执行 Q*,而是把下肢简化为基于零力矩点(ZMP)的行走指令控制器(从骨盆轨迹投影地面提取),上肢用关节位置控制直接跟踪 Q* 的上半身部分。

数据

  • Harmon 本身不训练任何模型,因此没有”训练数据”这一层,只有两类数据:(1) PhysDiff 预训练用到的人体动作数据集(论文引用 HumanML3D、AMASS、ACCAD、KIT Whole-Body Motion Database、CMU Mocap 等 5 个来源,均为已有公开数据集,Harmon 未做额外收集或再训练);(2) 评测用的文本测试集。
  • 评测测试集规模约 50 条语言描述:第一部分从 HumanML3D 测试集中随机抽取(偏重躯干动作、不含头部/手指动作);第二部分用 GPT-4 生成含头部与手指动作的整体动作描述,专门测试全身表现力。
  • 人类评测规模:12 名参与者,对不同方法产出的结果共给出 1728 条评估(针对手指/头部动作、手臂动作、整体身体协调三个维度分别打分)。
  • 附录 B 的补充消融研究使用原测试集的一个子集,让参与者对多个方法变体做多选偏好评估。
  • 无 sim-to-real 数据收集或 co-training 环节——真机部署直接复用仿真阶段生成的关节序列。

训练方法

  • 无端到端训练:Harmon 不训练新网络,整条 pipeline 由预训练的 PhysDiff(冻结)+ 零样本 prompt 的 GPT-4/GPT-4V(API 调用,无微调)+ 经典 IK 求解器组成。
  • 唯一的”优化”环节是形状对齐:用 Adam 优化器最小化 17 对关键关节在 T-pose 下的位置误差以求解 SMPL 体型参数 β*,这是每个机器人本体只需做一次的标定步骤,不是逐样本训练。
  • 迭代动作调整本质是一个基于 VLM 反馈的推理时闭环(judgment → adjust → render → re-judge),最多 2 轮,而非梯度更新。
  • 真机执行阶段采用开环关节位置控制(上肢)+ ZMP 反馈控制(下肢行走),两者解耦独立运行,不做联合训练或强化学习微调。

Infra(训练 / 推理工程)

  • 训练算力:不适用——论文未训练任何新模型,PhysDiff 为外部预训练模型直接复用,GPT-4/GPT-4V 通过 API 调用,无 GPU 训练开销可披露。
  • 推理管线:每条动作生成需要多次 VLM API 调用——1 次文本分解 + 1 次手指动作生成 + 1 次头部动作生成 + 最多 2 轮(judgment + adjustment)迭代调整;每次 VLM 调用输入固定 4 帧渲染图像。
  • 真机控制:上肢关节位置控制直接跟踪生成的关节序列;下肢用 ZMP-based 控制器执行由骨盆轨迹提取的行走指令;论文未披露具体控制频率(Hz)、延迟或端到端推理耗时数字。
  • 机器人平台:Fourier GR1 人形机器人,论文使用了两个外观版本 GR1-T1(黑色)与 GR1-T2(银色)做真机演示。
  • 精度、并行策略:未披露(不适用于此推理时 pipeline)。

评测 benchmark

人类评测总体对齐(12 名参与者,1728 条评估;每个方面——手指/头部、手臂、整体协调——各计 1 分,汇总后归一化):

  • Harmon 整体归一化得分 81.2%,显著优于三个基线。
  • 论文摘要/引言中同时提到 Harmon “在 86.7% 的测试案例中被人类评估者偏好”。

对比基线(消融各设计要素的贡献):

  • VLM-based Motion Generation(仿照 Yoshida et al. 2023):去掉人体动作先验,从静态 SMPL T-pose 直接用 VLM 编辑生成上半身动作;下半身沿用 Harmon 的结果做公平对比——该基线在几乎所有身体部位得分最低,说明纯 VLM 直接生成动作难以产出自然复杂动作。
  • Human Motion Retargeting:仅用重定向后的人体动作作为躯干动作(加上 Harmon 生成的手指/头部动作)——手臂动作得分低于 Harmon,说明 VLM 迭代调整对手臂-文本对齐有实质提升。
  • Harmon w/o Head or Finger:头部/手指关节置零的消融版本——对应维度得分下降(但非零,因部分测试描述本身不涉及手指动作)。

附录 B 补充消融(子集测试,多选偏好,得分为参与者选择率):

方法得分 (%)相对 Harmon
Harmon53.3100%
Collision Mesh(喂碰撞网格渲染而非视觉网格给 VLM)37.770.8%
Increased Frame Number(4→9 帧)28.854.2%
Gemini(VLM 换成 Gemini-1.5 Pro,MMMU 62.2% vs GPT-4o 69.1%)37.770.8%
Flexible Motion Editing Primitives(VLM 自选原语类型+连续参数,如位移量精确到 0.12m)55.6104.3%
Refinement Order(先做躯干微调,再加头部/手指)46.787.6%

增加采样帧数反而显著降低效果(54.2%),换用 Gemini-1.5 Pro 也明显弱于 GPT-4o(70.8%);灵活控制原语(VLM 自行给出连续位移参数而非固定原语集合)略优于原版 Harmon(104.3%)。

真机部署:在 Fourier GR1(GR1-T1/T2)上演示了静止站立动作与需要移动的动作,包括手语动作序列(GPT-4 分段生成逐段动作描述并拼接)与直接的语言指令动作;论文未报告真机上的量化成功率,仅提供定性视频演示(项目主页)。

创新点与影响

  • 提出用人体运动生成先验(PhysDiff)+ VLM 零样本常识推理编辑的组合式(无需训练)pipeline 来解决人形机器人语言-动作配对数据缺失的问题,避免了直接训练文本到人形动作模型的数据瓶颈。
  • 设计了一套面向 VLM 编辑的中间接口——手腕方向/身体部位控制原语——把非直观的关节空间编辑转化为 VLM 可直接推理的语义化操作,是让 VLM 有效编辑机器人动作的关键设计。
  • 用 VLM 补全人体动作数据中完全缺失的自由度(手指、头颈),并通过判断-调整闭环纠正重定向导致的语义偏移,在人类评测中归一化对齐得分达到 81.2%,显著超过直接 VLM 生成与纯重定向两类基线。
  • 作者自陈局限(Conclusion):(1) 迭代动作调整依赖固定的直观控制原语集合,当生成的人体动作与文本描述严重偏离时(尤其是高频动作,如连续多次拍手)难以修正;(2) 真机执行时把下肢与上肢控制强行解耦,导致部分生成动作可能使机器人失衡或自碰撞;作者提出未来方向是让 VLM 生成自由形式的控制原语,并引入基于强化学习的全身控制以提升真机执行的鲁棒性。

原始链接

一手源存档(sources/)