CVPR 2021 | GAN人脸预训练模型,让五官复原效果惊艳!

机器学习算法工程师

共 2452字,需浏览 5分钟

 ·

2021-08-01 02:49




人脸复原 (Face Restoration) 是指从低质量的人脸中复原得到高清的人脸。真实世界中的人脸复原是一个很有挑战的任务,因为降质 (degradation) 过程复杂且不尽相同。国内某 PCG 应用研究中心 (ARC) 的研究者们提出了利用预先训练好的人脸生成模型提供的先验,来指导人脸复原的任务。


真实世界的人脸复原是一个盲问题,即我们不清楚降质过程,在实际应用中,同时也面临着各种各样降质过程的挑战。对于人脸这个特定的任务,之前的工作往往会探索人脸特定的先验,并且取得了较好的效果。常见的人脸先验有两类:

几何人脸先验, 比如人脸关键点、人脸分割图、人脸热力图。然而从低质量的图片中很难取得比较准确的几何信息。此外,它们很难提供纹理方面的信息。

参考图,即从数据库中取得相同或者相似的人脸作为参考 (Reference) 来复原。但是这样的高质量的参考图在实际中很难获取。ECCV20 提出的 DFDNet 工作进一步构建了一个人脸五官的字典来作为参考,它可以取得更好的效果,但是会受限于字典的容量,而且只考虑了五官,没有考虑整个脸。

与此同时,生成对抗网络 GAN 的蓬勃发展,特别是 StyleGAN2 能够生成足够以假乱真的人脸图像给研究者们提供了一个思路:是否可以利用包含在人脸生成模型里面的「知识」来帮助人脸复原呢?

论文地址:arxiv.org/abs/2101.0406


研究核心利用了包含在训练好的人脸生成模型里的「知识」, 被称之为生成人脸先验 (Generative Facial Prior, GFP)。它不仅包含了丰富的五官细节, 还有人脸颜色, 此外它能够把人脸当作一个整体来对待, 能够处理头发、耳朵、面部轮廓。基于预训练好的生成模型, 研究者们提出了利用生成人脸先验 GFP 的人脸复原模型 GFP-GAN。先来看看它做到的效果:


相比于近几年其他人脸复原的工作,GFP-GAN 不仅在五官恢复上取得了更好的细节,整体也更加自然,同时也能够对颜色有一定的增强作用。


01

研究方法


首先来看 StyleGAN2 生成模型,它从一个可学习的常数向量开始,不断地提高分辨率。其中的 latent code 向量用来调制 (Modulate) 各个卷积层的权重,最后生成真实且多样的人脸。



02

GFPGAN


下图是该研究的主要框架,输入一张低质量的人脸,首先经过 UNet 结构,在这里有复原 loss 的 L1 约束 (灰色箭头),用以粗略地去除 degradations,比如噪声、模糊、JPEG 等。同时更重要的是,得到提取的 latent 特征向量 (绿色箭头) 和空间特征 (黄色箭头)。


在人脸复原中,与其他工作不同,仅仅通过调制 StyleGAN 的 latent codes,因为没有考虑局部的空间信息会极大影响人脸的 identity。因此也要利用空间的特征来调制 StyleGAN 里面的特征。

GFP-GAN 基于现有的高效的空间特征变换 (Spatial Feature Transform,SFT) 层来达到这个目的。它能够根据输入的条件(这里是提取的低质量的图像特征),生成乘性特征和加性特征,对 StyleGAN 的特征做仿射变换。为了进一步平衡输入图像的信息和 StyleGAN 中的信息,GFP-GAN 进一步将通道拆分为两部分,一部分用来调制,一部分直接跳跃过去。这样的调制会在由小到大的每个空间尺度上进行,提高调制的效果。


03

损失函数


除了一般的 L1 和 Perceptual 复原损失函数外,GFP-GAN 的训练还使用了:

  • 全局的 Discriminator,判断人脸是否是真实的;


  • 人脸五官的 Discriminators,用来判断局部的人脸五官是否清晰,GFP-GAN 还考虑了纹理细节多且较难恢复的左右眼睛和牙齿;


  • 为了保持人脸 identity 的一致,使用了人脸 identity 一致损失函数,即在人脸识别模型的特征空间中去拉近。




04

训练数据


和之前大部分工作类似,GFP-GAN 采用了 Synthetic 数据的训练方式。研究者们发现在合理范围的 Synthetic 数据上训练,能够涵盖大部分的实际中的人脸。GFP-GAN 的训练采用了经典的降质模型,即先高斯模糊,再降采样,然后加噪声,最后使用 JPEG 压缩。



05

实验结果


研究者们首先在 CelebA-Test 上做了测试:


在 Synthetic 的量化指标上,该研究提出的方法在 LPIPS、FID、 NIQE 都能够取得最好的结果,Deg. 是指人脸识别模型 ArcFace 的 Cosine 距离,较小的值,说明 identity 也保持的很好。


研究者们收集了多个不同来源的真实世界的人脸测试集,都取得了不错的视觉效果。


在实际人脸测试指标上,GFP-GAN 也具有较好的 FID 和 NIQE:


研究者们还做了对比实验, 说明 CS-SFT、GFP、 pyramid loss 以及针对五官的 component loss 带来的效果提升。

当然,现实世界的人脸多种多样,降质模型也非常复杂,即使 GFP-GAN 取得了很好的效果,但也存在局限性。感兴趣的读者可以阅读论文原文了解更多实验细节。

机器学习算法工程师


                                    一个用心的公众号

浏览 113
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报