Super-FAN:Integrated facial landmark localization and super-resolution of real-world low resolution faces in arbitrary poses with GANS

这篇论文主要做出了五点贡献:

  1. 提出Super-FAN:一个同时提高人脸分辨率并进行人脸对齐的端到端系统,主要通过热图回归(Heatmap Regression)整合子网络进行人脸关键点定位,然后进入基于GAN的超分辨率处理网络,并将其并入到一个新的热图损失中。
  2. 展示了联合训练两个网络在处理任意人脸姿势的生成图像以及真实世界的低分辨率图像上的优势
  3. 提出了一个改进的残差网络结构来得到较好的超分辨率图像
  4. 首次提交了处理LS3D-W数据集各种人脸姿势的结果,并在超分辨率和人脸对齐方面做出了领先的结果。
  5. 首次在真实世界的低分辨率人脸图像(WiderFace数据集)上做出了良好的视觉效果

作者提出的网络结构主要由三个连接在一起的子网络构成:第一个是超分辨率网络,用于提升LR图像的分辨率;第二个是一个判别器网络,用于区别得到的超分辨图像和原始LR图像;第三个是FAN网络,是一个在超分辨率图像上进行人脸关键点定位的人脸对齐网络。其中超分辨率网络和判别器网络构成一个GAN模型,如下图所示:

Super-FAN论文阅读

超分辨率网络(Super-resolution network)

受到"C. Ledig et al,Photo-realistic single image super-resolution using a generative adversarial network. In CVPR, 2017."中提出的SR-ResNet的启发,作者在SR-ResNet的基础上提出了一个新的残差网络结构用于超分辨率,两者网络结构对比如下:

Super-FAN论文阅读

残差块的组成分布:Per-block layer distribution

顺应SR-ResNet的设计,输入和输出的分辨率分别为16×1616\times 1664×6464\times 64。根据上图,可以看到SR-ResNet中有16个残差块作用的分辨率16×1616\times 16的数据上,1个残差块作用的分辨率为32×3232\times32的数据,1个残差块作用的分辨率为64×6464\times 64的数据,即16-1-1结构,可将其推广为N1N2N3N_1-N_2-N_3结构。如上图所示,作者的改进是将网络结构调整为12-3-2结构,增加了对32×3232\times 3264×6464\times 64维特征的块处理,之所以这样调整的原因是作者希望通过增加残差块来处理较高维特征,从而增强高分辨率图像上的细节,尤其是处理场景复杂的图像。

建立残差块结构:Building block architecture

作者实验了一些残差块的变体,最终选择的残差块结构为如下结构:

Super-FAN论文阅读

其中包含了两个3×33\times3的卷积层,卷积层后面都接着一个batch normalization层。另外,作者通过实验发现SR-ResNet使用的PReLU**函数相对于ReLU**函数并没有多少改进,因此,在作者的模型中,整个网络结构都使用ReLU作为**函数。

去除长连接:On the “long” skip connection

SR-ResNet中,将16个作用于原始分辨率图像的残差块分配到一个大块中,然后在该大块的第一块和最后一块增加一个skip连接,试图以此来改进梯度流。但是作者认为,每一层都是在处理上一层的表示特征,是一个渐进的过程,低层次特征会影响到上层特征的处理,而且低层次特征的注入对整体效益几乎没有特别好的影响。因此,作者选择去除这个skip connection。

像素和感知损失(Pixel and perceptual losses)

像素损失(Pixel loss):给定一个低分辨率图像ILRI^{LR}(分辨率为16×1616\times16),其对应一个高分辨率图像IHRI^{HR}(分辨率为64×6464\times64),使用像素化MSE损失来最小化两个图像之间的距离,形式化定义如下:
lpixel=1r2WHx=1rWy=1rH(Ix,yHRGθG(ILR)x,y) l_{pixel}=\frac{1}{r^2WH}\sum_{x=1}^{rW}\sum_{y=1}^{rH}\left(I_{x,y}^{HR}-G_{\theta_G}(I^{LR})_{x,y}\right)
其中WWHH表示ILRI^{LR}的尺寸,rr是上采样因子(upsampling factor)。

感知损失(Perceptual loss):当像素化MSE损失达到高PSNR值时,这时的结果通常缺少细节,图像模糊且不现实。在之前的工作中,有人提出了perceptual loss用于解决这个问题,perceptual loss用于衡量高分辨率图像和低分辨率图像在特征空间的相近程度。作者根据前面超分辨率网络的结构,用三个块(B1,B2,B3B_1,B_2,B_3)对应的低、中、高级特征来计算perceptual loss:
lfeaturei=1WiHix=1Wiy=1Hi(ϕi(Ix,yHRϕi(GθG(ILR)x,y)2 l_{feature|i}=\frac{1}{W_iH_i}\sum_{x=1}^{W_i}\sum_{y=1}^{H_i}\left(\phi_i(I^{HR}_{x,y}-\phi_i(G_{\theta_G}(I^{LR})_{x,y}\right)^2
其中ϕi\phi_i表示BiB_i块的最后一个卷积层的特征图,WiW_iHiH_i表示它的大小。

对抗网络(Adversarial network)

对抗网络的主要目的是提升超分辨率的效果。在这个GAN模型中,GAN的生成器GG(超分辨率网络)通过判别器以及对抗损失(adversarial loss)可以强制性的生成一些更加现实的超分辨率图像,作者使用的GAN是改进的WGAN(M. Arjovsky, S. Chintala, and L. Bottou. Wasserstein gan. 和 I. Gulrajani, F. Ahmed, M. Arjovsky, V. Dumoulin, and A. Courville. Improved training of wasserstein gans.)。

对抗损失(Adversarial loss)

根据WGAN的定义,人脸超分辨率网络的损失为:
lWGAN=EI^Pg[D(I^)]EIPr[D(IHR)]+λEI^PI^[(I^D(I^)21)2] l_{WGAN}=\mathbb{E}_{\hat{I}\sim \mathbb{P}_g}[D(\hat{I})]-\mathbb{E}_{I\sim \mathbb{P}_r}[D(I^{HR})]+\lambda \mathbb{E}_{\hat{I}\sim \mathbb{P}_{\hat{I}}}[(\lVert \nabla_{\hat{I}}D(\hat{I})\rVert_2-1)^2]
其中Pr\mathbb{P}_r是数据分布,Pg\mathbb{P}_g是生成器分布且由I^=G(ILR)\hat{I}=G(I^{LR})来定义,PI^\mathbb{P}_{\hat{I}}是沿Pr\mathbb{P}_rPg\mathbb{P}_g的样本对之间的直线均匀采样 获得的。

人脸对齐网络(Face Alignment Network)

为了获得更好的细节,作者通过热图回归(heatmap regression)将人脸关键点定位(facial landmark localization)集成到超分辨率过程并且优化一个适当的热图损失,从而增强超分辨率图像和原始图像的结构一致性。

根据论文内容,每个人脸关键点由一个二维高斯分布刻画,而人脸关键点的位置对应着二维高斯分布的中心,FAN则使用热图回归的概念来定位关键点,也就是需要回归对应的二维高斯分布(即热图)。根据之前的一些工作,这些热图可以捕获形状信息(姿势,表情等),空间背景和各部分结构关系。通过最小化超分辨率图像和原始图像的热图差距,可以进行人脸定位,并且保证两图像之间具有一致的人脸结构。于是作者基于两个 FAN结构 (A. Bulat and G. Tzimiropoulos. How far are we from solving the 2d & 3d face alignment problem?(and a dataset of 230,000 3d facial landmarks).ICCV, 2017.),将超分辨率网络的输出图像作为一个FAN的输入并进行训练,使得这个FAN的输出与另一个直接作用在初始图像上的FAN的输出相同。

热图损失(Heatmap loss)

基于以上讨论,作者提出了一个增强超分辨率和低分辨率人脸图像的结构一致性的热图损失,定义如下:
lheatmap=1Nn=1Nij(M~i,jnM^i,jn) l_{heatmap}=\frac{1}{N}\sum_{n=1}^N\sum_{ij}(\widetilde M_{i,j}^n-\widehat M_{i,j}^n)
其中M~i,jn\widetilde M_{i,j}^n是对应于像素点(i,j)(i,j)处的第n个人脸关键点(landmark)的热图,在超分辨率图像I^HR\hat{I}_{HR}运行FAN产生,M^i,jn\widehat M_{i,j}^n是由另一个FAN在初始图像IHRI_{HR}上运行得到。

另一个关于热图损失的关键特征是它的优化不需要访问标记好的真实数据,而只需要访问与训练的FAN。这就允许以弱监督方式训练整个超分辨率网络。

总训练损失(Overall training loss)

Super-FAN的总训练损失为:
lSR=α_pixel+βlfeature+γlheatmap+ζlWGAN l^{SR}=\alpha \_{pixel}+\beta l_{feature} + \gamma l_{heatmap} + \zeta l_{WGAN}
其中α,β,γ,ζ\alpha,\beta,\gamma,\zeta是对应的权重。

实验结果

Super-FAN论文阅读

相关文章: