跳转至

MoSA: Motion-Coherent Human Video Generation via Structure-Appearance Decoupling

会议: ICLR 2026
arXiv: 2508.17404
代码: 无(将开源)
领域: 视频理解
关键词: 人物视频生成, 结构-外观解耦, 3D运动生成, DiT, 密集跟踪损失

一句话总结

提出 MoSA 框架,将人体视频生成拆分为"结构生成"(3D Transformer 先生成物理合理的运动骨骼)和"外观生成"(DiT 在骨骼引导下合成视频),并设计人体感知动态控制(HADC)模块将稀疏骨骼信号扩展到整个运动区域,配合密集跟踪损失和接触约束,在 FVD、CLIPSIM 等指标上全面超越 HunyuanVideo、Wan 2.1 等 SOTA。

研究背景与动机

领域现状:当前主流通用视频生成模型(HunyuanVideo、CogVideoX、Wan 2.1 等)在自然场景上视觉质量已经很高,但生成人物视频时频繁出现肢体畸变、运动不自然等结构崩坏问题。专门针对人物视频的方法(如 AnimateAnyone 系列)大多局限于面部/上半身或需要额外 pose 驱动输入,难以应对全身复杂运动。

现有痛点:第一,纯噪声重建的训练目标天然偏向外观保真而忽略结构一致性——模型倾向于"画得好看"但运动不合理;第二,一些方法尝试直接在 2D 空间生成骨骼序列作为引导,但当肢体发生遮挡时 2D 表示缺少深度信息,生成的骨骼结构经常出错(如腿部位置穿插);第三,骨骼本身是稀疏的关键点表示,即使生成正确,对后续像素级外观生成的控制力也非常有限。

核心矛盾:人体外观和运动携带完全不同的信号——外观需要像素级的纹理细节,运动需要满足物理约束和解剖合理性——但现有方法把两者耦合在同一个生成过程中,导致顾此失彼。

本文目标 (1) 如何生成物理合理的复杂人体运动?(2) 如何让稀疏骨骼信号有效指导密集像素生成?(3) 如何建模人与环境的接触交互?

切入角度:作者观察到人体运动在 3D 空间有很好的先验(大规模 MoCap 数据集),而外观则适合用预训练 DiT 生成。因此将问题拆成两步:先利用 3D 先验生成结构合理的运动序列,再在骨骼引导下生成外观。这样运动合理性由 3D Transformer 保证,视觉质量由 DiT 保证。

核心 idea:先在 3D 空间用运动先验生成物理合理的骨骼序列,再通过人体感知动态控制模块将稀疏骨骼引导扩展到整个运动区域以指导 DiT 生成高保真外观。

方法详解

整体框架

MoSA 将人体视频生成解耦为两个分支:结构生成分支接收文本 prompt 中的运动语义,通过预训练的 3D 结构 Transformer 生成 3D 人体关键点序列并投影为 2D 骨骼序列;外观生成分支以完整文本 prompt 和骨骼结构特征为条件,基于 DiT backbone 进行迭代去噪生成视频。两分支之间通过 HADC 模块传递结构信息。训练时用 GT 骨骼作为条件,推理时用结构分支自动生成骨骼。

关键设计

  1. 3D 结构 Transformer(结构生成分支):

    • 功能:从文本 prompt 生成物理合理的 3D 人体运动关键点序列,然后投影到 2D 骨骼
    • 核心思路:先用 LLM 从完整 prompt 中提取运动相关子集 \(p'\)(过滤掉背景描述等无关信息),然后 3D 结构 Transformer \(\mathcal{G}_s^m\)\(p'\) 为条件从高斯噪声 \(z_T^s\) 生成 3D 关键点序列,最后通过 Projection 操作渲染为 2D 骨骼 \(g_s\)。该 Transformer 采用自回归架构,在百万级 MoCap 数据集上预训练
    • 设计动机:相比直接生成 2D 骨骼,3D 生成有两个关键优势——(a) 利用 3D 人体先验保证解剖合理性,(b) 利用深度信息在肢体遮挡场景下保持结构正确。实验证实直接生成 2D 骨骼会导致遮挡处腿部位置穿插等问题
  2. 人体感知动态控制(HADC)模块:

    • 功能:将稀疏骨骼的"点引导"扩展为覆盖整个运动区域的"密集引导",解决骨骼稀疏导致控制力不足的问题
    • 核心思路:HADC 模块插在外观分支相邻 DiT block 之间。第 \(k\) 个模块接收骨骼特征 \(s^k\) 和视频 latent \(a_i^k\),通过可学习权重预测器 \(\mathcal{P}^k\) 生成空间变化的动态权重图 \(w^k = \mathcal{P}^k(s^k, a_i^k)\),然后 \(a_o^k = a_i^k \oplus (w^k \odot s^k)\)。为确保权重图覆盖人体区域,设计了可学习网络 \(\mathcal{U}^k\)\(w^k\) 转换为 mask latent 并与 GT mask 做 L2 约束 \(\mathcal{L}_m\)
    • 设计动机:骨骼只有 K 个关键点,信息过于稀疏,直接注入 DiT 效果有限。HADC 通过学习空间权重让骨骼信号扩散到整个人体区域,相当于从"骨骼引导"升级为"人体区域引导"
  3. 密集跟踪损失与接触约束:

    • 功能:增强时序运动一致性和人-环境交互建模
    • 核心思路:密集跟踪损失 \(\mathcal{L}_{track}\) 使用 CoTracker3 提取生成视频和 GT 视频的 2D 轨迹点,计算加权 L1 距离。权重 \(e^{|t_v - t_v'|/2}\) 对时间间隔越大的帧对赋予越高权重,鼓励模型学习长距离运动依赖。接触约束 \(\mathcal{L}_{cont}\) 则在 3D 空间建模人体与地面/物体的接触关系
    • 设计动机:纯噪声重建目标偏向外观而忽略运动——跟踪损失显式引入了对运动一致性的监督;接触约束则解决了"脚陷入地面"或"浮空"等物理不合理问题

损失函数 / 训练策略

总损失为 \(\mathcal{L} = \mathcal{L}_d + \lambda_m \mathcal{L}_m + \lambda_{track} \mathcal{L}_{track} + \lambda_{cont} \mathcal{L}_{cont}\)。训练时固定预训练的 3D 结构 Transformer \(\mathcal{G}_s^m\),直接用 GT 视频提取的骨骼序列作为结构条件。外观生成分支以 CogVideoX-5B 为 backbone。还构建了 MoVid 数据集(30K 人物运动视频),覆盖走路、跑步、跳跃、滑冰等多种复杂全身动作,远超现有人物视频数据集的运动多样性。

实验关键数据

主实验

与通用视频生成模型在 300+ 文本 prompt 上的定量对比:

方法 FVD↓ CLIPSIM↑ 主体一致性↑ 背景一致性↑ 运动平滑↑ 动态程度↑ 画质↑
ModelScope 1945 0.2739 90.87% 93.41% 96.22% 48.57% 60.12%
VideoCrafter2 1959 0.2801 93.43% 97.01% 97.31% 35.71% 60.32%
LaVie 1778 0.2895 93.80% 95.51% 97.21% 53.73% 62.57%
Mochi 1 1207 0.2903 94.67% 95.32% 97.75% 51.14% 54.65%
CogVideoX 1360 0.2899 93.75% 94.02% 97.78% 51.42% 62.98%
HunyuanVideo 1235 0.2948 94.41% 95.17% 98.95% 50.42% 58.13%
Wan 2.1 1251 0.2951 94.43% 95.55% 98.36% 51.71% 65.21%
MoSA 1093 0.3035 96.83% 97.43% 99.25% 52.86% 65.43%

消融实验

各模块的贡献(FVD↓ / CLIPSIM↑):

消融配置 FVD CLIPSIM 说明
完整 MoSA 1093 0.3035 所有组件
无结构分支 1262 0.2971 直接 finetune base 模型,FVD +169
2D 骨骼生成替代 3D 1230 0.2998 遮挡场景结构崩坏
无 HADC 模块 1188 0.2973 稀疏骨骼控制力不足
HADC w/o mask loss 1112 0.3009 权重图缺少人体区域约束
无密集跟踪损失 1172 0.3009 运动一致性下降
静态权重替代时序加权 1114 0.3016 长距离依赖学习不充分
无接触约束 1108 0.3021 人-环境交互不自然
HumanVid 数据集 1217 0.2949 运动多样性不足
无额外人物数据 1360 0.2899 退化为 base 模型

MoSA 框架迁移到 Wan 2.1 后也有显著提升:Wan 2.1 原始 FVD=1251 / CLIPSIM=0.2951 → 加 MoSA 后 FVD=1108 / CLIPSIM=0.3044,验证了框架的通用性。

关键发现

  • 结构-外观解耦是最大功臣:无结构分支时 FVD 从 1093 升到 1262(+15.5%),说明显式结构引导对运动质量至关重要
  • 3D 优于 2D:3D→2D 投影比直接 2D 生成好 137 FVD,主要因为深度信息在肢体遮挡场景下保持了结构正确性(可视化中 2D 方案出现腿部穿插)
  • HADC 模块效果显著:去掉 HADC 后 FVD +95,且 mask loss 贡献了额外 19 FVD 的提升,说明空间权重约束确实让引导信号覆盖了人体区域
  • 密集跟踪损失中的时序加权很重要:静态权重 vs 指数时序加权差 21 FVD,长距离运动依赖的学习需要显式鼓励
  • MoVid 数据集不可替代:相比 HumanVid,MoVid 贡献了 124 FVD 的提升,因为覆盖了更复杂多样的全身运动

亮点与洞察

  • 解耦范式的系统性:运动 = 结构信号(需物理约束),外观 = 纹理信号(需视觉质量)→ 两类信号天然应由不同模型生成。这种"先生成结构再填充外观"的两阶段设计既合理又高效,比端到端方法更容易分别优化
  • 从稀疏到密集的 HADC 设计:骨骼是极度稀疏的表示(仅 K 个点),但 HADC 通过可学习权重预测器把引导信号从关键点扩散到整个人体区域,再用 mask loss 约束覆盖范围。这个"稀疏→密集"的信号传播思路可以迁移到任何需要用稀疏控制信号引导密集生成的场景
  • 跟踪损失用时序加权很巧妙\(e^{|t_v - t_v'|/2}\) 让时间跨度越大的帧对贡献越多梯度,迫使模型学习长距离运动一致性而非只关注相邻帧。这个 trick 可以直接用于任何需要时序一致性的视频生成任务

局限与展望

  • 手部运动仍是瓶颈:3D 结构 Transformer 训练数据只有 SMPL body joints,不包含手指关键点,因此精细手部动作仍会出现畸变。作者也指出加入手部 3D 标注是直接的改进方向
  • 单人限制:虽然论文中展示了一些多人交互的结果,但总体框架设计以单人为主,多人场景缺少系统的交互建模
  • MoVid 规模偏小:30K 视频相比通用视频数据集(百万级)仍然有数量级差距,可能限制了方法在更广泛场景下的泛化
  • 计算开销:结构分支 + HADC 模块 + 跟踪损失(需前向 CoTracker3)增加了显著的训练和推理开销

相关工作与启发

  • vs AnimateAnyone2:AnimateAnyone2 也用骨骼引导但需要用户提供driving pose 序列,且只支持舞蹈等简单场景;MoSA 的核心优势是自动从文本生成结构合理的骨骼,且支持跑步、滑冰等复杂全身运动
  • vs VideoJAM:VideoJAM 也关注运动-外观的联合表示,但是在同一个模型内做联合学习;MoSA 更激进地完全解耦两个分支,让结构分支专注物理合理性,外观分支专注视觉质量
  • vs 直接 2D 骨骼方法(MotionMaster/DreamDance 等):这些方法在 2D 空间生成或使用骨骼,遮挡场景下容易崩坏;MoSA 通过 3D→2D 投影从根本上解决了这个问题

评分

  • 新颖性: ⭐⭐⭐⭐ 结构-外观解耦的想法直觉上合理且在人物视频领域是首次系统实现,但"先生成结构再生成外观"的两阶段范式在其他领域已有先例
  • 实验充分度: ⭐⭐⭐⭐⭐ 与 7 个通用视频模型定量对比 + 6 个维度的 VBench 评估 + 详细消融每个模块 + 跨 backbone 迁移验证 + 定性可视化,非常全面
  • 写作质量: ⭐⭐⭐⭐ 逻辑清晰、图表丰富,但部分公式符号定义偏冗余
  • 价值: ⭐⭐⭐⭐ 为人体视频生成提供了一个系统性的解耦范式,MoVid 数据集也有社区价值;但 30K 数据集规模和单人限制使得实际落地还需扩展
  • 写作质量: ⭐⭐⭐⭐ 动机清晰,框架图直观
  • 价值: ⭐⭐⭐⭐⭐ 对人物视频生成的运动合理性有显著推进

相关论文