论文状态:已完成

Plan, Posture and Go: Towards Open-World Text-to-Motion Generation

发表:2023/12/22
原文链接PDF 下载
价格:0.100000
价格:0.100000
已有 1 人读过
本分析由 AI 生成,可能不完全准确,请以原文为准。

TL;DR 精炼摘要

本文提出了PRO-Motion框架,通过运动规划器、姿态扩散器与行动扩散器三大模块,解决了传统文本到动作生成技术在开放世界场景中的泛化能力不足问题。该方法利用大语言模型生成描述关键姿态的脚本,从而实现从复杂自然语言描述生成多样化、逼真的三维动作。

摘要

Conventional text-to-motion generation methods are usually trained on limited text-motion pairs, making them hard to generalize to open-world scenarios. Some works use the CLIP model to align the motion space and the text space, aiming to enable motion generation from natural language motion descriptions. However, they are still constrained to generate limited and unrealistic in-place motions. To address these issues, we present a divide-and-conquer framework named PRO-Motion, which consists of three modules as motion planner, posture-diffuser and go-diffuser. The motion planner instructs Large Language Models (LLMs) to generate a sequence of scripts describing the key postures in the target motion. Differing from natural languages, the scripts can describe all possible postures following very simple text templates. This significantly reduces the complexity of posture-diffuser, which transforms a script to a posture, paving the way for open-world generation. Finally, go-diffuser, implemented as another diffusion model, estimates whole-body translations and rotations for all postures, resulting in realistic motions. Experimental results have shown the superiority of our method with other counterparts, and demonstrated its capability of generating diverse and realistic motions from complex open-world prompts such as "Experiencing a profound sense of joy". The project page is available at this https URL.

思维导图

论文精读

中文精读

1. 论文基本信息

1.1. 标题

Plan, Posture and Go: Towards Open-World Text-to-Motion Generation 中文释义:规划、姿态与行动:迈向开放世界文本到动作生成

这篇论文的核心主题是解决如何从任意自然语言文本(即“开放世界”文本)生成高质量、逼真的三维人体动作序列。标题中的“Plan, Posture and Go”精炼地概括了其提出的三步走技术框架。

1.2. 作者

Jinpeng Liu, Wenxun Dai, Chunyu Wang, Yiji Cheng, Yansong Tang, Xin Tong。 作者分别来自清华大学深圳国际研究生院和微软亚洲研究院(Microsoft Research Asia)。这两个机构都是计算机科学,特别是计算机图形学和人工智能领域的顶尖研究单位,拥有雄厚的研究实力。

1.3. 发表期刊/会议

该论文以预印本(Preprint)形式发布在 arXiv 上。arXiv 是一个广泛用于物理学、数学、计算机科学等领域的学术论文预印本发布平台,允许研究者在同行评审前快速分享他们的研究成果。虽然未经正式的同行评审,但 arXiv 上的高质量论文常常代表了相关领域的最新研究进展。

1.4. 发表年份

2023年12月22日。

1.5. 摘要

传统的文本到动作生成方法通常依赖于有限的文本-动作配对数据进行训练,这使得它们难以泛化到开放世界的场景中。一些工作尝试使用 CLIP 模型来对齐动作空间和文本空间,旨在实现从自然语言描述生成动作。然而,这些方法仍然受限于生成有限且不真实的“原地”动作。为了解决这些问题,我们提出了一个名为 PRO-Motion 的“分而治之”框架,该框架由三个模块组成:运动规划器(motion planner)、姿态扩散器(posture-diffuser)和行动扩散器(go-diffuser)。运动规划器利用大语言模型(LLMs)生成一个描述目标动作中关键姿态的脚本序列。与自然语言不同,这些脚本遵循非常简单的文本模板,却能描述所有可能的姿态。这极大地降低了姿态扩散器的复杂性,该扩散器负责将脚本转换为姿态,为开放世界的生成铺平了道路。最后,作为另一个扩散模型的行动扩散器,估计所有姿态的全身平移和旋转,从而产生逼真的动作。实验结果显示了我们的方法相对于其他方法的优越性,并证明了其能够从复杂的开放世界提示(如“体验到一种深刻的喜悦感”)生成多样化且逼真的动作。

1.6. 原文链接

2. 整体概括

2.1. 研究背景与动机

  • 核心问题: 当前的文本到三维人体动作(Text-to-Motion)生成技术严重依赖于特定的、标注好的文本-动作数据集。这导致模型只能生成在训练数据中见过的、或与之非常相似的动作。当面对训练集中从未出现过的、更复杂或更抽象的自然语言描述时(例如,描述情感或非常规动作),这些模型的效果会急剧下降,缺乏泛化能力。这就是所谓的“开放世界”挑战。

  • 现有挑战与空白 (Gap):

    1. 数据稀疏性: 高质量的、带有精确文本描述的三维动作捕捉数据集非常稀有且昂贵,这限制了监督学习方法的泛化能力。
    2. CLIP模型的局限性: 为了解决数据稀疏问题,一些研究(如 AvatarCLIP, OOHMG)尝试利用大规模预训练的视觉-语言模型 CLIP 来建立文本和动作之间的联系。然而,这种方法存在几个问题:
      • 模态差异: CLIP 的文本空间是基于自然语言图像描述训练的,与精确的动作描述之间存在语义鸿沟,导致对齐效果不佳。
      • 缺乏时序先验: CLIP 模型本身不包含时间序列信息,导致生成的一系列姿态可能缺乏正确的时序关系,甚至顺序颠倒,最终只能合成不真实的“原地”抖动式动作,而无法实现带位移的连贯动作。
  • 创新切入点: 论文提出了一种“分而治之” (divide-and-conquer) 的策略。它不直接将复杂的自然语言映射到复杂的动作序列,而是引入了一个中间步骤:利用大语言模型 (LLM) 的常识推理能力,先将开放世界的自然语言“规划”成一系列结构化的、简单的“姿态脚本”。这个姿态脚本序列描述了动作的关键帧。然后,再针对这些简单的脚本去生成对应的姿态,并最终合成完整的、带全局位移的动作。

2.2. 核心贡献/主要发现

  • 核心贡献:

    1. 提出了 PRO-Motion 框架: 这是一个创新的、包含三个模块(Plan, Posture, Go)的文本到动作生成框架。它将复杂的生成任务分解为三个更易于管理的子任务:
      • Plan (规划): 使用 LLM 作为运动规划器,将输入的自然语言提示分解为一系列结构化的关键姿态描述脚本。
      • Posture (姿态): 使用一个姿态扩散器 (Posture-Diffuser),将每个姿态脚本精确地转换为一个三维人体姿态。
      • Go (行动): 使用一个行动扩散器 (Go-Diffuser),根据关键姿态序列,自动推断并生成整个动作的全局平移和旋转,并完成姿态间的平滑过渡。
    2. 引入结构化姿态脚本: 创造了一种介于自然语言和机器可读参数之间的中间表示。这种脚本虽然语言模板简单,但通过组合可以表达几乎所有姿态,极大地降低了后续生成模型的学习难度。
    3. 双扩散模型设计: 采用两个专门的扩散模型分别处理姿态生成和全局运动生成,使得每个模型都能专注于特定任务,提高了生成质量和真实感。
  • 主要发现:

    1. 通过 PRO-Motion 框架,模型能够成功地从训练数据范围之外的、复杂的“开放世界”文本(如 "Experiencing a profound sense of joy")生成多样化、连贯且逼真的三维人体动作。
    2. 实验证明,该方法在多个评估指标上均优于现有的最先进的 (state-of-the-art) 方法,特别是在语义一致性和动作真实性方面。
    3. 该框架的 Go-Diffuser 模块能够有效地从一系列静态姿态中学习并预测出人体的全局位移(如前进、后退),解决了先前方法只能生成“原地”动作的局限性。

3. 预备知识与相关工作

3.1. 基础概念

3.1.1. 文本到动作生成 (Text-to-Motion Generation)

这是一项跨模态生成任务,目标是输入一段描述人体动作的自然语言文本,输出一个与之匹配的三维人体动作序列。这个序列通常由一系列三维姿态(poses)组成,每个姿态定义了人体骨骼在某一时刻的关节角度。完整的动作还包括人体重心在三维空间中的平移(translation)和旋转(rotation)。

3.1.2. 扩散模型 (Denoising Diffusion Probabilistic Models, DDPMs)

扩散模型是一类强大的生成模型,近年来在图像、音频和本作中的动作生成等领域取得了巨大成功。其核心思想分为两个过程:

  1. 前向过程 (Forward Process / Diffusion): 这是一个固定的过程。从一个真实的样本(如一张图片或一个动作帧)x0x_0 开始,在 TT 个时间步内,逐步、迭代地向其添加高斯噪声。当时间步 TT 足够大时,样本 xTx_T 会变得与纯粹的高斯噪声无法区分。
  2. 反向过程 (Reverse Process / Denoising): 这是模型需要学习的过程。从一个纯粹的噪声 xTx_T 开始,模型(通常是一个神经网络)学习预测并逐步去除每个时间步的噪声,直到恢复出原始的、清晰的样本 x^0\hat{x}_0。通过在反向过程中引入条件信息(如文本描述),扩散模型就可以实现可控的条件生成。

3.1.3. CLIP (Contrastive Language–Image Pre-training)

CLIP 是由 OpenAI 开发的一个大规模预训练模型。它通过在海量的(图像,文本)对上进行对比学习,学会了一个共享的嵌入空间(embedding space)。在这个空间里,语义上相似的图像和文本的特征向量在空间中的距离会很近。这使得 CLIP 能够理解图像和文本之间的关联,具备强大的零样本(zero-shot)分类和跨模态检索能力。在本文的相关工作中,一些方法试图利用 CLIP 的这种能力来对齐文本和人体姿态(通过将姿态渲染成图像),但效果有限。

3.1.4. 大语言模型 (Large Language Models, LLMs)

LLMs,如 GPT-3.5,是在海量文本数据上训练的超大规模神经网络模型。它们展现出了强大的自然语言理解、生成、推理和常识知识能力。本文创新地将 LLM 用作一个“规划器”,利用其常识来分解复杂的动作指令。

3.2. 前人工作

作者将相关工作分为三类:

  1. 传统的文本到动作生成:

    • 方法: 这类工作通常在配对的文本-动作数据集(如 HumanML3D)上训练生成模型,如 GANsVAEs 或扩散模型(如 MDM)。
    • 局限性: 它们严重依赖训练数据,当测试文本与训练文本差异较大时,生成效果差,无法处理开放世界的指令。如下图(a)所示。
  2. 利用CLIP进行开放词汇生成:

    • 方法: 为了解决数据局限性,AvatarCLIPOOHMG 等方法利用 CLIP 的跨模态对齐能力。它们通常将三维姿态渲染成二维图像,然后利用 CLIP 的图像-文本空间来寻找与输入文本最匹配的姿态。
    • 局限性: 如前述,CLIP 的文本空间与动作描述存在语义鸿沟,且缺乏时序概念,导致生成的动作序列时序混乱,通常只能在原地进行不自然的运动。如下图(b)所示。
  3. 基于关键帧的动作生成:

    • 方法: 这类工作将动作视为一系列关键姿态的组合,并通过在关键帧之间进行插值(in-betweening)或预测来生成完整动作。早期的工作使用物理优化或统计模型,而近期的方法则使用 RNNs, CNNs, Transformers 等神经网络。

    • 与本文关系: 本文的 Go-Diffuser 模块与动作插值任务相似,但区别在于,传统插值方法通常需要明确提供全局位移信息,而本文的 Go-Diffuser 能够从关键姿态序列中自主学习并预测出全局位移和旋转。

      下图(原文 Figure 2)直观对比了这几种范式与本文方法的区别。

      Figure 2. Comparison of different paradigms for text-to-motion generation. (a) Most existing models leverage the generative models \[22, 33, 41\] to construct the relationship between text and motion based on text-motion pairs. (b) Some methods render 3D poses to images and employ the image space of CLIP to align text with poses. Then they reconstruct the motion in the local dimension based on the poses. (c) Conversely, we decompose motion descriptions into structured pose descriptions. Then we generate poses based on corresponding pose descriptions. Finally, we reconstruct the motion in local and global dimensions. "Gen.", "Decomp.", "Desc.", "Rec." stand for "Generative model", "Decompose", "Pose Description" and "Reconstruction" respectively. 该图像是图示 2,展示了三种文本到运动生成的不同范式。(a) 利用生成模型构建文本与运动的关系。(b) 生成姿势并重构室内运动。(c) 通过分解运动描述生成姿势,最终重建运动。

3.3. 技术演进

文本到动作生成的技术演进路线可以概括为:

  1. 直接监督学习阶段: 在有限的数据集上训练模型,直接从文本映射到动作。效果受限于数据规模和多样性。
  2. 借助大规模预训练模型阶段: 尝试利用 CLIP 等模型的泛化能力,试图打破数据壁垒,实现开放词汇的生成。但因模态差异和模型本身的设计限制,效果不理想。
  3. 分治与规划阶段(本文所处阶段): 认识到直接端到端映射的困难,引入了更智能的中间步骤。本文利用 LLM 进行高级语义规划,将复杂任务分解,降低了后续生成模型的难度。这代表了一种更精细、更符合逻辑的生成思路。

3.4. 差异化分析

本文方法与之前工作最核心的区别在于 引入了 LLM 作为运动规划器,并构建了“高级自然语言 -> 中级结构化脚本 -> 低级动作参数”的层次化生成流程

  • 与传统方法 (MDM) 相比: 传统方法是端到端的黑箱映射 Text>MotionText -> Motion。本文方法是 Text>Scripts>Poses>MotionText -> Scripts -> Poses -> Motion 的三级流水线,通过引入结构化脚本这一中间表示,显著提升了对开放世界文本的理解和泛化能力。
  • CLIP 方法 (AvatarCLIP, OOHMG) 相比: CLIP 方法试图在 CLIP 的语义空间中直接匹配文本和姿态,但这个空间并非为动作设计。本文则通过 LLM 生成为动作量身定制的、描述身体部位关系的精确脚本,这种描述比 CLIP 的对齐更加精准可控。
  • 与关键帧方法相比: 本文不仅生成关键姿态,其 Go-Diffuser 模块还能从这些静态姿态序列中隐式地学习和生成全局运动(平移和旋转),这是许多关键帧方法不具备的能力。

4. 方法论

PRO-Motion 框架遵循 “Plan, Posture, Go” 的三步流程。下面将详细拆解每个模块。

该图像是示意图,展示了PRO-Motion框架的三个模块:运动规划器、姿势扩散器和动作扩散器。用户提示经过运动规划器生成的姿势描述,随后姿势扩散器和动作扩散器分别负责将描述转化为姿势并估计身体动态。图中使用箭头表示不同模块之间的关系,包含了平移、旋转等动作参数。 该图像是示意图,展示了PRO-Motion框架的三个模块:运动规划器、姿势扩散器和动作扩散器。用户提示经过运动规划器生成的姿势描述,随后姿势扩散器和动作扩散器分别负责将描述转化为姿势并估计身体动态。图中使用箭头表示不同模块之间的关系,包含了平移、旋转等动作参数。

4.1. 方法原理

PRO-Motion 的核心思想是“分而治之”。它认识到直接将千变万化的自然语言映射到高维、时序相关的动作空间是极其困难的。因此,它将这个宏大任务分解为三个更简单、更专业的子任务:

  1. 语言理解与规划 (Plan):LLM 负责,将任何形式的文本输入转换成一个统一的、结构化的关键姿态描述序列。

  2. 静态姿态生成 (Posture):Posture-Diffuser 负责,从一个简单的姿态描述生成一个精确的 3D 静态姿态。

  3. 动态运动合成 (Go):Go-Diffuser 负责,将一系列静态的关键姿态串联起来,并补全它们之间的过渡以及整个身体的全局移动。

    在深入模块之前,我们首先回顾一下作为其技术基础的扩散模型。

4.1.1. 扩散模型 (DDPMs) 与条件生成

论文中使用的 Posture-DiffuserGo-Diffuser 都是基于扩散模型的。

  • 前向过程 (加噪): 将原始数据 x0x_0(一个姿态或一个动作序列)通过 TT 步逐渐加入高斯噪声,第 tt 步的加噪过程可表示为: q(xtxt1)=N(xt;1βtxt1,βtI) q ( x _ { t } | x _ { t - 1 } ) = \mathcal{N} ( x _ { t } ; \sqrt { 1 - \beta _ { t } } x _ { t - 1 } , \beta _ { t } I ) 其中,βt\beta_t 是在时间步 tt 控制噪声大小的超参数,II 是单位协方差矩阵,N\mathcal{N} 代表高斯分布。
  • 反向过程 (去噪): 模型 fθf_\theta 的目标是学习从加噪后的数据 xtx_t 和条件 cc(如姿态脚本)中预测出原始数据 x0x_0。其训练目标是最小化预测值与真实值之间的均方误差: minθL=Ex0,t,c[x0fθ(xt,t,c)22] \min _ { \theta } \mathcal { L } = \mathbb { E } _ { x _ { 0 } , t , c } \left[ \| x _ { 0 } - f _ { \theta } ( x _ { t } , t , c ) \| _ { 2 } ^ { 2 } \right] 其中,x0x_0 是原始数据, tt 是当前时间步,cc 是条件信息(例如文本描述),xtx_t 是在 tt 时刻加噪后的数据,fθf_\theta 是要去训练的去噪网络。
  • 分类器无关引导 (Classifier-Free Guidance): 为了更好地控制生成过程,论文采用了这种技术。在训练时,以一定概率将条件 cc 随机置空(即 c=c = \emptyset),让模型同时学习条件生成和无条件生成。在推理时,通过一个引导系数 ww 来调节最终的预测方向,使其更贴近条件 ccfθw(xt,t,c)=fθ(xt,t,)+w(fθ(xt,t,c)fθ(xt,t,)) f _ { \theta } ^ { w } ( x _ { t } , t , c ) = f _ { \theta } ( x _ { t } , t , \emptyset ) + w \cdot ( f _ { \theta } ( x _ { t } , t , c ) - f _ { \theta } ( x _ { t } , t , \emptyset ) ) 这个公式的直观解释是:从无条件预测的基准点出发,朝着“有条件预测”与“无条件预测”之差所指示的方向移动一段距离(由 ww 控制),从而增强生成结果与条件的匹配度,同时保持生成的多样性。

4.2. 核心方法详解 (逐层深入)

4.2.1. 模块一: 运动规划器 (Motion Planner)

  • 目标: 将用户输入的任意自然语言提示(如 "Feel free to dance")转化为一个结构化的关键姿态脚本序列。
  • 实现: 该模块利用了大语言模型(GPT-3.5)的上下文学习(in-context learning)和常识推理能力。研究者设计了一个精巧的提示(prompt),指导 LLM 完成这项任务。
  • 提示设计: 提示内容主要包含:
    1. 任务描述: 告知 LLM 它的任务是为一段动作生成一系列关键姿态描述,并指定帧率、帧数等全局属性。
    2. 五大基本规则: 为了让 LLM 生成的描述既结构化又精确,论文定义了五类描述规则:
      • 弯曲程度: 描述身体部位(如“左肘”)的弯曲状态(如“完全弯曲”、“轻微弯曲”、“伸直”)。
      • 相对距离: 描述不同身体部位之间(如双手)的距离(如“靠近”、“与肩同宽”、“张开”)。
      • 相对位置: 描述不同身体部位之间(如“左髋”和“左膝”)的方位关系(如“在...之后”、“在...之下”)。
      • 方向: 描述身体部位是“垂直”还是“水平”的。
      • 地面接触: 识别身体部位(如“左膝”、“右脚”)是否与地面接触。
    3. 参考示例: 提供一些符合格式和规则的姿态描述样本,让 LLM 学习输出的格式和风格。
  • 输出: LLM 根据用户提示和内置规则,生成一个JSON格式的字符串,其中包含了多个关键帧(F1, F2, ...)及其对应的姿态脚本。

4.2.2. 模块二: 姿态扩散器 (Posture-Diffuser) 与姿态规划 (Posture Planning)

这个模块分为两步:生成候选姿态和规划最佳姿态序列。

1. 姿态生成 (Posture-Diffuser)

  • 目标: 将运动规划器产出的单个姿态脚本转换为一个单个三维人体姿态。
  • 架构: 如下图(a)所示,这是一个基于扩散模型的生成器。
    • 输入: 一个加噪的姿态向量 xtx_t、时间步 tt、以及作为条件的姿态脚本。
    • 核心结构: 网络由多个相同的层堆叠而成,每层包含:
      • 一个残差块,用于融入时间步 tt 的信息。
      • 一个跨模态 Transformer 块,通过标准的交叉注意力机制(cross-attention)融入姿态脚本的文本信息。其中,中间的姿态特征作为查询(Query),而脚本的文本嵌入(来自 DistilBERT)作为键(Key)和值(Value)。
  • 输出: 对于一个姿态脚本,Posture-Diffuser 可以生成一个符合描述的、高质量的静态三维人体姿态。

2. 姿态规划 (Posture Planning)

  • 问题: 由于扩散模型的随机性,对于同一个脚本,Posture-Diffuser 可能会生成多个略有不同的合理姿态。如果为每个关键帧独立地随机选择一个姿态,最终的动作序列可能会出现不连贯的跳变。

  • 目标: 从每个关键帧的多个候选姿态中,挑选出一个组合,形成一条最合理的姿态路径。

  • 实现: 论文采用了经典的维特比算法 (Viterbi algorithm) 来寻找最优路径。这个算法需要定义两个概率:

    • 转移概率 (Transition Probability): 衡量相邻关键帧之间姿态的相似度。两个姿态越相似,从一个转移到另一个的概率就越高。这保证了动作的时间连续性。 假设第 i-1 帧的第 jj 个候选姿态为 pji1p_j^{i-1},第 ii 帧的第 kk 个候选姿态为 pkip_k^i,则转移概率为: Ajki=exp(Θ(pji1)TΘ(pki))l=1Lexp(Θ(pji1)TΘ(pli)) A _ { j k } ^ { i } = \frac { \exp { \left( \Theta { ( p _ { j } ^ { i - 1 } ) } ^ { T } \Theta ( p _ { k } ^ { i } ) \right) } } { \sum _ { l = 1 } ^ { L } \exp { \left( \Theta { ( p _ { j } ^ { i - 1 } ) } ^ { T } \Theta ( p _ { l } ^ { i } ) \right) } } 其中,Θ\Theta 是一个姿态编码器(VPoser encoder),用于提取姿态的特征向量。该公式计算了两个姿态特征向量的点积相似度,并通过 softmax 归一化。

    • 发射概率 (Emission Probability): 衡量当前候选姿态与对应脚本描述的匹配度。姿态与脚本描述越匹配,发射概率越高。这保证了动作的语义准确性。 假设第 ii 帧的文本描述为 tit_i,第 jj 个候选姿态为 pjip_j^i,则发射概率为: Eji=exp(Φ(ti)TΘ(pji))l=1Lexp(Φ(ti)TΘ(pli)) E _ { j } ^ { i } = \frac { \exp \Big ( \Phi ( t _ { i } ) ^ { T } \Theta ( p _ { j } ^ { i } ) \Big ) } { \sum _ { l = 1 } ^ { L } \exp \Big ( \Phi ( t _ { i } ) ^ { T } \Theta ( p _ { l } ^ { i } ) \Big ) } 其中,Φ\Phi 是一个文本编码器(bi-GRU)。该公式计算了文本特征和姿态特征的匹配度。

  • 最终目标: 维特比算法的目标是找到一条姿态路径 G={g1,g2,...,gF}G = \{ g_1, g_2, ..., g_F \}gig_i 是第 ii 帧被选中的姿态),使得总的联合概率最大化: argmaxGP(G)=Eg11i=2FEgiiAgi1gii \underset { G } { \arg \max } P ( G ) = E _ { g _ { 1 } } ^ { 1 } \prod _ { i = 2 } ^ { F } E _ { g _ { i } } ^ { i } A _ { g _ { i - 1 } g _ { i } } ^ { i } 这个公式的意义是,寻找一条路径,使得路径上每个姿态都既与自己的文本描述高度匹配,又与前一个姿态平滑过渡。

4.2.3. 模块三: 行动扩散器 (Go-Diffuser)

  • 目标:Posture Planning 模块输出的一系列静态的、没有全局位置信息的关键姿态,转化为一个完整的、带有全局平移和旋转的、平滑的动作序列

  • 架构: 如下图(b)所示,这是另一个基于 Transformer 的扩散模型。

    • 输入: 一个加噪的完整动作序列 xt1:Nx_t^{1:N}、时间步 tt、以及作为条件的关键姿态序列 {pgii}i=1F\{p_{g_i}^i\}_{i=1}^F
    • 核心思想:Posture-Diffuser 将整个条件视为一个整体不同,Go-Diffuser 将每个关键姿态视为一个独立的离散词元 (token)。在 Transformer 内部,加噪的动作序列中的每一帧都会与所有的关键姿态词元进行注意力计算。
    • 直觉: 这种设计使得模型能够感知到关键姿态之间的内在联系。例如,如果模型看到关键姿态序列是“站立 -> 迈出左脚 -> 迈出右脚”,它就能从这种变化中学习到身体应该有一个“向前平移”的趋势。同时,它也学习如何在这些关键姿态之间进行自然的插值。
  • 输出: 一个完整的、包含 NN 帧的动作序列 x^01:N\hat{x}_0^{1:N}。这个序列不仅包含了所有身体关节的姿态变化,还包含了整个身体在三维空间中的平移和旋转,从而生成了逼真的、非原地的动作。

    下图(原文 Figure 4)展示了 Posture-DiffuserGo-Diffuser 的详细架构。

    Figure 4. Illustration of our Dual-Diffusion model. (a) PostureDiffuser module is designed to predict the original pose conditioned by the pose description. The model consists of \(N\) identical layers, with each layer featuring a residual block for incorporating time step information and a cross-modal transformer block for integrating the condition text. (b) `G o` -Diffuser module serves the function of obtaining motion with translation and rotation from discrete key poses without global information. In this module, the key poses obtained from Sec. 3.3 are regarded as independent tokens. We perform attention operations \[87\] between these tokens and noised motion independently, which can significantly improve the perception ability between every condition pose and motion sequence. 该图像是示意图,展示了我们提出的Dual-Diffusion模型的Posture-Diffuser模块(a)和Go-Diffuser模块(b)。Posture-Diffuser模块包含NN个层,每层包括残差块和跨模态变换块,用于将姿势描述转化为姿势;Go-Diffuser模块从离散的关键姿势中获取运动的平移和旋转,进一步生成逼真的运动序列。

5. 实验设置

5.1. 数据集

论文使用了多个公开数据集来训练和评估其模型的不同部分:

  • AMASS (Archive of Motion Capture as Surface Shapes): 一个大型的动作捕捉数据库,整合了多个 mocap 数据集,包含超过40小时的动作数据。它提供了大量的纯动作数据(无文本描述),主要用于训练动作生成模型的基础(如 Go-Diffuser 的运动先验)。
  • PoseScript: 包含从 AMASS 中提取的静态 3D 人体姿态,并配有精细的文本描述。它有两个子集:PoseScript-H(人工编写的描述)和 PoseScript-A(自动生成的描述)。该数据集是训练 Posture-Diffuser(脚本到姿态)的理想数据源。
  • HumanML3D: 一个广泛使用的动作-语言数据集,为 AMASS 中的动作片段提供了文本标注。主要用于训练和评估基线模型(如 MDM)。
  • Motion-X: 一个大规模、富有表现力的全身动作数据集,带有详细的语言描述。论文从中构建了两个特定的测试集来评估模型的“开放世界”能力:
    1. ood368 子集: 为了确保测试集与 HumanML3D 训练集没有重叠,作者计算了 Motion-XIDEA-400子集与 HumanML3D 中所有文本描述的相似度,并筛选出相似度低于阈值(0.45)的 368 个文本-动作对,构成了一个分布外(Out-of-Distribution, OOD)测试集。
    2. kungfu 子集: 直接选用 Motion-X 中的功夫动作子集,因为这类复杂动作通常在通用数据集中较少见,适合测试模型的泛化能力。

5.2. 评估指标

论文使用了多组指标来从不同角度评估生成动作的质量。

5.2.1. 文本-动作匹配度与动作质量指标

这些指标用于评估生成的动作是否与输入文本语义一致,以及动作本身的真实性和多样性。

  1. R-Precision (R-精确率)

    • 概念定义: 这是一个检索任务的评估指标。对于一个生成的动作,系统会提供一个正确的文本描述(真值)和多个随机抽取的错误描述。模型需要计算动作与所有这些文本描述的相似度,并进行排序。如果正确的文本描述被排在Top-K位,则认为检索成功。R-Precision衡量的是在给定描述池中,模型将动作与正确文本匹配的能力。R-Precision@K (e.g., K=10, 20, 30) 表示正确描述排进前K名的比例。这个值越高越好。
    • 数学公式: 论文未提供具体公式,但其计算过程可描述为: R-Precision@K=1Ni=1NI(rank(ti,Mi)K) \text{R-Precision}@K = \frac{1}{N} \sum_{i=1}^{N} \mathbb{I}(\text{rank}(t_i, M_i) \leq K)
    • 符号解释:
      • NN: 测试样本的总数。
      • MiM_i: 第 ii 个生成的动作。
      • tit_i: 对应 MiM_i 的真实文本描述。
      • rank(ti,Mi)\text{rank}(t_i, M_i): 在为动作 MiM_i 提供的描述池中,真实描述 tit_i 的排名。
      • I()\mathbb{I}(\cdot): 指示函数,当条件为真时取1,否则取0。
  2. Frechet Inception Distance (FID)

    • 概念定义: FID 是一个广泛用于评估生成模型质量的指标,最初用于图像生成。它衡量生成数据分布与真实数据分布之间的距离。在本文中,它被应用于从动作中提取的特征。FID 分数越低,表示生成的动作分布与真实动作分布越相似,即动作越真实、多样。
    • 数学公式: FID(x,g)=μxμg22+Tr(Σx+Σg2(ΣxΣg)1/2) \mathrm{FID}(x, g) = \|\mu_x - \mu_g\|^2_2 + \mathrm{Tr}\left(\Sigma_x + \Sigma_g - 2(\Sigma_x\Sigma_g)^{1/2}\right)
    • 符号解释:
      • μx\mu_xμg\mu_g: 分别是真实数据和生成数据的特征均值向量。
      • Σx\Sigma_xΣg\Sigma_g: 分别是真实数据和生成数据的特征协方差矩阵。
      • Tr()\mathrm{Tr}(\cdot): 矩阵的迹(主对角线元素之和)。
  3. MultiModal Distance (MM-Dist)

    • 概念定义: 直接计算每个生成的动作特征与其对应文本描述特征之间的平均欧氏距离。这个距离越小,表示动作与文本的语义匹配得越好。
    • 数学公式: MM-Dist=1Ni=1Nfeat(Mi)feat(ti)2 \text{MM-Dist} = \frac{1}{N} \sum_{i=1}^{N} \|\text{feat}(M_i) - \text{feat}(t_i)\|_2
    • 符号解释:
      • NN: 测试样本总数。
      • feat(Mi)\text{feat}(M_i): 第 ii 个生成动作的特征向量。
      • feat(ti)\text{feat}(t_i): 第 ii 个文本描述的特征向量。
      • 2\|\cdot\|_2: 欧氏距离。

5.2.2. 动作重建误差指标 (Go-Diffuser 评估)

这些指标用于评估 Go-Diffuser 模块从关键姿态重建完整动作的精度。

  1. Average Positional Error (APE)

    • 概念定义: 平均位置误差,计算生成动作的关节位置与真实动作关节位置之间的平均 L2 距离。这个值越低,说明生成的动作在几何上越接近真实动作。
    • 数学公式: APE[j]=1NFnNfFHf[j]H^f[j]2 APE[j] = \frac{1}{NF} \sum_{n \in N} \sum_{f \in F} \|\boldsymbol{H}_f[j] - \hat{\boldsymbol{H}}_f[j]\|_2
    • 符号解释:
      • jj: 特定的关节索引。
      • NN: 样本数量。
      • FF: 动作的帧数。
      • Hf[j]\boldsymbol{H}_f[j]: 真实动作在第 ff 帧时,关节 jj 的三维位置。
      • H^f[j]\hat{\boldsymbol{H}}_f[j]: 生成动作在第 ff 帧时,关节 jj 的三维位置。
  2. Average Variance Error (AVE)

    • 概念定义: 平均方差误差,衡量生成动作中关节运动的方差与真实动作方差之间的差异。APE 关注绝对位置,而 AVE 更关注运动的动态特性(即“动起来”的幅度是否正确)。这个值越低越好。
    • 数学公式: AVE[j]=1NnNδ[j]δ^[j]2 AVE[j] = \frac{1}{N} \sum_{n \in N} \|\delta[j] - \hat{\delta}[j]\|_2 其中,关节 jj 的方差 δ[j]\delta[j] 定义为: δ[j]=1F1fF(Hf[j]Hˉ[j])2 \delta[j] = \frac{1}{F-1} \sum_{f \in F} (H_f[j] - \bar{H}[j])^2
    • 符号解释:
      • δ[j]\delta[j]δ^[j]\hat{\delta}[j]: 分别是真实动作和生成动作中关节 jj 运动的方差。
      • Hˉ[j]\bar{H}[j]: 真实动作中关节 jj 在所有帧的平均位置。

5.3. 对比基线

论文将 PRO-Motion 与以下代表性的方法进行了比较:

  • MDM (Human Motion Diffusion Model): 一个纯监督学习的、基于扩散模型的 SOTA 方法,直接在 HumanML3D 上训练。
  • MotionCLIP: 一个试图利用 CLIP 实现开放词汇生成的监督学习方法。
  • Codebook+InterpolationCodebook+Interpolation: 一个简化的基线,姿态生成阶段使用 VPoser 码本进行匹配,动作生成阶段仅使用简单的插值。
  • AvatarCLIP: 一个基于优化的开放世界生成方法,同样利用 CLIP 进行文本到姿态的匹配,并在一个预训练的动作 VAE 潜在空间中进行搜索。
  • OOHMG (Being comes from Not-being): 另一个基于 CLIP 的开放世界生成方法,通过 CLIP 图像特征生成候选姿态。

6. 实验结果与分析

6.1. 核心结果分析

核心实验旨在验证 PRO-Motion 在开放世界文本到动作生成任务上的性能。

6.1.1. 开放世界定量比较

以下是原文 Table 1 的结果,展示了在 ood368kungfu 这两个开放世界测试集上,PRO-Motion 与其他基线方法的性能对比。

Methods Text-motion FID ↓ MultiModal Dist ↓ Smooth →
R@10 ↑ R@20 ↑ R@30 ↑ MedR ↓
"test on ood368 subset"
MDM [85] 17.81 34.06 48.75 31.20 3.500541 2.613644 0.000114
MotionCLIP [84] 16.25 35.62 52.81 28.90 2.227522 2.288905 0.000073
Codebook+Interpolation [34] 15.62 31.25 46.56 32.80 4.084785 2.516041 0.000146
AvatarCLIP [34] 15.31 31.56 47.19 32.60 4.181952 2.449695 0.000146
OOHMG [44] 15.62 34.06 48.75 29.80 3.982753 2.149275 0.000758
Ours 20.25 36.56 53.14 26.10 1.488678 1.534521 0.001312
"test on kungfu subset"
MDM [85] 12.50 29.69 42.19 37.50 12.060187 3.725436 0.000735
MotionCLIP [84] 15.62 29.69 46.88 32.50 17.414746 4.297871 0.000123
Codebook+Interpolation [34] 10.94 20.31 29.69 37.50 2.521690 2.764137 0.000138
AvatarCLIP [34] 15.62 31.25 46.88 32.50 1.966764 2.497678 0.000171
OOHMG [44] 14.06 32.81 48.44 32.50 4.904853 2.471666 0.000847
Ours 20.31 34.38 50.00 31.00 4.124218 2.374380 0.001559

分析:

  • 语义匹配度 (R-Precision, MedR, MultiModal Dist): 在两个测试集上,PRO-Motion (Ours) 在 R-Precision 指标上都显著优于所有基线方法,并且在 MultiModal Dist 上也取得了最好的结果。这表明 PRO-Motion 生成的动作与文本描述的语义一致性最高。这得益于 LLM 规划器能够精确地将自然语言分解为结构化的姿态脚本。
  • 动作真实性 (FID):ood368 数据集上,PRO-MotionFID 分数(1.488)远低于其他所有方法,说明其生成的动作分布与真实动作分布最为接近,即动作更真实、更自然。在 kungfu 数据集上,虽然 AvatarCLIPFID 更低,但其语义匹配度指标远差于 PRO-Motion,这可能意味着它生成了一些通用的、平滑但与文本不符的动作。PRO-Motion 在保证高语义匹配度的同时,也取得了有竞争力的 FID
  • 综合来看: PRO-Motion 在保证动作真实性的同时,极大地提升了对开放世界文本的理解能力和语义匹配精度,综合性能全面领先。

6.1.2. 开放世界定性比较

下图(原文 Figure 5)展示了不同方法针对两个复杂文本提示生成的动作序列。

Figure 5. Comparation of our methods with previous text-to-motion generation methods.

分析:

  • "bends over" (弯腰): MDM 作为监督学习方法,能生成合理的弯腰动作。但其他基于 CLIP 的方法(MotionCLIP, AvatarCLIP等)生成的动作序列出现了时序错误:角色先弯腰,然后又直起一部分,未能正确理解动作的连续过程。PRO-Motion (Ours) 则生成了非常连贯流畅的弯腰动作。
  • "bury one's head and cry, and finally crouched down" (埋头哭泣,最后蹲下): 这是一个更复杂的、包含情感和连续动作的提示。MDM 完全失败,无法生成未见过的复杂组合。基于 CLIP 的方法也难以处理这种细节丰富的描述。而 PRO-Motion 成功地捕捉到了“哭泣”和“蹲下”这两个核心要素,生成了符合描述的动作,充分展示了其处理开放世界复杂指令的能力。

6.2. 消融实验/参数分析

6.2.1. Posture-Diffuser (姿态生成) 的有效性

下图(原文 Figure 6)对比了不同的文本到姿态生成方法。

Figure 6. Comparison of our method with previous text-to-pose generation methods.

分析:

  • Matching vs. Ours: Matching 方法(直接用 CLIP 匹配)在面对语义相近但含义不同的文本时(如 "cry" 和 "pray"),生成了几乎相同的姿态,无法区分细节。对于需要精确控制身体部位的描述(如 "dance the waltz"),MatchingOOHMG 都失败了。
  • PRO-Motion 的优势: 相比之下,PRO-Motion 通过 LLM 生成的精确脚本,能够准确控制身体各个部位,生成了符合文本精确含义的、多样化的姿态。这证明了 "Plan" (规划) 这一步骤的巨大价值。

6.2.2. Go-Diffuser (动作合成) 的有效性

为了验证 Go-Diffuser 在预测全局运动(平移、旋转)方面的能力,论文将其与两个基线进行了比较:一个简单的 MLP 回归网络(Regression)和一个以姿态序列特征为条件的基线扩散模型(Baseline[62])。

以下是原文 Table 2 的结果,评估了从关键姿态重建完整动作的误差。

Methods Average Positional Error ↓ Average Variance Error ↓
root joint global traj. mean local mean global root joint global traj. mean local mean global
Regression 5.878673 5.53344 0.642252 5.919954 35.387340 35.386562 0.147606 35.483219
Baseline[62] 0.384152 0.373394 0.183978 0.469322 0.114308 0.113845 0.015207 0.126049
Ours 0.365327 0.354685 0.128763 0.418265 0.111131 0.110855 0.008708 0.118334

分析:

  • APE 和 AVE: PRO-MotionGo-Diffuser 在所有误差指标上均取得了最低值,全面优于基线方法。特别是 global traj. (全局轨迹) 和 mean global (全局平均) 误差的降低,有力地证明了该模块在预测人体全局平移和旋转方面的卓越能力。

  • 定性结果: 从下图(原文 Figure 7)可以看出,Go-Diffuser(Ours)能够更好地捕捉动作细节(如膝盖弯曲),并在相似的相邻姿态间推断出更合理的运动趋势,从而生成更逼真的带有位移的动作。

    该图像是一个示意图,展示了不同方法生成的动作模型,包括GT、Reg.、B/L和我们的方案。不同的模型在动作表现上各有特点,显示出我们的方法在生成现实动作方面的优势。 该图像是一个示意图,展示了不同方法生成的动作模型,包括GT、Reg.、B/L和我们的方案。不同的模型在动作表现上各有特点,显示出我们的方法在生成现实动作方面的优势。

7. 总结与思考

7.1. 结论总结

论文提出了一种名为 PRO-Motion 的创新框架,以“分而治之”的策略应对开放世界文本到动作生成的挑战。该框架通过三个精心设计的模块——Motion Planner(利用LLM进行高级规划)、Posture-Diffuser(精确生成静态姿态)、和 Go-Diffuser(合成完整动态)——成功地将复杂的生成任务分解。PRO-Motion 的核心贡献在于引入 LLM 作为规划器,将任意自然语言转化为结构化的姿态脚本,从而极大地简化了下游生成模型的学习任务。实验结果表明,该方法不仅在语义匹配度、动作真实性和多样性上全面超越了现有最先进方法,而且成功解决了先前方法无法生成带全局位移的真实动作的痛点,为从复杂、抽象的文本描述生成高质量三维人体动画提供了非常有效的解决方案。

7.2. 局限性与未来工作

尽管论文在正文中没有明确列出局限性,但根据其方法和实验,可以推断出一些潜在的局限和未来研究方向:

  • 局限性:

    1. LLM 的依赖: 整个框架的性能高度依赖于第一步 Motion Planner 的输出质量。如果 LLM 错误地理解了用户意图或生成了不合理、不连贯的姿态脚本序列,错误会向下游传递,导致最终动作生成失败。
    2. 三阶段流程的效率: PRO-Motion 是一个多阶段的流水线,涉及 LLM 调用和两次扩散模型采样,其计算成本和时间延迟可能较高,不适合需要实时生成的应用场景。
    3. 物理真实性: 虽然生成的动作在视觉上是逼真的,但模型并未明确引入物理约束,可能生成一些不完全符合物理规律的动作。
    4. 脚本表达能力的上限: 尽管论文声称脚本具有组合性,可以覆盖所有姿态,但预定义的五大规则可能仍不足以描述所有极端或细微的姿态细节。
  • 未来工作:

    1. 端到端优化: 探索将三个模块进行联合训练或端到端优化的可能性,以减少级联误差,并可能提高效率。
    2. 交互式编辑与控制: 在当前框架基础上,允许用户不仅输入初始文本,还可以对 LLM 生成的姿态脚本进行交互式修改,从而实现对生成动作更精细的控制。
    3. 融合物理模拟: 将物理引擎或基于物理的约束融入到 Go-Diffuser 中,以保证生成动作的物理真实性。
    4. 扩展到多智能体交互: 将该框架从单人动作生成扩展到多人交互场景的生成。

7.3. 个人启发与批判

  • 启发:

    1. “分治”与“规划”思想的价值: 这篇论文最亮眼的启发是,在面对一个极其复杂的端到端生成任务时,引入一个基于强大先验知识(如 LLM)的“规划”模块来分解问题,是打破瓶颈的有效策略。这种“高级语义规划 + 低级参数生成”的范式可以广泛应用于其他复杂的跨模态生成任务,如故事到视频生成、文本到三维场景生成等。
    2. 中间表示的重要性: 设计一个良好、结构化的中间表示(本文中的姿态脚本)是连接不同模态、降低模型学习难度的关键。这个中间表示既要足够简单以利于生成,又要足够有表达力以覆盖任务需求。
    3. 挖掘 LLM 的新用途: 本文展示了 LLM 除了作为对话系统或文本生成器之外,还可以作为一个强大的、具有常识的“任务分解器”和“规划器”,在多模态AI系统中扮演核心的“大脑”角色。
  • 批判性思考:

    1. 鲁棒性问题: 框架的鲁棒性如何?当 LLM 生成的脚本序列在逻辑上或物理上存在矛盾时(例如,前一帧“左脚在右脚前”,后一帧突然变成“左脚在右脚后很远”,中间缺少过渡),Go-Diffuser 是否能够平滑处理,还是会生成突兀的动作?论文对此没有进行讨论。
    2. 评估的局限: 尽管 ood368 是一个分布外测试集,但它仍是从现有数据集中筛选而来。该方法在面对真正天马行空、完全脱离常规动作捕捉范畴的文本(比如 "像液体一样流动" 或 "像羽毛一样飘落")时,其表现如何仍是未知数。LLM 可能会生成对应的脚本,但下游的扩散模型是否能合成出这种抽象概念对应的动作,值得怀疑。
    3. 模型的可解释性与可控性: 虽然引入了脚本使流程更加清晰,但两个扩散模型内部仍然是黑箱。当生成结果不佳时,是 Posture-Diffuser 没能理解脚本,还是 Go-Diffuser 没能正确推断运动趋势,调试和归因可能比较困难。

相似论文推荐

基于向量语义检索推荐的相关论文。

暂时没有找到相似论文。