跳转至

EDTalk: Efficient Disentanglement for Emotional Talking Head Synthesis

会议: ECCV2024
arXiv: 2404.01647
代码: tanshuai0219/EDTalk
领域: audio_speech
关键词: talking head generation, facial disentanglement, emotional expression, orthogonal bases, audio-driven

一句话总结

提出基于正交可学习基向量的高效解耦框架 EDTalk,将人脸动态分解为嘴型、头部姿态和情感表情三个独立潜空间,同时支持视频驱动和音频驱动的情感说话人头像生成。

背景与动机

说话人头像(talking head)生成在教育、影视、虚拟数字人等领域有广泛应用。现有方法主要存在三个局限:

  1. 整体生成、缺乏细粒度控制:大多数方法以整体方式生成说话人脸视频,无法对嘴型、头部姿态、情感表情做独立操控
  2. 单一驱动模态:现有工作通常仅支持音频驱动或视频驱动其中之一,限制了多模态应用场景
  3. 解耦方法效率低下:已有面部解耦方法或过度依赖外部先验(如3D重建系数、对比学习用的额外音频数据),或缺乏空间间内在约束导致解耦不彻底,或解耦新子空间时需要从头训练整个重量级网络

作者认为理想的解耦空间应满足两个条件:(a) 各空间不相交,每个空间只捕获对应组件的运动而不受其他组件干扰;(b) 从视频数据中解耦出的空间应可存储并与音频输入共享。

核心问题

如何在不依赖外部先验信息的情况下,高效地将人脸运动分解为嘴型、头部姿态和情感表情三个互不干扰的独立潜空间,并实现视频/音频双模态驱动?

方法详解

整体框架

EDTalk 基于自编码器架构,由编码器 \(E\)、三个 Component-aware Latent Navigation(CLN)模块和生成器 \(G\) 组成。给定身份图像 \(I^i\) 和不同驱动源 \(I^m, I^p, I^e\)(分别控制嘴型、姿态、表情),编码器将图像映射到潜在特征,CLN 模块将其转换为对应的运动特征。

核心设计——可学习正交基向量:每个 CLN 模块维护一组可学习基向量 bank \(B^* = \{b_1^*, \dots, b_n^*\}\)。运动通过基向量的线性组合表示:

\[f^{r \to *} = \sum_{i=1}^{n} w_i^* b_i^*\]

其中权重 \(W^* = \text{MLP}^*(f^{* \to r})\) 由轻量 MLP 从潜在特征预测。关键约束是: - 空间内正交:同一 bank 内不同基向量互相正交 \(\langle b_i^*, b_j^* \rangle = 0 \ (i \neq j)\) - 空间间正交:三个 bank(\(B^m, B^p, B^e\))之间的基向量也互相正交

这保证了不同面部组件的独立控制,且可直接将三个空间的特征相加得到完整驱动特征。

高效解耦策略

第一阶段——嘴型与姿态解耦:采用交叉重建(cross-reconstruction)策略。对两帧图像 \(I^a\)\(I^b\),交换嘴部区域生成合成图像,再通过 PLN 和 MLN 分别提取姿态和嘴型特征,交叉组合后重建原始图像。训练使用重建损失 \(\mathcal{L}_{rec}\)、感知损失 \(\mathcal{L}_{per}\)、对抗损失 \(\mathcal{L}_{adv}\),以及特征级余弦相似度约束 \(\mathcal{L}_{fea}\)。收敛后冻结参数不再更新。

第二阶段——表情解耦:采用自重建互补学习(self-reconstruction complementary learning)。利用第一阶段已冻结的 \(E\)、MLN、PLN、\(G\) 从驱动图像提取嘴型和姿态信息生成中间结果(缺失表情),新引入的 ELN 模块被迫学习互补的表情信息来完成重建。同时引入轻量情感增强模块(EEM),通过 AdaIN 操作将表情特征注入身份特征。此阶段仅训练 ELN 和 EEM,效率极高。

Audio-to-Motion 模块

解耦完成后,三个 bank 中存储的基向量作为视觉先验,供音频驱动使用:

  1. 音频驱动唇部生成:音频编码器 \(E_a\) 提取音频特征,MLP 预测嘴型 bank 的权重 \(\hat{W}^m\),训练使用特征损失 + 重建损失 + SyncNet 同步损失
  2. 基于流模型的概率姿态生成:使用 Normalizing Flow 建模音频到头部姿态的一对多映射,从高斯分布采样生成多样化且符合音频节奏的头部运动
  3. 语义感知表情生成:融合 HuBERT 提取的语音情感特征和 EmoBERTa 提取的文本情感特征,预测表情权重 \(\hat{W}^e\)。训练时随机遮蔽单一模态以支持推理时仅有音频或文本

实验关键数据

在 MEAD 和 HDTF 数据集上评估,与 13 种 SOTA 方法对比:

指标 EDTalk-A(音频驱动) EDTalk-V(视频驱动) 最佳对比方法
PSNR (MEAD) 21.628 22.771 PD-FGC: 21.520
SSIM (MEAD) 0.722 0.769 StyleTalk: 0.714
M-LMD (MEAD) 1.537 1.102 PD-FGC: 1.571
FID (MEAD) 17.698 15.548 EAT: 21.465
Acc_emo (MEAD) 67.32% 68.85% EAT: 64.40%
PSNR (HDTF) 25.156 26.504 PD-FGC: 23.142

训练效率对比(核心亮点):

  • EDTalk 嘴型-姿态解耦:15.8h 数据,2×3090 GPU,4K iterations,约 1小时
  • DPE:351h 数据,8×V100 GPU,150K iterations,超过 2天
  • PD-FGC:唇部解耦 2天 + 姿态解耦 2天 + 表情解耦 2周(4×V100 GPU)

用户研究(20人评分,1-5分):EDTalk 在唇部同步(4.13)、真实感(4.92)、情感准确性(64.5%)均为最优。

消融实验验证: - 去掉 bank → 解耦失败,图像质量大幅下降(PSNR: 20.302 vs 21.628) - 去掉正交约束 → 空间间干扰,情感准确率降至 38.71%(vs 67.32%) - 去掉 EEM → 表情表现力下降(Acc_emo: 49.37% vs 67.32%)

亮点

  1. 正交基向量的潜空间设计:用可学习基向量表征面部运动方向,正交约束优雅地保证空间独立性,比对比学习等外部约束更简洁且效果更好
  2. 极高的训练效率:渐进式训练策略中每个阶段只训练轻量模块,嘴型-姿态解耦仅需 1 小时,比 PD-FGC 快两个数量级
  3. 统一支持音频和视频双模态驱动:bank 中的基向量作为共享视觉先验,自然桥接视频驱动到音频驱动的迁移
  4. 首次从音频语义自动推断表情:无需额外的表情参考图/视频,直接从语音语调和文本内容生成与内容一致的情感表达

局限性 / 可改进方向

  1. 解耦仍以三个固定组件(嘴型、姿态、表情)为划分粒度,未考虑眼神、皱眉等更细粒度的面部动作单元(AU)
  2. 嘴部区域交换依赖图像级操作(叠加嘴区域),对极端姿态或遮挡情况可能不够鲁棒
  3. 表情空间的语义感知依赖预训练模型(HuBERT、EmoBERTa),对训练数据中未覆盖的情感类型泛化能力有待验证
  4. 头部姿态生成使用 Normalizing Flow,在极长视频中可能出现运动漂移或不自然周期性
  5. 训练虽高效但仍需多阶段,端到端联合训练方案值得探索

与相关工作的对比

方法 解耦粒度 外部先验依赖 训练效率 表情控制 双模态支持
PC-AVS 嘴+姿态 对比学习+6D姿态
PD-FGC 嘴+姿态+表情 对比学习+3DMM 极低(2周+)
DPE 姿态+表情 双向循环训练 低(2天+)
EAT N/A 离散情感标签 粗粒度
EDTalk 嘴+姿态+表情 无需外部先验 高(1h+6h) 细粒度

EDTalk 的关键优势在于不依赖外部先验信息(如 3DMM、额外音频数据),仅通过正交约束和渐进训练实现完整解耦。

启发与关联

  • 正交基向量表征运动空间的思路可迁移到其他需要解耦控制的生成任务(如身体动作生成、手势合成)
  • 渐进式解耦训练策略(先解耦主要成分,再利用互补学习解耦残差成分)具有通用性
  • bank 作为离散化视觉先验的思路类似于 VQ-VAE 的 codebook,可进一步与 quantization 方法结合
  • 概率性姿态生成的 Normalizing Flow 方案可启发其他一对多映射任务(如音频驱动手势生成)

评分

  • 新颖性: ⭐⭐⭐⭐ — 正交基向量解耦与效率训练策略是主要创新点
  • 实验充分度: ⭐⭐⭐⭐⭐ — 对比 13 种方法,包含定量/定性/消融/用户研究/效率分析
  • 写作质量: ⭐⭐⭐⭐ — 动机清晰,方法描述完整,图表丰富
  • 价值: ⭐⭐⭐⭐ — 统一框架首次实现高效解耦+双模态驱动+情感生成