关于老照片修复~~~~~上图为运行腾讯ARC的模型之后的效果图
其使用的模型,GFP-GAN,Towards Real-World Blind Face Restoration with Generative Facial Prior,理解记录如下:
Abstract:
In this work, we propose GFP-GAN that leverages rich and diverse priors encapsulated in a pretrained face GAN for blind face restoration.
提出了GFP-GAN,利用丰富多样的先验,将其封装在一个预训练的人脸中,用于模糊人脸修复。
This Generative Facial Prior (GFP) is incorporated into the face restoration process via spatial feature transform layers, which allow our method to achieve a good balance of realness and fidelity.
这种生成性面部先验(GFP)通过空间特征转换层被纳入面部修复过程,这使得我们的方法在真实性和保真度之间取得了良好的平衡。
Thanks to the powerful generative facial prior and delicate designs, our GFP-GAN couldjointly restore facial details and enhance colors with just a single forward pass, while GAN inversion methods require image-specific optimization at inference.
得益于强大的生成性面部先验和精细的设计,GFP-GAN可以通过一次前向传递来联合恢复面部细节和增强颜色,而GAN反演方法需要在推理时对图像进行特定的优化。
Introduction
StyleGAN 等,这些人脸GANs,能够生成具有高度可变性的忠实人脸,从而提供丰富多样的先验, 如几何学、面部纹理和颜色,使得联合恢复面部细节和增强颜色成为可能;
然而,将这种生成性先验因素纳入修复过程是具有挑战性的。
以前 通常使用 GAN inversion。
关于GAN反演:
给定一张灰度图像,如何利用预训练好的GAN恢复它的颜色呢?一个自然的想法是在GAN的图像空间寻找一张灰度化后与目标图片一致的图片,由于GAN倾向于输出自然的图片,因此找到的这张图会有自然的颜色。
上述方案要求用GAN的生成器G准确重建一张目标图片。针对该任务,传统的做法是优化生成器输入的隐向量z,又称作GAN inversion。
预训练GAN通常能够生成非常逼真和多样的图像,通过反演找到与特定输入图像对应的潜在代码,我们可以利用GAN的生成先验来执行各种任务,如图像编辑、风格迁移或图像超分辨率等。
用GAN模型近似表征自然图像分布,在恢复图像时,对于失真图,要恢复它,其实就是要在GAN表征的自然图分布中找到一个跟失真图最相似的图。
即,如果我们要复原图像A,则可以训练GAN网络,使其生成一个跟图像A的GroundTruth相似度很高很高的图像,该生成图像即为我们修复后的图像;
如上图,找相似图的过程是:
比如想复原失去色彩的图像 φ(x),其中 x 指原图Ground Truth,φ 指退化函数,如失去色彩、加噪声……
首先,由GAN生成近似的自然图像 G(z; θ),z 是服从高斯分布的随机向量;
然后对近似自然图 G(z; θ) 进行退化操作 φ,退化结果是 φ(G(z; θ));
那么我们选择一个跟要复原图像 φ(x) 最相似的退化图 φ(G(z; θ)),那退化前的近似自然图G(z; θ)自然可以近似 x。
一般来说,目标函数通常包含两个部分:一是判别器对于生成样本的评价结果;二是输入样本与生成样本之间的差异度量;
此文作者表示,GAN Inversion 尽管有视觉上的真实输出,但是因为低维潜在代码不足以指导准确的修复,通常产生低保真度的图像。
GFP-GAN 网络模型如下:
It consists of a degradation removal module (U-Net) and a pretrained face GAN as facial prior (such as StyleGAN2).