Plan, Posture and Go: Towards Open-Vocabulary Text-to-Motion Generation¶
会议: ECCV 2024
arXiv: 2312.14828
代码: https://moonsliu.github.io/Pro-Motion
领域: 动作生成 / 多模态
关键词: 文本到动作生成, 开放词汇, LLM规划, 扩散模型, 人体运动
一句话总结¶
本文提出 PRO-Motion 分治框架,将文本到动作生成分解为三个阶段:LLM 驱动的动作规划(Plan)、基于脚本的姿态扩散生成(Posture)、以及全身平移旋转估计(Go),通过降低各阶段的复杂度实现了开放词汇的高质量动作生成。
研究背景与动机¶
领域现状:文本到动作生成(text-to-motion generation)旨在根据自然语言描述自动生成3D人体运动序列。现有方法通常在有限的文本-动作配对数据集(如 HumanML3D、KIT-ML)上训练,生成能力受限于训练集的文本分布。一些方法尝试用 CLIP 对齐动作空间和文本空间,但生成结果仍局限于简单的原地动作。
现有痛点:(1)训练数据中的文本描述覆盖面有限,模型无法理解训练集中未出现过的动作描述;(2)现有方法生成的动作大多是"原地"运动(in-place motions),缺乏全身平移和旋转,动态性不足;(3)文本到动作的直接映射过于复杂——自然语言的表达空间无穷,但可能的人体姿态空间是有规律的。
核心矛盾:直接从开放词汇的文本到完整动作的端到端生成太难——需要同时理解任意自然语言、生成合理的姿态序列、预测全局运动轨迹。现有数据和模型都无法支撑这种端到端映射的泛化。
本文目标 如何实现真正的开放词汇文本到动作生成,即模型能理解并生成训练集中未出现过的动作描述?
切入角度:作者的关键观察是:虽然自然语言描述的空间是无穷的("跳着舞高兴地原地转圈"),但底层的人体姿态可以用一种结构化的"脚本"模板来描述,而且这种模板覆盖所有可能的姿态。如果能用 LLM 将任意文本翻译成这种标准化的脚本序列,那么脚本到姿态的映射就变得简单很多,因为脚本空间远小于自然语言空间。
核心 idea:分治策略——用 LLM 将自然语言规划为结构化姿态脚本序列,再分别用扩散模型生成姿态和全身运动轨迹。
方法详解¶
整体框架¶
PRO-Motion 由三个模块组成,形成一个流水线:(1)Motion Planner:输入自然语言动作描述,利用 LLM 生成一系列关键姿态的结构化脚本描述;(2)Posture-Diffuser:将每个脚本描述转化为对应的 SMPL 姿态参数;(3)Go-Diffuser:在姿态序列基础上,预测运动帧之间的全身平移和旋转,生成完整的动态运动。使用 SMPL 模型作为人体表示,最终输出维度为 \(64 \times 135\) 的运动序列。
关键设计¶
-
Motion Planner(动作规划器):
- 功能:将开放词汇的自然语言动作描述转化为结构化的关键姿态脚本序列
- 核心思路:利用 LLM(如 GPT-4)作为动作规划器,设计精心的 prompt 引导 LLM 输出标准化的姿态描述脚本。prompt 中定义了五类基本的身体部位规则:弯曲程度、相对距离、相对位置、朝向、地面接触,并指定了适用的身体部位。LLM 根据这些规则将复杂的自然语言指令(如"自由地跳舞")分解为多个关键帧的结构化姿态描述。关键帧之间的中间姿态由后续扩散模型补全
- 设计动机:这是整个框架的核心创新。自然语言空间无穷大,但结构化脚本空间是可枚举的——因为它只涉及有限的身体部位和有限的关系类型。LLM 的强大语言理解能力天然适合做这种"翻译"。同时用户还可以手动编辑脚本实现精确控制
-
Posture-Diffuser(姿态扩散器):
- 功能:将单个姿态脚本描述转化为对应的 SMPL 姿态参数
- 核心思路:实现为一个条件扩散模型,以姿态脚本的文本特征为条件,通过去噪过程生成对应的 SMPL 姿态(不含全局位移)。使用 PoseScript 数据集进行训练,该数据集提供了大量自动生成的姿态描述-姿态配对。模型采用 3 层 Transformer,潜在维度 512,使用线性噪声调度训练 1000 个 epoch。同时使用预训练的文本-姿态检索模型的编码器提取文本和姿态的语义特征
- 设计动机:由于脚本描述遵循简单的文本模板(而非复杂的自然语言),Posture-Diffuser 的学习难度大幅降低。脚本的组合性质使得模型可以泛化到训练时未见过的姿态组合
-
Go-Diffuser(运动扩散器):
- 功能:为姿态序列添加全身平移和旋转,生成完整的动态运动
- 核心思路:实现为另一个扩散模型,以 Posture-Diffuser 生成的关键姿态序列为条件,预测每帧的全身平移(3维)和根关节旋转(6维,使用6D连续旋转表示)。同时将关键帧之间的中间帧补全到固定长度(64帧)。模型采用 8 层 Transformer、4 头注意力,使用余弦噪声调度,扩散步数 100。平移使用速度表示(相邻帧位移差)来归一化
- 设计动机:将原地姿态生成和全局运动估计分开,解决了现有方法只能生成原地动作的问题。Go-Diffuser 实际上学习的是"给定一系列姿态,如何合理地在空间中移动",这个任务本身比端到端生成简单得多
损失函数 / 训练策略¶
两个扩散模型都使用标准的 DDPM 框架进行训练。Posture-Diffuser 在 PoseScript-A 数据集(自动生成的姿态描述)上训练,batch size 512,学习率 1e-4。Go-Diffuser 在 AMASS 数据集上训练,batch size 64,学习率 1e-4,条件掩码概率 0.1(用于 classifier-free guidance)。训练时对帧数进行截取和补全,统一为 64 帧。
实验关键数据¶
主实验¶
| 方法 | R-Precision ↑ | FID ↓ | MM-Dist ↓ | 测试集 |
|---|---|---|---|---|
| MDM | 较低 | 较高 | 较高 | HumanML3D |
| T2M-GPT | 中等 | 中等 | 中等 | HumanML3D |
| MotionDiffuse | 中等 | 中等 | 中等 | HumanML3D |
| PRO-Motion (本文) | 最高 | 最低 | 最低 | HumanML3D |
| PRO-Motion (开放词汇) | 有效 | 合理 | 合理 | IDEA-400 |
消融实验¶
| 配置 | APE-Root ↓ | APE-Mean ↓ | 说明 |
|---|---|---|---|
| 仅 Posture-Diffuser | 无轨迹 | 仅原地 | 无Go-Diffuser,只有原地姿态 |
| w/o Motion Planner | 受限 | 受限 | 直接用自然语言条件化,泛化差 |
| Full PRO-Motion | 最低 | 最低 | 完整三模块 |
| 不同LLM | 变化小 | 变化小 | GPT-4最优但其他LLM也可用 |
关键发现¶
- Motion Planner 是实现开放词汇泛化的关键——没有它,模型退化为传统的闭集方法
- Go-Diffuser 解决了原地动作的问题,使生成结果更具动态性和真实感
- 用户可以直接编辑 Motion Planner 生成的脚本来精确控制特定姿态,实现精细的交互式编辑
- 在 IDEA-400 开放词汇测试集上,PRO-Motion 能够处理复杂的文本指令(如"感受到深深的快乐"),而其他方法完全无法生成合理动作
亮点与洞察¶
- LLM 作为规划者的巧妙应用:不直接让 LLM 生成动作,而是让它做"翻译"工作——将自然语言翻译成结构化脚本。这充分利用了 LLM 的语言理解能力,同时避免了让 LLM 处理连续数值的困难。这种 LLM-as-planner 的思路可以迁移到其他生成任务
- 分治降低复杂度:将一个困难的端到端问题分解为三个简单的子问题,每个子问题都有足够的数据和合适的模型来解决。这种系统设计思路在工程上非常实用
- 脚本的组合泛化:结构化脚本的组合性质天然支持泛化——即使训练时没见过"左手举过头顶同时右脚向后伸"的组合,但见过各个部位的独立描述就能组合生成
局限与展望¶
- 依赖 LLM(如 GPT-4)进行推理,增加了推理成本和 API 依赖
- 固定 64 帧的动作长度限制了长序列动作的生成能力
- SMPL 模型不包含手指运动表示,无法生成精细的手部动作
- Motion Planner 的质量高度依赖 prompt 设计,不同 LLM 可能需要不同的 prompt 调优
- 缺乏物理约束,生成的运动可能存在穿透或不符合物理规律的情况
相关工作与启发¶
- vs MDM (Motion Diffusion Model): MDM 直接从文本端到端生成动作,受限于训练集的文本分布。PRO-Motion 通过分治策略突破了这一限制
- vs MotionGPT: MotionGPT 用 LLM 直接预测动作 token,但仍受限于训练数据。PRO-Motion 让 LLM 只做规划而非生成,更符合 LLM 的能力边界
- vs TEMOS: TEMOS 在 SMPL 空间中工作但只估计局部运动。PRO-Motion 的 Go-Diffuser 额外估计全局轨迹,生成更动态的结果
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ 将 LLM 规划 + 结构化脚本 + 双扩散模型组合的分治思路非常巧妙和原创
- 实验充分度: ⭐⭐⭐⭐ 闭集和开放词汇实验、消融、用户控制示例丰富,但定量开放词汇评估较薄弱
- 写作质量: ⭐⭐⭐⭐ 故事讲得清晰流畅,分治动机阐述充分
- 价值: ⭐⭐⭐⭐ 开放词汇动作生成是重要方向,分治思路有广泛的借鉴意义
相关论文¶
- [ECCV 2024] DragAPart: Learning a Part-Level Motion Prior for Articulated Objects
- [CVPR 2025] ScaMo: Exploring the Scaling Law in Autoregressive Motion Generation Model
- [CVPR 2025] DreamText: High Fidelity Scene Text Synthesis
- [ECCV 2024] ScanTalk: 3D Talking Heads from Unregistered Scans
- [CVPR 2026] LottieGPT: Tokenizing Vector Animation for Autoregressive Generation