Journal

VOODOO XP: Expressive One-Shot Head Reenactment for VR Telepresence

Phong Tran, Egor Zakharov, Long-Nhat Ho, Adilbek Karmanov, Ariana Bermudez Venegas, McLean Goldwhite, Aviral Agarwal, Liwen Hu, Anh Tran, Hao Li

Mohamed Bin Zayed University of Artificial Intelligence; ETH Zurich; Pinscreen; VinAI Research

一句话总结

VOODOO XP 是一个实时、3D 感知的单张肖像头部重演系统:它把驱动视频的表情特征直接注入源人像 3D 提升模块的 transformer 块中,配合多阶段自监督训练实现身份与表情的解耦,从而生成高表现力、视角一致的面部重演,并落地为首个端到端双向 VR 远程临场系统。

研究背景

VR/AR 有望取代传统 2D 视频会议,实现沉浸式的 3D 面对面交流。但要在头显里驱动一个逼真的个人化 3D 化身,现有方案都有明显门槛:

  • 高端神经渲染(如 Codec Avatar)依赖复杂的多视角相机阵列或手持扫描,加上数小时到数天的逐人优化,难以日常部署。
  • 单目视频建模方案虽更易用,但仍需几分钟的多表情、多姿态录制,普通用户很难覆盖完整的表情范围。
  • 2D 单张重演方法能即时生成表情,但在新视角下身份和表情会严重漂移,不满足 VR 需要的视角一致性。
  • 已有的 3D 感知单张重演方法(如 VOODOO 3D、Portrait4D 系列)虽能做到视角一致,但受限于线性 3DMM 或用对话音视频数据训练的表情编码器,难以还原复杂、细粒度、非对称的表情(如挤脸、吐舌、单侧挑眉)。

作者的目标是:只用一张不受约束的源肖像,就能实时、视角一致地重演出极富表现力的表情,并把它整合进真正可用的 VR 远程临场系统。

方法

整体框架

系统建立在 tri-plane NeRF 表示之上。核心流程:用一个从 DINO 初始化的视觉 transformer 从驱动图像 \(x_d\) 中提取表情向量 \(e_d\),再用它去直接修改源图像 3D 提升模块(Lp3D)低层分支中间特征,从而改变源 tri-plane 的表情,最后用体渲染器从任意视角渲染重演结果。

flowchart LR
    D[驱动图像 x_d] --> DINO[DINO 表情编码器 E_exp]
    DINO --> E[表情向量 e_d]
    S[源图像 x_s] --> LP[Lp3D 3D 提升模块<br/>权重冻结]
    E --> ET[表情迁移 transformer 块<br/>自注意力 + 交叉注意力]
    LP --> ET
    ET --> TP[源 tri-plane 已改表情]
    CAM[相机位姿] --> VR[体渲染器]
    TP --> VR
    VR --> OUT[视角一致的重演结果]

关键设计 1:直接向 3D 提升模块注入表情

不同于依赖 3DMM 表情系数或人脸关键点、音频等辅助信号的方法,VOODOO XP 直接用驱动图像的 RGB 来估计表情。Lp3D 的低层分支提取头部几何等全局特征,因此在该分支的每个 transformer 块 \(B^{low}_i\) 输出上叠加一个表情 transformer 块 \(B^{exp}_i\):

\[F_i = B^{low}_i(F_{i-1}) + B^{exp}_i(F_{i-1}, e_d)\]

其中 \(B^{exp}_i\) 先对 \(F_{i-1}\) 做自注意力,再与表情向量 \(e_d\) 做交叉注意力。这种直接注入图像级表情信号的做法,使得挤脸、非对称表情、吐舌等复杂表情成为可能,但同时带来身份泄漏(驱动者的发型、头型、肤色泄漏进重演结果)的难题,需靠多阶段训练解决。

关键设计 2:中和损失(Neutralizing Loss)

为消除身份泄漏,作者提出一个中和器 \(\mathcal{N}(x)\),把任意表情/姿态的人脸映射到其中性化 tri-plane 表示,并约束源图像与跨身份重演结果的中和结果一致:

\[L_{neu}(x_{s1}, x_{d2}) = \lVert \mathcal{N}(x_{s1 \rightarrow d2}) - \mathcal{N}(x_{s1}) \rVert\]

关键问题是没有中性化监督数据。受 Noise2Noise 启发,作者证明可在无干净标签下用同身份的成对图像来训练中和器:

\[\mathcal{N}^* = \arg\min_{\mathcal{N}} \mathbb{E}_{x_{s1}, x_{d1}} \lVert \mathcal{N}(x_{s1}) - T_{d1} \rVert\]

其中 \(x_{s1}\) 与 \(x_{d1}\) 同身份且统计独立,\(T_{d1}\) 是预训练 3D 提升模块提取的 tri-plane。当数据充足时,最优 \(\mathcal{N}^*\) 会收敛到给定身份下所有 tri-plane 的平均值,即中性脸表示。

关键设计 3:三阶段训练

  • 阶段一(粗粒度):在 \(128 \times 128\) 分辨率下自监督训练,配合驱动者 3D 提升正面化、强数据增强,以及中和损失,尽力抑制身份泄漏。总损失为 \(L_{stage1} = L_{rec}(x_{s1 \rightarrow d1}, x_{d1}) + \lambda_{neu} L_{neu}(x_{s1}, x_{d2})\),其中 \(\lambda_{neu} = 0.01\)。
  • 阶段二(细粒度):分辨率提升到 \(256 \times 256\),去掉正面化、增强和中和损失以释放表现力;为防止身份泄漏,用第一阶段网络合成跨身份驱动数据(真实图像作源和真值,仅驱动由一阶段模型合成),并加入眼部区域损失 \(L_{eye}\) 改善视线准确度。
  • 阶段三(全局微调):解冻 3D 提升模块,加入投影 GAN 损失(\(\lambda_{GAN} = 0.05\)),并用停梯度算子在线合成驱动,显著提升身份保持和高频细节。

此外系统天然支持可选的少样本微调:给定源人物的额外少量图像(如 10/20/50 张),沿用阶段三策略微调,仅需数十秒即可显著提升相似度与表现力。

VR 远程临场系统

作者搭建了首个基于单张重演的双向沉浸式 VR 系统:用户戴 Meta Quest Pro 头显,靠内置面部追踪(63 个 blendshape,含 7 个舌头,另加每只眼 2 个视线控制)在 Unity 中驱动一个通用正面化人脸模型作为驱动视频,VOODOO XP 再把它转成立体的照片级化身。系统只需传输 63 个 blendshape 值、4 个视线角度和 6DoF 头部位姿,带宽极低。建化身仅需一张照片(约 60 ms),四块 RTX 6000 ADA GPU(每只眼 2 块)可达 \(512 \times 512\) 分辨率下 30 FPS 的立体渲染。

实验结果

作者构建了一个覆盖多姿态、多表情、多族裔与配饰(头巾、墨镜、眼镜)的新评测集:17 名受试者、102 段视频、超 13.7 万帧,经关键点聚类筛选出 20,400 帧。在自重演与跨重演两种设置下与 GOHA、Portrait4D、Portrait4D-v2、VOODOO 3D 等对比:

方法 自重演 FID ↓ 自重演 LPIPS ↓ 自重演 CSIM ↑ 跨重演 CSIM ↑ 跨重演 FID ↓ 跨重演 AED ↓ 跨重演 APD ↓
GOHA 32.20 0.18 0.67 0.63 40.68 6.87 0.096
Portrait4D 51.06 0.21 0.73 0.66 51.24 6.80 0.098
Portrait4D-v2 51.23 0.20 0.77 0.67 50.14 6.53 0.099
VOODOO 3D 48.23 0.21 0.69 0.58 50.30 6.70 0.088
Ours 23.80 0.18 0.75 0.67 25.80 6.31 0.090

VOODOO XP 在自重演的 FID、LPIPS 上最优,跨重演的 FID、AED 也最优,整体图像质量与表情/姿态准确度领先。PSNR/SSIM 上略逊于 VOODOO 3D,但作者指出后者结果偏过度平滑、缺乏高频细节。

消融实验(跨重演)验证各组件价值:去掉中和损失后身份/表情完全无法解耦(CSIM 仅 0.29,FID 高达 98.49);三阶段逐步提升——阶段一 CSIM 0.60 / FID 88.88,阶段二 FID 大幅降到 38.96,阶段三达到 CSIM 0.67 / FID 25.80 的最佳综合表现。此外眼部损失显著改善视线,GAN 损失有效补充高频细节。

亮点与局限

亮点:

  • 直接用驱动 RGB 图像估计表情并注入 3D 提升模块,无需 3DMM 或音频/关键点等辅助信号,能还原挤脸、非对称表情、吐舌、眼镜后挑眉等极端复杂表情。
  • 基于 Noise2Noise 思想的中和损失巧妙解决了无监督数据下的身份泄漏问题。
  • 三阶段”粗到细 + 全局微调”训练兼顾表现力、身份保持与高频细节,且可选少样本微调只需数十秒。
  • 首个基于单张单目重演的端到端双向 VR 远程临场系统,仅需一张照片即可建化身。

局限:

  • 缺乏真实的头发建模与渲染,细发结构存在锯齿伪影(不过竞品同样如此)。
  • 在极端视角和挑战性光照下可能无法正确还原身份。
  • 对分布外数据(浓妆、动物等)会强行幻化出人脸特征。
  • 系统仍依赖连接多 GPU 工作站的 VR 头显,便携性受限;只重建头部,不含后脑和身体。

延伸思考

  • 中和损失本质是把”求同身份下 tri-plane 的期望”当作中性表示的代理目标,这种”用统计独立的成对样本无监督逼近隐变量均值”的思路可以迁移到其他需要属性解耦但缺乏配对标签的生成任务。
  • 把表情信号直接注入冻结的 3D 提升模块,而非重新训练整个表示,是一种解耦”身份/几何先验”与”动态属性控制”的有效范式,对可控生成有借鉴意义。
  • 系统只传输极低维的 blendshape + 位姿参数、在本地做神经渲染的架构,是低带宽沉浸式通信的现实路径;未来若结合 Gaussian splatting 化身与 360 度头部/身体建模,有望突破当前分辨率与覆盖范围的限制。
  • 高可及性(单图建真人化身)同时意味着深度伪造滥用风险,作者承诺将模型与数据分享给伪造检测社区,这类”能力发布 + 防御协同”的做法值得关注。