深度学习|基于生成对抗网络结构的图像修复(GAN)

GAN网络的最初发展史 自2014 年10 月Goodfellow 等人提出了一个通过对抗过程生成模型的框架开始,GAN 网络就成为近年来在无监督学习复杂分布中最具前景的方法之一。而其最初给研究人员的感性认识就是“无中生有”(可以通过噪声生成数据库中不存在的同类型物体) ,具有强大的图像生成能力,因此使用GAN网络进行图像中破损区域的生成也成为研究人员探索的一个方向。
GAN 网络的基本结构 GAN 网络的基本结构如图 8 所示。主要包括一个生成模型G和一个判断模型D 。判断模型D本质上是一个分类器,它判断输入的图像是来自数据集的真实图像,还是网络创建的假图像,其模块单元基本上就是一个表现为CNN 形式的二元分类器。生成模型G 主要是通过反卷积神经网络将随机输入值转化为图像。
深度学习|基于生成对抗网络结构的图像修复(GAN)
文章图片

采用GAN 网络实现图像的修复,在训练阶段,首先不考虑图像的破损问题,即训练过程中采用未破损的数据进行GAN 网络训练。当完成训练后,意味着生成模型G 具备了由噪声信号z (分布为 Pz )按照分布为 Pdata 的样本生成新图像的能力。则对于一个破损的图像I的修复就可以变换为通过生成模型G 生成一个与图像I 已知部分足够相似的新样本的过程,为了达到这个目的,需要对新生成的图像进行迭代修改,修改的依据即破损的图像 I 的已知部分与生成模型生成的新样本的对应部分要尽可能相似。图9 给出了基于GAN 的图像修复过程框架。
深度学习|基于生成对抗网络结构的图像修复(GAN)
文章图片


如图9 中,通过噪声信号z 生成新的样本,对新的样本通过两个损失进行迭代处理,具体包括通过判断模型D 计算先验损失以避免生成不合理的图像,通过计算生成样本与待修复图像的已知区域的差异计算内容损失以期生成的样本与待修复的图像足够相似。具体通过生成的图G(z)与待修复图I 中对应已知位置像素值的差作为惩罚项得到内容损失。
深度学习|基于生成对抗网络结构的图像修复(GAN)
文章图片


式中,M 为修复掩码,⊙ 为逐点相乘,式(5)采用了1 范数度量差异,采用不同的距离度量方式都是可取的。这样通过对 G(z)增加类似式(5)的惩罚项即可以迭代地修复图像。采用类似的方法,可以针对人眼实现修复。图10 给出了迭代1000次修复结果的示意图。图11 给出一组基于 GAN 的图像修复方法迭代求解的过程示意图。
深度学习|基于生成对抗网络结构的图像修复(GAN)
文章图片

深度学习|基于生成对抗网络结构的图像修复(GAN)
文章图片

GAN网络训练的惩罚项
在基于GAN 结构的图像修复方法的训练阶段,除了基于像素值的惩罚项外,可以使用已经预训练好的分类网络的分类错误作为惩罚项,对修复区域、整幅修复后的图像进行分类辨别实现网络的训练,采用这类全局语义损失函数的方式可以有效地促进图像的修复细节。也可以采用图像的结构熵作为损失函数的内容进行网络的训练,结果表明这类方法可以保证修复结果图像的结构连贯性。同样也可以在基于 GAN 修复网络中增加修复对象的语义条件(比如人脸结构) 指导修复生成过程,使得修复结果的整体语义更为合理。

GAN网络训练的缺点
采用 GAN 网络的图像修复在低分辨率图像, 特别是特定类型的图像修复中可以取得好的效果,但对于高分辨率的图像修复, GAN 的训练非常困难, 特别是对于图像中内容不相似的情况则更加难以收敛。
基于GAN的图像修复方法实验分析 GAN 作为一种具有自监督学习能力的生成网络, 可以针对某一特定类型图像的对抗训练使得生成模型G具有生成该类型图像的能力,最成功的应用即生成逼真的人脸图像。基于DCGAN 网络在 CelebA 数据集上训练人脸生成模型,CelebA 数据集包括了202599 幅人脸图像, 通过训练后的生成模型 G 可以通过100维的向量生成一幅 64 × 64 × 3 像素的彩色人脸图像。进一步采用上面叙述的方法,对随机选取的 64幅测试样本人脸图像进行修复,部分结果如图16 所示,图 16(a)是样本图像,图16(b)是增加掩码的待修复图像,图16(c) 是迭代 1000 次生成的与待修复图像最相似的人脸图像,图 16( d) 是修复结果图像。可见,通过 GAN 网络确实可以生成与待修复样本图像非常相似的新图像,但修复结果有时会不理想,如图16(d)中的第 4 行图像所示。
深度学习|基于生成对抗网络结构的图像修复(GAN)
文章图片

【深度学习|基于生成对抗网络结构的图像修复(GAN)】参考文献:强振平 et al_2019_深度学习图像修复方法综述

    推荐阅读