跳转至

Ponymation: Learning Articulated 3D Animal Motions from Unlabeled Online Videos

会议: ECCV 2024
arXiv: 2312.13604
领域: 图像生成

一句话总结

提出 Ponymation,首次从未标注的网络视频中学习铰接式 3D 动物运动的生成模型,无需姿态标注或参数化形状模板,通过视频光度-几何自编码框架和运动 VAE,能在数秒内从单张图像生成逼真的 4D 动画。

研究背景与动机

3D 动物运动建模对混合现实、内容创作和动物行为研究具有重要价值,但现有方法面临严重的监督依赖问题:

高昂的数据获取成本:现有 3D 运动合成方法依赖 3D 扫描、参数化形状模型(如 SMPL)、多视角视频或关键点标注,这些数据采集需要专业设备和大量人力

人类 vs 动物的数据鸿沟:大规模 3D 数据集仅存在于人类(如 Human3.6M),动物领域几乎没有可用的运动捕捉数据

视频中学习的挑战:网络视频中每段仅展示唯一的 4D 实例,具有独特的形状、外观、运动和视角,需要在单一规范 3D 模型中注册这些多样的视频片段

本文的核心贡献是:仅从原始网络视频中学习 3D 动物运动的生成分布,完全不需要外部标注。

方法详解

整体框架

Ponymation 包含两个训练阶段:

阶段一:预训练单帧 3D 重建模型,在视频片段上训练(而非独立图像),加入时序平滑约束

阶段二:用时空 Transformer 运动 VAE 替换单帧姿态预测器,学习运动潜空间的生成分布

推理时:从运动 VAE 采样生成新 3D 运动序列 → 结合单张图像的 3D 形状重建 → 自动生成 4D 动画

关键设计

铰接式 3D 动物运动表示

  • 基础形状:使用 SDF + DMTet 提取类别共享的基础网格 \(V_{base} \in \mathbb{R}^{K \times 3}\)
  • 实例变形:图像条件变形场 \(f_{\Delta V}\) 预测每个顶点的微小变形
  • 骨骼:假设粗略骨架描述(如"四足动物"),自动实例化:沿 z 轴最远两端连成身体骨链,四条腿分别连接到身体骨上
  • 运动参数化:每帧的姿态 \(\xi_t\) 包含刚体变换 \(\xi_{t,1} \in SE(3)\) 和各骨骼旋转 \(\xi_{t,b} \in SO(3)\)
  • 通过线性混合蒙皮 \(g(V_{ins}, \xi_t)\) 驱动网格变形

时空 Transformer 运动编码器

  1. 空间 Transformer \(E_s\):对每帧构建每根骨骼的特征描述子 \(\nu_{t,b}\)(包含全局 DINO 特征、局部骨骼特征、骨骼位置等),融合为单帧姿态特征 \(\nu_{t,*}\)
  2. 时序 Transformer \(E_t\):将整个序列的姿态特征融合为运动 VAE 的分布参数 \((\hat{\mu}, \hat{\Sigma})\)
  3. \(z \sim \mathcal{N}(\hat{\mu}, \hat{\Sigma})\) 采样运动潜码

运动解码器(对称设计):

  1. 时序解码器 \(D_t\):以时间戳序列为查询,\(z\) 为 key/value,解码出每帧姿态特征
  2. 空间解码器 \(D_s\):以骨骼索引为查询,每帧姿态特征为 key/value,解码出各骨骼旋转

语义对应关系蒸馏

利用 DINO-ViT 的自监督特征提供跨实例的部件级对应关系,优化规范空间中的特征场 \(\psi(\mathbf{x})\),使渲染的 2D 特征图匹配 DINO 特征图。这避免了对外部姿态标注或形状模板的依赖。

损失函数

阶段一\(\mathcal{L}_{vid} = \sum_{t=1}^T (\mathcal{L}_{recon,t} + \lambda_h \mathcal{L}_{hyp,t} + \lambda_s \mathcal{R}_{shape,t}) + \lambda_t \mathcal{R}_{temp}\)

其中重建损失 \(\mathcal{L}_{recon,t} = \mathcal{L}_{im,t} + \lambda_m \mathcal{L}_{m,t} + \lambda_f \mathcal{L}_{feat,t}\) 包含 RGB、mask 和 DINO 特征匹配;\(\mathcal{R}_{temp}\) 为时序平滑约束。

阶段二\(\mathcal{L} = \mathcal{L}_{vid} + \lambda_{KL} \mathcal{L}_{KL} + \lambda_{teacher} \mathcal{L}_{teacher}\)

新增 KL 散度约束 \(\mathcal{L}_{KL}\) 和教师损失 \(\mathcal{L}_{teacher} = \sum_t \|\hat{\xi}_t - \tilde{\xi}_t\|_2^2\)(利用阶段一的姿态预测指导 VAE 训练)。

实验关键数据

主实验

3D 运动生成对比(vs 4D-fy)

方法 Motion Strength 用户偏好
4D-fy 0.29 112 (17.0%)
Ponymation 4.66 548 (83.0%)

Ponymation 生成的 Motion Strength 是 4D-fy 的 16 倍,用户偏好率 83%。且 Ponymation 前向推理仅需数秒,4D-fy 每个实例需 12 小时。

单张图像 3D 重建对比(PASCAL + APT-36K)

方法 PCK↑ (PASCAL) Mask IoU↑ PCK↑ (APT-36K) Vel. Err.↓
CSM 31.2% - - -
UMR 24.4% - - -
A-CSM 32.9% - - -
MagicPony 42.8% 64.1% 53.9% 57.3%
Ponymation 48.0% 71.8% 59.9% 49.1%

消融实验

运动生成质量评估(Motion Chamfer Distance,APT-36K)

实验配置 MCD↓
MagicPony + VAE 38.77
MagicPony + VAE + AnimalMotion 38.12
MagicPony + VAE + AnimalMotion + TS(最终模型) 38.03

AnimalMotion 数据集和时序平滑(TS)均对运动质量有正面贡献。

关键发现

  • 从视频学习 vs 从独立图像学习:3D 重建 PCK 从 42.8% 提升到 48.0%(+5.2%),证明视频时序信息的重要价值
  • 速度差距巨大:Ponymation 前向推理数秒 vs 4D-fy 每实例 12 小时(GPU 时间节省 >99%)
  • 运动多样性好:可泛化到马、斑马、长颈鹿、牛等不同四足动物,生成物种特异性运动(如长颈鹿的颈部运动)
  • 已收集 AnimalMotion 数据集:816 个视频片段、82.6k 帧,覆盖 4 种动物

亮点与洞察

  1. 无监督运动学习的突破:首次证明可以从完全未标注的网络视频中学习 3D 铰接运动的生成分布,不需要 SMPL 那样的参数化模型
  2. 时空 Transformer 设计:空间 Transformer 处理骨骼间关系 + 时序 Transformer 捕获运动时序模式,分工明确
  3. 两阶段训练策略:先训好 3D 重建再训运动 VAE,利用教师损失高效引导 VAE 学习,避免了从零开始联合训练的不稳定性
  4. DINO 特征的妙用:同时用于跨实例对应关系建立和骨骼级局部特征提取,一石二鸟

局限性

  • 依赖粗略的骨架描述假设(如"四足动物"),难以处理骨架差异大的动物(如蛇、鸟)
  • 刚体姿态 \(\xi_{t,1}\) 和相机运动混缠,未被运动 VAE 建模
  • 外观网络需要在测试图像上微调 100 步(约 10 秒),仍非完全前向
  • 训练开销仍然较大(阶段一 10 小时 + 阶段二 48 小时,8×A6000)

评分

⭐⭐⭐⭐⭐ (5/5)

  • 新颖性:★★★★★ — 首次从未标注视频学习 3D 动物运动生成模型
  • 技术:★★★★★ — 视频光度-几何自编码框架设计优雅,时空 Transformer + 运动 VAE 架构先进
  • 实验:★★★★ — 新评估指标 MCD 设计合理,用户研究充分,但受限于基线方法较少
  • 影响力:★★★★★ — 为无监督 3D 运动学习开辟了新方向

相关论文