近日,商汤-港中文联合实验室提出基于风格化对抗生成器的人脸渲染器,用于取代传统图形学基于栅格化的渲染器来进行3D模型的重建。该方法构建了一种从输入3D模型到生成图像的平滑梯度,同时可以以低精度建模获得渲染更高质量的图像。与此同时,通过对生成网络式的渲染器反向传播算法,能够获得更具有图像细节特征的重建人脸3D模型。
-
论文名称:Inverting Generative Adversarial Renderer for Face Reconstruction
-
论文链接:https://arxiv.org/pdf/2105.02431.pdf
-
项目链接:https://github.com/WestlyPark/StyleRenderer
从左到右:source video, face reconstruction results, generated normal maps
01
导言
从单目人脸图像获得人脸的3D模型是一项颇具挑战的任务。它以一张RGB图像作为输入,重建相应的三维人脸网格。传统方法为了使得得到的3D模型更接近真实图像,一般采用图形学中基于栅格化的渲染来进行模型参数的优化。一方面为了尽可能的将模型逼近图像,会采用更高自由度的参数化模型表达人脸的表面纹理,另一方面,在渲染结果比对上会采用模糊化的方式使渲染结果与图像之间的差异以一种可微分的方式传递给3D模型。
图1 不同渲染器的渲染效果对比
然而,主要基于图形学基础的可微渲染器简化了真实世界中光照、反射等的真实机制,因而难以生成足够真实的图像。如图1所示,第二列到第五列的方法的渲染效果都不真实,这给优化或训练过程带来了大量的噪声。
为了使得从3D模型的几何信息到生成图像的颜色变化之间的关系更准确和连续,该工作提出了一种基于对抗生成网络的方式进行3D模型的渲染。利用该渲染器可以得到更真实的图片渲染结果,同时具有更合适的微分性能能够进行更好的3D模型参数的提取。
02
基于生成网络的渲染器
受最近基于StyleGAN的真实人脸生成器的启发,为了实现人脸几何参数受控的生成器,文章提出了基于3D人脸几何信息的渲染模块,在保持用随机隐变量生成纹理的同时显示地加入了人脸的几何信息。
图2 整体网络结构
具体来说,对于每个模块的4维输入特征(批次、通道数、长、宽),StyleGAN2提出在通道数上面进行风格的注入,以达到对生成结果的调控,而在长宽的图像维度上,文章提出同时注入与人脸几何相关的法向量信息,以监督整个人脸的在图像中的位置和五官的分布。该注入以乘积的形式添加保持特征图在不同几何信息的位置具有针对性的响应。
图3 渲染模块网络结构
为了使得生成网络得到图像的几何属性与输入条件的一致性,文章利用几何学方法渲染一批合成人脸训练了一个法向量监督网络(SfSNet)作为弱监督保持法向量的近似一致性。由于生成网络本身对于人脸几何信息的添加方式导致人脸3D模型参数和生成图像的结果之间的关系在优化时更容易建立起来。
文章还提出为了控制生成图像的纹理信息和人脸的几何信息能够解耦,在训练过程中采用交换几何信息和注入变量信息的方式,并利用预训练的关键点检测保持人脸几何信息的一致性和人脸识别网络提取的特征保持纹理信息的一致性。
图4 不同隐变量的渲染效果
训练好的生成式渲染器(GAR)可以根据不同的法向图和隐编码渲染出对应的图像,如图4所示。
03
基于反向渲染的人脸重建技术
反向渲染技术可以充分利用生成式渲染器的优势,以生成与给定图像相似的图片为目标,反推出输出的人脸形状与纹理。
为了解决同时优化人脸参数模型和在生成器中使用的表征人脸纹理的隐变量的问题,文章设计了与生成器结构对称的回归网络来估计隐变量的初始优化值。在此基础上,进行网络本身相对于输出图像的梯度反传进行人脸几何参数的优化,进而得到更具细节的人脸3D模型。
人脸重建效果的对比如下图所示。由于生成式渲染器的引入消除了渲染图片与目标图片之间的偏差,因此渲染图片与目标图片之间的距离可以更好反映渲染器的法向输入与真实3D几何之间的差异,从而使该方法获得了比之前方法更精准的人脸重建结果。
图5 人脸重建效果对比
04
应用
该方法不仅在相关数据集上取得了重建精度比较好的效果,而且能够在优化参数后根据修改人脸的几何信息对生成图像进行编辑。在后续对于类似难以建模的物体进行3D提取的过程中可能有更好的应用。
图6 人脸编辑效果
05
总结
该论文实现了单目图像人脸重建的新突破,提出一个更真实的生成式渲染器(GAR)与一种反向渲染以实现人脸重建的方法。生成式渲染器的渲染效果比传统图形学渲染器更加真实,从而减小渲染图片与真实图片之间的差异。而反向渲染技术充分利用所提出的生成式渲染器的优势,以生成与给定图像相似的图片为目标,反推出输出的人脸形状与纹理。
该算法不但在点云的平均误差上达到目前人脸重建领域的领先效果,在几何的相似度和精细度上也大大超越已有方法。该论文代码已开源,快用你自己的照片试试吧!