3D人脸重建之3D-Face-GCNs

论文:Towards High-Fidelity 3D Face Reconstruction from In-the-Wild Images Using Graph Convolutional Networks

Github:https://github.com/FuxiCV/3D-Face-GCNs

3D人脸重建之3D-Face-GCNs_第1张图片

论文提出了使用图卷积神经网络GCN(Graph Convolutional Networks)对3DMM方法 (3D Morphable Model) 重建生成的纹理进行改进的方法。并且这里只重建mesh的顶点颜色,而不是重建整个的uv图。

 

主要贡献

  1. 提出了使用单张图片,基于 coarse-to-fine的框架重建高保真纹理的3d人脸,并且不需要大量的高清人脸数据。
  2. 首次提出使用图卷积来生成高保真的纹理,可以生成人脸mesh中每一个定点的细节颜色。
  3. 相比其他state-of-the-art 的方法,我们的方法在定性和定量上都比其他方法更好。

 

Morphable 3D Face Models

3dmm方法,由人脸形状,表情,纹理,构成。其中, Basel Face Model (BFM)模型是3dmm模型的变种。

Smean:平均人脸形状,从BFM获得

Tmean:平均人脸纹理,从BFM获得

Ibase:PCA降维后的人脸ID,从BFM获得

Ebase:PCA降维后的人脸表情,从 FaceWarehouse 获得

Tbase:PCA降维后的人脸纹理,从BFM获得

 

网络结构

3D人脸重建之3D-Face-GCNs_第2张图片

整体3D-Face-GCNs由3个模块组成,人脸识别FaceNet模块,特征提取Regressor模块,纹理精修GCN模块。黄色的模块表示预先训练好的,灰色的模块是不可训练的,蓝色的模块是可以训练的。

输入图片为224*224,mesh的顶点一共35709个。

FaceNet模块生成人脸的embedding 向量。

Regressor模块回归3dmm的相关参数,姿态,光照等。一共回归257维向量。其中,3dmm的ID 80维,表情64维,纹理80维,人脸姿态6维,光照27维。

GCN模块由3部分组成。GCN Decoder解码FaceNet的人脸识别特征,并且生成详细的mesh顶点颜色。GCN Refiner精修Regressor模块生成的mesh顶点颜色。 Combine Net负责将GCN Decoder和GCN Refiner的mesh顶点颜色进行整合,输出最终的mesh顶点颜色

判别器将3dmm的结果和3D-Face-GCNs精修的结果进行对比,实现监督训练。

 

损失函数

Pixel-wise Loss

3D人脸重建之3D-Face-GCNs_第3张图片

为了排除遮挡,眼镜,脸上覆盖物的影响,首先使用一个训练好的分割模型提取出人脸皮肤区域。然后计算输入图片和带光照渲染的重建后3d人脸图片的2d投影图片之间的距离。

Identity-Preserving Loss

保证输入图片和渲染图片人的ID属性一样。

 

Vertex-wise Loss

保证输入图片和渲染图片的每一个mesh定点的反射率一样。N表示一共的定点数目。

 

Adversarial Loss

3D人脸重建之3D-Face-GCNs_第4张图片

基于 Wasserstein GAN 的对抗loss

 

整体loss

3D人脸重建之3D-Face-GCNs_第5张图片

σ2 = 0.2 ,σ3 = 0.001

刚开始训练  σ1 = 0, σ4 = 1,再进行了1个epoch的训练后,σ1 逐渐增大为1,σ4逐渐减少为0。

 

实验结果

3D人脸重建之3D-Face-GCNs_第6张图片

 

 

 

 

 

 

 

你可能感兴趣的:(人脸增强)