只需1张普通照片,就能合成全角度动态3D视频。
眨个眼、动动嘴,都是小case~
最近AIGC爆火,3D人像模型生成这边也没闲着。
如StyleNerf、StyleSDF、EG3D等方法相继出世。
但到目前为止,这种生成模型都还停留在单帧人像上。
最近,来自新加坡国立大学(NUS)和字节跳动的研究人员,在静态3D模型的基础上,提出了首个3D人像视频生成模型:PV3D(3D model for Portrait Video generation)。
PV3D的训练继承了3D GAN模型的优点,即无需动态的三维数据监督,只需要在足够数量的单视角2D视频数据上进行训练。
该生成框架将人像和动作进行解耦,基于视频的时间戳生成各自的三维表征,让视频可以从任意角度进行渲染。
长视频也能挑战:
3D动态人像生成
PV3D分别从独立的高斯分布中采样随机噪声来表征外表和运动,外表噪声生成视频的主体内容,控制人像的ID以及人脸的各个部分,运动噪声配合视频帧的时间戳控制当前帧的动作。
为了确保生成内容的真实性以及外表和运动的解耦,PV3D训练两个独立的判别器分别判定外表和运动的合理性。
该方法可以生成随机的人像视频以及相应的高质量的动态几何表面,让视频可以从任意角度进行渲染。
同时,该方法可以支持下游的应用任务,比如静态人像驱动,人像视频的重建以及对人像动作的修改,所有的结果均可以保持高的多视角一致性。
主流的3D GAN模型都脱胎于StyleGAN结构。
因此这些模型均会将采样得到的噪声先映射到一个高维度的中间隐式编码(intermidate latent code),大量现有的研究表明这种结构的隐式空间包含了丰富的语义信息,可以用来控制生成的图像内容。
因此,最直接的拓展方式就是使用预训练的单帧3D GAN模型,通过学习一个额外的在隐式空间进行推理的时序模型对生成的内容进行合理的改变,从而生成3D人像视频。
然而,该方法的缺点是图片生成器和时序推理模型在不同的阶段分别被优化,导致最终的视频很难保持时间上的一致性。
另一种主流的视频生成模型使用稀疏训练的方式,在训练阶段直接随机生成视频中的少量帧,使用少数帧的时间戳编码运动信息,进一步的改变中间隐式编码从而一次性优化完整的生成器。
然而这种做法将全部的时序信息都包含在隐式空间中,导致最终的模型多样性较差、生成质量较低。
与上述方法不同,PV3D在原有GAN模型的基础上在特定尺度的生成模块中插入运动信息的编码层,这些编码层独立地将控制运动的噪声映射为隐式编码,使用modulated convolution操纵外表特征,再将操纵后的特征与原始特征融合,从而提高生成视频的时序一致性和运动多样性。
此外,本工作还研究了以下问题:
如何有效地在视频生成任务中利用渲染的视角先验信息
针对3D视频生成,如何设计合理的外表和运动判别器
PV3D模型基于最新的静态3D GAN模型EG3D进行开发,EG3D采用高效的3D表征Tri-plane实现图像生成。
在训练阶段,PV3D采用稀疏训练的策略,对于一个视频采样两个噪声、两个时间戳以及各自时刻对应的相机视角。
相对应的,模型生成两帧对应的3D表征进行渲染得到粗糙的结果。随后使用超分辨率模块将图片上采样。
PV3D设计了两个独立的判别器监督网络的学习,其中视频判别器会编码两帧的相机视角以及时间间隔去判断生成结果的合理性。
实验部分
评价指标
研究人员使用FVD来评估生成视频的质量。此外,为了评估多视角的一致性以及3D几何结构的质量,研究人员将3D GAN工作中常用的评价指标(生成人像的ID一致性、Chamfer距离、多视角的重投影误差)拓展到视频任务中。
与基线的对比
研究人员首先采用同期的3D视频生成工作3DVidGen作为基线。此外,研究人员还基于SOTA的单帧3D GAN (EG3D和StyleNerf) 和2D视频生成模型构建了三个基线模型。在3个公开数据集(VoxCeleb, CelebV-HQ, TalkingHead-1KH)上的实验结果表明,PV3D在生成视频的多样性,3D几何的质量,以及多视角一致性上均超越基线模型。
消融实验
研究人员对PV3D的各部分设计进行了消融实验,例如:运动信息的编码和注入的位置,运动信息的插入方式,相机视角的采样策略,以及视频判别器的设计。
团队介绍
目前,该论文已被ICLR 2023接收。
作者团队由新加坡国立大学Show Lab和字节跳动组成。
论文地址:
https://openreview.net/pdf?id=o3yygm3lnzS
项目主页:
https://showlab.github.io/pv3d/