跳转至

DNF: Unconditional 4D Generation with Dictionary-Based Neural Fields

会议: CVPR 2025
arXiv: 2412.05161
代码: https://xzhang-t.github.io/project/DNF
领域: 图像生成 / 3D视觉
关键词: 4D生成, 字典学习, 神经场, 形变建模, 扩散模型

一句话总结

DNF 提出了一种基于字典学习的 4D 神经场表示,通过 SVD 分解-压缩-扩展的 MLP 参数字典实现形状与运动的解耦紧凑编码,配合 Transformer 扩散模型实现无条件 4D 形变物体生成,在 DeformingThings4D 上达到 SOTA。

研究背景与动机

领域现状:3D 生成模型已取得显著进展,但 4D(3D + 时间/运动)生成仍极具挑战。现实世界中物体是动态的,需要同时建模形状和运动才能支持内容创作、混合现实、仿真等应用。

现有痛点:(1) 模板化参数模型(如 SMPL 用于人体)虽然鲁棒,但受限于特定类别,无法泛化到一般的形变物体;(2) 单物体优化的坐标 MLP 能重建高精度细节,但不同物体的权重空间缺乏共享结构,不利于生成模型学习;(3) 基于全局潜码的多物体学习虽然有共享结构,但容易丢失个体的高保真细节;(4) HyperDiffusion 直接在 MLP 权重空间做扩散,因缺乏共享结构导致生成质量受限;Motion2VecSets 使用向量集合但压缩和保真度的平衡不够理想。

核心矛盾:4D 表示需要同时满足三个目标——高保真度(fine-grained detail)、连续性(支持插值和生成)和压缩性(紧凑表示),三者难以兼顾。全局潜码有连续性但缺细节,逐物体优化有细节但缺连续性。

本文目标:设计一种 4D 表示,能同时实现形状保真度、表示空间连续性和编码紧凑性的平衡,支持高效的无条件 4D 扩散生成。

切入角度:将 MLP 权重看作字典的线性组合——通过 SVD 分解将全局优化的 MLP 参数拆成共享字典(奇异向量矩阵)和逐实例系数(奇异值向量)。冻结字典、只微调系数,既保持了共享结构的连续性,又允许逐实例的细节适配。

核心 idea:用 SVD-based 字典学习解耦 4D 表示为共享字典 + 逐实例潜码和系数向量,再通过 Transformer 扩散模型在此紧凑表示上进行无条件4D生成。

方法详解

整体框架

方法分两大阶段:(1) 4D 表示学习——先预训练形状和运动 MLP(学习全局潜空间),再通过 SVD 构建字典并逐实例微调系数向量;(2) 扩散生成——用 Transformer 扩散模型分别对形状和运动的表示进行无条件生成。最终每个 4D 序列用潜码 + 系数向量列表紧凑表示。

关键设计

  1. 解耦的形状-运动神经场:

    • 功能:将 4D 形变物体分解为静态形状和时变运动两个独立的潜空间
    • 核心思路:形状 MLP \(f_{\Theta_s}(s_i, x)\) 以形状潜码 \(s_i\) 和空间坐标为输入,预测 SDF 值。运动 MLP \(f_{\Theta_m}(s_i, m_i^t, x)\) 以形状潜码、运动潜码和坐标为输入,预测从初始帧到第 \(t\) 帧的 3D flow。不假设标准姿态,直接使用序列第一帧作为标准形状
    • 设计动机:形变物体的形状在整个序列中保持不变,只有运动随时间变化。解耦后可以独立地生成形状和运动,也可以对已有形状生成新运动
  2. SVD 字典学习与压缩-扩展:

    • 功能:在保持权重空间连续性的同时实现逐实例的高保真度
    • 核心思路:对预训练的 MLP 权重矩阵逐层做 SVD:\(W_\ell = U_\ell \Sigma_\ell V_\ell^T\)。将奇异向量矩阵 \(U, V\) 视为共享字典(冻结),奇异值 \(\sigma\) 视为逐实例系数(微调)。为提高效率和表达力,先压缩——去掉小奇异值对应的字典元素(保留前 \(k\) 个),再扩展——添加低秩残差矩阵 \(\Delta\Theta = U_{res} \Sigma_{res} V_{res}^T\),残差的奇异向量也作为字典元素。通过正交化损失 \(\mathcal{L}_{orth}\) 约束残差矩阵的奇异向量保持正交,确保字典元素不冗余
    • 设计动机:直接在所有样本上微调全部 MLP 参数会破坏权重空间的连续性(不同物体的权重没有共享结构),导致生成模型无法学习有意义的分布。字典方法将变化限制在系数上,保证了连续性;压缩去冗余,扩展补细节
  3. Transformer 扩散模型(形状+运动):

    • 功能:在字典表示空间中进行无条件 4D 生成
    • 核心思路:形状表示为 \(L+1\) 个 token(1 个潜码 + \(L\) 层系数向量),直接作为 Transformer decoder 的输入。运动生成时,在子序列(6帧窗口)上训练,条件为对应形状的潜码(通过交叉注意力注入),并增加时间维度的自注意力保证帧间连贯。推理时通过滑动窗口外推生成更长序列(用最后 2 帧作为上下文,生成后续 4 帧)
    • 设计动机:字典表示天然形成 token 序列,适合 Transformer 处理。运动条件于形状确保生成的运动与形状匹配。滑动窗口外推允许生成超过训练长度的序列

损失函数 / 训练策略

形状重建使用 clamped L1 损失(聚焦表面附近区域),运动用 L1 flow 损失。字典微调时形状 1000 epochs、运动 400 epochs。扩散模型使用简单去噪目标 \(\mathcal{L}_{simple} = E[||\theta_s - \hat{\theta_s}||^2_2]\)。在 2x RTX A6000 上训练 1000 epochs 约一天。形状 MLP 为 8 层 512 维,运动 MLP 为 8 层 1024 维,潜码维度 384。

实验关键数据

主实验

方法 MMD ↓ COV(%) ↑ 1-NNA(%) ↓
HyperDiffusion 16.0 45.9 63.5
Motion2VecSets 18.7 48.1 68.2
DNF (Ours) 15.3 54.1 58.2

消融实验

配置 说明
无字典(仅全局潜码) 形状细节丢失严重,生成物体表面过于光滑
有字典无压缩-扩展 字典冗余导致效率低,细节改善有限
有字典+压缩(无扩展) 去掉冗余后更高效,但表达力受限
完整 DNF(压缩+扩展+正交化) 最佳保真度-压缩率平衡

关键发现

  • DNF 在所有三个生成质量指标上均显著优于baseline:MMD 降低 4.6%(vs HyperDiffusion),COV 提升 17.9%,1-NNA 改善 8.3%
  • HyperDiffusion 直接在 MLP 权重空间做扩散,因缺乏共享结构导致生成质量受限。DNF 的字典方法通过引入共享结构大幅提升了效果
  • Motion2VecSets 虽然也使用潜向量集合,但在无条件生成设置下表现不如 DNF
  • 字典的压缩-扩展策略至关重要:压缩去掉冗余、扩展补充细节,两者缺一不可
  • 方法可以为训练时未见过的物种生成新运动,展示了形状-运动解耦带来的泛化能力
  • 通过扩散外推可以生成超过训练窗口长度的动画序列

亮点与洞察

  • SVD 字典学习在神经场表示中的应用非常巧妙。将 MLP 权重的 SVD 重新诠释为字典分解(奇异向量=字典元素,奇异值=系数),是对 LoRA 等低秩方法的一种新诠释和扩展。这种思想可以推广到任何需要在 MLP 参数集合上做生成的场景
  • 压缩-扩展策略的设计体现了很好的工程直觉:先精简再补新,比直接用完整 SVD 或从零学新字典都更有效。正交化损失确保了字典质量
  • 运动外推通过滑动窗口实现,简单但实用,使得训练在短序列上而推理可以生成任意长度

局限与展望

  • 仅在 DeformingThings4D 上评估,该数据集主要包含动物类形变物体,泛化到其他类型(布料、流体等)尚不清楚
  • 仅支持无条件生成,缺乏文本/图像条件引导,应用场景受限
  • 形状表示使用 SDF,对拓扑变化的建模能力有限
  • 生成的运动长度受限于滑动窗口策略的累积误差,长序列质量可能退化

相关工作与启发

  • vs HyperDiffusion: HyperDiffusion 直接在逐物体优化的 MLP 权重上做扩散,缺乏共享结构导致生成质量差。DNF 通过字典引入共享结构,是对 HyperDiffusion 的重要改进
  • vs Motion2VecSets: 使用潜向量集合表示 4D,但在保真度-压缩率的平衡上不如 DNF 的字典方法
  • vs NPMs: DNF 的形状-运动解耦延续了 NPMs 的思路,但通过字典学习显著提升了细节质量

评分

  • 新颖性: ⭐⭐⭐⭐ SVD字典学习在4D神经场中的应用新颖,压缩-扩展策略有创意
  • 实验充分度: ⭐⭐⭐ 仅一个数据集,baseline数量有限,消融不够详细
  • 写作质量: ⭐⭐⭐⭐ 方法描述清晰,公式推导完整
  • 价值: ⭐⭐⭐⭐ 为4D生成提出了有效的表示学习方案

相关论文