目录
一、引言
生成高质量图像的能力使GANs适用于许多图像处理任务,如语义人脸编辑,超分辨率,图像到图像的翻译等。然而,这些基于gan的方法通常为了特定的任务需要对网络结构或损失函数进行特殊设计,这限制了它们的泛化能力。另一方面,大型GAN模型,如StyleGAN和BigGAN,在经过训练后,可以生成逼真的图像,但目前的研究还没有把这些训练好的模型做为先验信息应用于真实图像处理。
实现这一目标的主要挑战是,GAN的生成器通常将潜在空间Z映射到图像空间(即输入是噪声,输出图像),并不是用真实图像作为输入,这导致训练好的模型无法很好地进行后续图像处理。为解决这个问题,现有方法尝试以重新反向传播(寻找合适的Z)或者添加一个额外的编码器将图像映射到潜在空间。但多数情况下这两种方法的效果并不理想。
二、方法
2.1、GAN 反演
给定一个目标图像x, GAN反演任务的目的是通过寻找足够的潜在代码来恢复x来反转生成过程,它可以写成
然而,通过优化单个潜在代码来重建任意图像的效果并不理想。为此,作者提出使用多个潜在码,并组成对应的具有自适应通道重要性的中间特征图,如图2所示。
2.2、利用多重潜在码的GAN反演
单个潜在代码的表现力是不够恢复特定图像的所有细节的,下面将介绍如何利用多个潜在码进行GAN反演。
特征组合
引入多个潜在码后的一个关键难点是如何在生成过程中整合它们。作者提出通过将生成器G划分成两个子网络,即,
,l是中间层进行特征合成的指标。有了这样的分离,对于任何
,都可以提取相应的空间特征
进行进一步的合成。
自适应通道的重要性
作者希望每个都能恢复目标图像的某些特定区域,既然如此,那每个区域的重要程度肯定是不同的,因此作者为每个
引入自适应通道重要性
,以帮助它们与不同的语义进行匹配。其中
为C维向量,C为G(·)的第l层通道数。所以重建图像公式如下:
其中
这里,i和j表示空间位置,c表示通道索引。
优化目标
有了上述的改进,最终的损失如下:
式中φ(-)表示感知特征提取器,本文的特征提取器为预先训练的VGG-16。
2.3、用于图像处理的多码GAN先验
经过上述操作,就可以将上述方法应用到各种图像处理任务中。这里不同的任务的损失稍有不同,但大体上是类似的。具体如下:
对于图像超分辨率任务,以低分辨率图像的作为输入,对反演结果进行下采样,以近似
:
对于图像修复任务,在完整图像和二值掩码m表示已知像素点的情况下,我们只重建未损坏的部分,让GAN模型自动填充缺失的像素点:
三、实验
3.1、与其他反演方法的比较
3.2、图像修复与去噪
代码:genforce/mganprior: [CVPR 2020] Image Processing Using Multi-Code GAN Prior (github.com)