“数字孪生”的梦想——一个外观和动作都和你一模一样、逼真且可动画化的化身——长期以来一直是计算机图形学的圣杯。无论是为了元宇宙、电子游戏还是下一代远程临场技术,对高保真头部化身的需求正在激增。

然而,创建这些化身通常涉及痛苦的权衡。你可以拥有高质量,或者你可以拥有速度,但很难两者兼得。传统方法可能需要昂贵的工作室设备,而最近的神经渲染技术往往需要数小时 (甚至数天) 的训练时间来学习一张面孔。

在这篇文章中,我们将深入探讨 RGBAvatar , 这是一篇打破这种权衡的突破性论文。这种新方法能够在短短 80 秒内从一段简短的单目视频中重建逼真的头部化身,并以惊人的 400 FPS 进行渲染。更令人印象深刻的是,它引入了一种“在线”模式,能够在视频流输入时即时学习化身。

我们将通过结合 3D 高斯泼溅 (3D Gaussian Splatting) 、巧妙的“缩减”混合形状架构以及一些硬核的 GPU 优化,来揭示研究人员是如何实现这一目标的。

问题所在: 数字人的瓶颈

要理解 RGBAvatar 的重要性,我们需要先看看当前头部化身重建的格局。

最近, 3D 高斯泼溅 (3DGS) 席卷了该领域。与网格 (使用三角形) 或 NeRF (使用昂贵的神经网络来查询密度) 不同,3DGS 将场景表示为数百万个 3D“斑点” (高斯体) 。每个斑点都有位置、颜色、不透明度和比例。这使得渲染速度极快。

然而,3DGS 本质上是静态的。要让头部动起来,你需要移动这些高斯体。标准方法是将这些高斯体附着在 3D 可变形模型 (3DMM) 上,例如行业标准的 FLAME 模型。FLAME 提供了一个可以移动的网格 (如下巴张开、眉毛上扬) 。之前的方法本质上是将高斯体“粘”在 FLAME 网格上。

局限性: FLAME 是一个通用模型。它使用一组固定的“混合形状” (预定义的各种面部表情) 。如果你严格依赖 FLAME 的预定义基底,你就会继承它的局限性。为了获得高保真度,你需要大量的参数,这会降低训练和渲染速度。现有的方法难以在不增加计算负担的情况下捕捉皱纹或细微嘴部动作等细节。

解决方案: RGBAvatar

RGBAvatar背后的研究人员提出了一种视角的转变。与其依赖 FLAME 固定、通用的混合形状,为什么不为特定的被建模对象学习一套紧凑的、个性化的混合形状呢?

他们的方法依赖于三个核心支柱:

  1. 缩减高斯混合形状 (Reduced Gaussian Blendshapes): 一种可学习的、紧凑的面部表情表示。
  2. 颜色初始化 (Color Initialization): 一种猜测高斯颜色的巧妙方法,可加速训练。
  3. 批并行光栅化 (Batch-Parallel Rasterization): 一种充分利用 GPU 的硬件优化。

让我们逐一分解。

1. 核心架构: 缩减高斯混合形状

这篇论文的核心在于它如何处理面部表情。在传统设置中,如果你想表现微笑,你会激活 FLAME 模型中的“微笑”混合形状。

RGBAvatar 采取了不同的路线。它使用跟踪到的 FLAME 参数 (告诉我们下巴姿态、眼球旋转等) ,但将它们通过一个轻量级的多层感知机 (MLP)。这个 MLP 充当翻译器。它将通用的 FLAME 参数转换为一组 缩减混合形状权重 (\(\psi\))

然后,这些权重被用来驱动一组 高斯混合形状

展示 FLAME 参数输入 MLP,输出用于混合高斯模型的权重的流程图。

图 2 所示,该流程的工作原理如下:

  1. 输入: 处理视频帧以提取标准的 FLAME 参数 (\(\theta\))。
  2. 转换: 一个 MLP (\(\mathcal{F}\)) 将这些参数映射为缩减权重 (\(\psi\))。
  3. 混合: 系统维护一个“基础”高斯模型 (\(G_0\)) 和一组可学习的“增量”模型 (\(\Delta G_k\))。它们被线性混合在一起。
  4. 变形: 混合后的高斯体根据底层网格的运动进行变换,以确保它们附着在面部上。

最终高斯模型 \(G^\psi\) 的数学公式是一个线性组合:

显示基础模型和加权混合形状线性组合的公式。

这里,\(G_0\) 是中性面孔,每个 \(\Delta G_k\) 代表一个变化 (如扬眉或嘟嘴) 。权重 \(\psi\) 决定了应用多少变化。

为什么要“缩减”?

奥妙在于混合形状的数量 (\(K\))。传统模型可能需要 50 到 100 个通用混合形状才能获得不错的结果。RGBAvatar 仅用少至 20 个混合形状 就达到了最先进的质量。

因为这些混合形状是专门为用户 学习 的 (而不是固定的通用形状) ,所以它们非常高效。它们捕捉到了用户面部的特定特征——比如他们微笑时鱼尾纹是如何形成的。

展示不同对象的多样化表情的学习混合形状的可视化。

图 7 可视化了这些学习到的形状。你可以看到它们并不一定与“张嘴”等标准表情一一对应。相反,网络学习了最有效的基函数来重建该特定人物的运动范围。

研究人员发现 20 个混合形状是“最佳平衡点”。如下图所示,增加数量超过 20 个后,质量 (PSNR) 的收益递减,而训练时间却线性增加。

对比重建质量和训练时间与混合形状数量关系的图表。

2. 通过颜色初始化加速收敛

为了实现“在线”重建 (在视频播放的同时构建化身) ,系统需要极快地学习。标准的高斯泼溅使用随机或中性颜色初始化点,并依赖梯度下降来缓慢找到正确的颜色。

RGBAvatar 引入了一种启发式方法来加速这一过程。研究人员观察到,当 3D 高斯体投影到屏幕上时,本质上就是一个 2D 高斯核。因此,对于高斯体可见的第一帧,可以通过卷积操作直接从输入图像估计其颜色。

使用加权像素值初始化高斯颜色的公式。

该公式通过计算高斯体覆盖像素的加权平均值来计算初始颜色 (\(c^{init}\))。

有无颜色初始化的训练损失对比。

图 4 所示,与标准初始化 (橙色线) 相比,这一简单的改变 (蓝色线) 使得早期阶段的损失急剧下降。这种快速启动对于实时应用至关重要。

3. 批并行高斯光栅化

速度拼图的最后一块是硬件优化。对于高端 GPU 来说,头部化身训练面临一个独特的问题: 场景 太小了

一个头部化身通常使用少于 100,000 个高斯体。像 RTX 3090 这样强大的 GPU 可以在几分之一毫秒内完成渲染。然而,标准的训练循环是渲染一张图像,计算梯度,然后更新。这使得 GPU 巨大的并行计算能力处于闲置状态,等待 CPU 管理循环开销。现有方法的 GPU 利用率通常低于 60%。

RGBAvatar 引入了 批并行高斯光栅化 (Batch-Parallel Gaussian Rasterization)

对比顺序处理、朴素批处理与提出的批并行方法的图表。

RGBAvatar 没有一次处理一帧 (图 5a) ,也没有采用频繁进行 CPU-GPU 同步的朴素批处理 (图 5b) ,而是使用 CUDA 流 并行处理多个帧 (图 5c) 。

因为帧 A 的渲染不依赖于帧 B 的渲染,所以它们可以在不同的流上同时进行光栅化。系统每批次仅同步一次。这将 GPU 利用率推高至 100% , 将训练吞吐量从大约每秒 150 帧提高到 每秒 630 帧

在线重建: 边运行边学习

RGBAvatar 最令人兴奋的应用可能就是 在线重建 。 想象一下加入一个视频通话,在第一分钟内,系统就已经为你建立了一个照片级逼真的 3D 化身,并能完美追踪你的动作。

这里的挑战在于“数据流”。在离线训练中,模型可以打乱整个视频数据集,确保在学习结尾时不会忘记视频的开头。在在线流中,数据是按顺序到达的。如果模型只从最新的帧中学习,它就会遭受 灾难性遗忘 (Catastrophic Forgetting)——一旦你开始微笑,它就会忘记你不说话时是什么样子。

为了解决这个问题,研究人员使用了 局部-全局采样策略 (Local-Global Sampling Strategy) :

  • 局部池 (\(M_l\)): 存储最近的 150 帧。这有助于模型快速适应新的表情。
  • 全局池 (\(M_g\)): 存储历史帧的代表性样本 (使用蓄水池采样) 。这充当“长期记忆”。

在每个训练步骤中,批次包含来自这两个池的混合帧。这确保了化身在适应新数据的同时,保留渲染先前表情的能力。

在线重建与离线方法及真实值的定性结果对比。

图 19 所示,在线重建 (右列) 达到了与离线方法 (中间列) 相当的质量,保留了面部毛发和皮肤纹理等细节。

实验结果

那么,它与竞争对手相比如何呢?研究人员将 RGBAvatar 与 SplattingAvatarFlashAvatarMonoGaussianAvatar 等最先进的方法进行了比较。

视觉质量

视觉结果令人震惊。由于缩减混合形状是针对每个受试者学习的,它们能够捕捉到通用混合形状所遗漏的高频细节。

定性对比显示 RGBAvatar 比竞争对手捕捉到更好的皱纹和嘴部细节。

图 6 中,仔细观察皱纹和口腔内部。其他方法通常会模糊这些区域,或者无法正确闭合嘴唇,因为底层的 FLAME 网格限制了它们。RGBAvatar 捕捉到了深刻的皱纹和嘴唇的精确几何形状。

速度和效率

这才是 RGBAvatar 真正大放异彩的地方。

对比训练时间和渲染 FPS 的表格。RGBAvatar 明显更快。

表 2 揭示了巨大的性能差距。

  • MonoGaussianAvatar 训练需要 9 小时
  • SplattingAvatar 需要 21 分钟
  • RGBAvatar 仅需 81 秒

尽管训练速度极快,它在 RTX 3090 上仍能以近 400 FPS 的速度渲染,完全能够满足高刷新率 VR 应用的需求。

结论

RGBAvatar 代表了数字人创建领域的一个重大飞跃。通过摆脱僵硬、预定义的混合形状,转而采用可学习的、缩减的表示,作者成功地提高了重建保真度,同时大幅降低了计算成本。

算法创新 (缩减混合形状) 和系统工程 (批并行光栅化) 的结合,造就了一个在今天就切实可用的系统。能够在短短一分多钟内——甚至在直播过程中连续地——重建高保真化身,为交互式应用、游戏和虚拟现实远程临场技术打开了无限可能。

尽管仍存在局限性 (例如当头部转动到训练数据中未出现的极端角度时会出现伪影) ,但 RGBAvatar 证明了我们不需要庞大、沉重的模型来实现照片级真实感。我们只需要更智能、更具适应性的模型。