模型|MDFR :基于人脸图像复原和人脸转正联合模型的人脸识别方法( 二 )


(1)双代理生成器
双代理生成器包含一个人脸复原子网络(Face Restoration sub-Net, FRN)和一个人脸转正子网络(Face Frontalization sub-Net, FFN)。FRN网络的作用是将低质量人脸图像重建为高质量人脸图像,而FFN网络将FRN生成的侧脸图像进行转正。其中每个子网络均包含一个编码器和解码器,前者用来将输入映射到特征空间,而后者主要将编码后的特征重建为相应的目标人脸图像。两个子网络具有相同的网络结构,但是输入有所不同。FRN的编码器对输入的人脸图像进行编码,随后解码器对编码器的特征进行解码。FFN的解码器的输入除了人脸的编码特征外,还包含人脸两种姿态的编码残差,如图2所示。
模型|MDFR :基于人脸图像复原和人脸转正联合模型的人脸识别方法
文章插图
图2生成网络的网络结构
(2)姿态归一化模块
作者设计了一个姿态归一化模块(PNM)对姿态进行归一化。PNM提供了标准的、并且尺度统一的真实正面姿态来来引导人脸转正。基于3D形变模型(3D Morphable Model, 3DMM),二维人脸图像对应的三维顶点可以通过人脸正交基线性加权相加而得到:

通过尺度正交映射将三维人脸顶点映射到二维图像平面,二维侧脸人脸图像可以表示为:
其中,参数是相应的旋转矩阵,t 为平移向量。当移去旋转矩阵和平移向量后,归一化后真实转正的人脸密集二维坐标可以表述为:
在文章中,作者使用3D人脸转正方法 2DAL 从一张给定的二维人脸图像中获取人脸密集坐标,最后选取18个常用的关键点来生成相应的高斯热力图(Gaussian Heatmaps)。
(3)双代理先验引导判别器
在人脸超分辨率领域使用的判别损失能够很好的提高重建人脸的真实度。因此,在本文中,作者在判别器中加入两种额外的先验信息:目标人脸的landmarks以及正脸的身份特征图,使得生成的人脸不仅能够获得目标姿态,还具有真实的身份信息。对应的判别器分别为PCD(Pose Conditioned Discriminator)以及ICD(Identity Conditioned Discriminator)。
在实现过程中,作者将两种先验信息分别作用到输入判别器中引导人脸的生成,然后再输入到相应的判别器中进行判别损失的求解。PCD和ICD不仅可以区分真实人脸和生成的人脸,同时可以学习到真实人脸和生成人脸的姿态和身份差异。
(4)网络训练
网络的训练主要分为两个阶段:Separate Training和TI Training。
Separate Training:文章首先分别训练FRN和FFN两个子网络,两个训练过程分别简写为FRN-S和FFN-S。FRN-S训练过程中所用到的损失函数如下:
身份信息损失:
模型|MDFR :基于人脸图像复原和人脸转正联合模型的人脸识别方法
文章插图
重建像素损失:
总的损失:
FFN-S训练过程中所用到的损失函数如下:
转正损失:
模型|MDFR :基于人脸图像复原和人脸转正联合模型的人脸识别方法
文章插图
条件对抗损失:
模型|MDFR :基于人脸图像复原和人脸转正联合模型的人脸识别方法
文章插图
总的损失:
Task-Integrated (TI) training:在FRN和FFN完成了相应的分开训练后,作者在预训练模型的基础上进行整合训练。在这个阶段,作者使用FFN模型的输出作为ground-truth来训练FRN。同时,使用PNM归一化后的真实转正面部landmarks来引导FFN中人脸的转正。为了生成更好的人脸效果,在这一阶段作者还使用了特征对齐损失(Feature Alignment Loss, FA),具体的定义如下:
模型|MDFR :基于人脸图像复原和人脸转正联合模型的人脸识别方法
文章插图
整体的训练损失函数为: