双判别器生成对抗网络图像的超分辨率重建方法 下载: 1331次
1 引言
高分辨率(HR)图像中的像素密度高,包含有图像信号的高频成分,能够提供更多关于目标场景的细节信息[1]。在实际生活中,受数字成像设备和硬件存储容量等因素的限制,获取到的图像分辨率往往比较低,无法满足人们的消费需求,特别是高端科技研发领域的需求,例如监测、遥感、**、医学和视频娱乐等数字成像应用领域。单幅图像超分辨率重建(SISR)是一种利用信号,从一幅低分辨率(LR)的观测图像中获取HR图像的技术[2],这样的技术可以摆脱硬件的条件限制,从而具有广阔的发展前景。
传统图像超分辨率重建主要有两类,即基于插值的方法和基于重建的方法。基于插值的方法一般操作方便、计算量小,但在放大倍数较大时,性能不能满足人们的需求。基于重建的方法在实际应用中,获得具有强相关性的多张LR图像比较难,当受场景限制,提供的信息较少时,生成高质量的HR图像变得难上加难。
近年来,随着人工智能的迅速发展,基于卷积神经网络(CNN)和生成对抗网络(GAN)的图像超分辨率方法,由于其重建性能远远超过传统算法,因而成为当前优先选择的主流方法。Dong等[3]首次将深度学习应用到图像超分辨率重建中,利用CNN提出一种端到端的单幅图像超分辨率的深度学习方法(SRCNN),该方法通过训练一个包括三个卷积层的网络完成图像的超分辨率重建。Kim等[4]研究分析SRCNN[3]后,构建了具有更深层次网络的重建模型,该算法采用VGG[5]网络架构,构建了拥有20层的深度卷积网络,在训练过程中使用极高的学习率提升了网络收敛速度。Shi等[6]提出比较高效的、实时的基于CNN的图像超分辨率方法,该方法的核心概念是亚像素卷积层,使用亚像素卷积层将图像从LR图像放大到HR图像。Lim等[7]提出一种增强深度超分辨率网络(EDSRN),该网络在残差块中去除不必要的批归一化(BN)层,并且扩展该模型的大小,使得该模型取得了显著的性能。Lai等[8]提出LapSRN,该网络是SISR问题的最新框架之一,该模型采用逐步上采样的方式重建超分辨率图像,并使用Charbonnier损失函数代替L2损失函数。
CNN模型在传统的SISR上取得了非常好的效果,可以获得较高的峰值信噪比(
受到生成式对抗网络[11](GAN)的启发,Ledig等[12]将GAN引入到图像超分辨率重建中,提出基于生成对抗网络的图像超分辨率重建网络(SRGAN),该网络进一步提升了超分辨率图像的视觉效果。Wang等[13]研究SRGAN的三个关键组成部分,即网络架构、对抗性损失和感知损失,提出了增强型超分辨率生成对抗网络(ESRGAN)。在该网络结构中,作者移除了生成器结构
虽然当前GAN模型在图像处理上取得了较大的成就,能生成以假乱真的样本,但是GAN在无限建模能力的目标背后隐藏了一系列的问题。GAN在生成过程中过于自由不可控,网络训练过程模型的收敛和稳定性难以保证,故容易发生模式崩塌,进而出现无法继续训练的情况。因此,本文在SRGAN的基础上,提出一个双判别器超分辨率重建网络(DDSRRN),通过增加另一个判别器,将Kullback-Leibler(KL)散度和反向KL散度组合成一个统一的目标函数,利用这两种散度的互补统计特性来捕获多模式中的估计密度多样化,从而有效地避免模式崩溃,进而提高训练的稳定性。
2 双判别器超分辨率重建网络
DDSRRN的双判别器思想来源于D2GAN[14],它由两个判别器D1和D2,以及一个生成器G组成,两个判别器仍然与一个生成器一起进行极大极小的博弈。首先,生成器网络产生的数据欺骗两个判别器。训练网络时,给定数据样本空间
式中:
2.1 网络模型
如
1) 特征提取
首先输入低分辨率图像,然后进入2层卷积网络进行特征提取操作,为了扩大特征提取的感知范围,第一层卷积层使用64个5×5大小的卷积核。第一层卷积层提取特征的操作为
式中:
第二层卷积层使用64个3×3大小的卷积核,第二层使用较小的卷积核,能够为网络提供更深的感受野,能够更好地提取到图像的细节信息,至此对LR图像完成二维卷积操作,提取图像的特征信息。第二层卷积层提取特征的操作为
式中:
2) 残差函数的非线性映射
He等[15]提出的残差网络ResNet,能有效地避免网络随着深度的增加而产生的权重衰减、梯度衰减、梯度消失等问题,因此该网络能在低级以及高级计算机视觉任务中表现出优异的网络性能。在本文方法中,采用ResNet中的残差学习思想以及跳跃连接,构成残差块结构。
在生成器G中,采用16个相同布局的残差块,每个残差块包含三个卷积层,每层由64个3×3大小的卷积核构成,并使用ReLU作为激活函数。残差块函数定义为
式中:
3) 图像重建
最后通过训练两个反卷积层来输出HR图像。反卷积操作的输出则为输入的
式中:
如
2.2 模型训练
在经典的生成对抗网络中,会存在梯度不稳定、生成器生成样本的多样性与准确性不足的模式崩溃的问题;在近似最优判别器的情况下,会导致生成器的损失值梯度消失。针对这些问题,本文对其进行相应的优化处理。
模式崩溃的根本原因是最小化生成器损失函数等价于最小化一个不合理的距离衡量,本质上是使用了JS和KL散度来衡量
为进一步提高GAN对数据特征的学习能力,提高生成对抗网络生成图像的真实感,本文引入更为多样化的损失函数,取代了在传统的GAN中判别器对生成器生成图像的简单判断。
由于本文双判别器网络模型去掉了BN层,为避免损失函数过大,在判别器损失函数中引用WGAN-GP[16]的梯度惩罚。梯度惩罚函数为
式中:
为得到SR重建模型,需对建立好的DDSRRN进行训练。为得到生成器和判别器的客观损失函数,需要分别设计DDSRRN的内容损失、对抗损失、感知损失及风格损失。
2.2.1 内容损失
设计内容损失的目的是确保生成器构建图像的低频部分的正确性。早期的网络主要采用L2损失函数,Wang等[17]认为L2 损失函数具有很好的优化特性,能直接优化
式中:
2.2.2 对抗损失
对抗损失就是生成器生成的图像与真实图像之间的一种差距。该值越大表明生成图像的效果越不好,需要生成器通过判别器返回来的参数来进行自身优化,生成更为逼真的图像,为此需提出一种让生成器欺骗两个判别器来生成真实图像的解决方案。在DDSRRN对抗训练阶段,先固定生成器G的权重参数,再去训练判别器D;D训练好以后,再固定D的参数,去优化G,目的就是让G生成的数据使D给出高分;依次交替执行,待最终的G参数没有太大变化以后,结束训练。在DDSRRN对抗训练过程中,判别器D1和D2都会接受G所生成的数据,然后给出一个分值,生成器G的目的就是让D1和D2都给高分,起初G只会盲目的生成图像,并不知道怎么做才能生成好的数据,而D1看到该数据以后并不会告诉G怎么做,而是给出一个好与不好的结果。相反地,D2不仅要告诉G该数据是好是坏,还告诉G怎么做才能生成更好的数据,减小G生成数据与真实数据的差距。
因此,判别器D1会加大真实样本数据的权重,降低假样本数据的权重,判别器D2在估计D1的权重参数的基础上去优化生成器G的权重参数,使之更具逼真性。因为判别器D1注重真实样本权重的参数调节,而判别器D2是在D1权重参数的基础上去优化调节生成器G的权重参数,目的是让其变化范围越来越小,故对判别器D2采用取对数的方法来降低数值取值范围,让网络达到很好的收敛。因此DDSRRN的对抗损失
2.2.3 感知损失
常用的基于VGG网络的感知损失并不能充分捕捉SISR任务中所需图像的高频细节,并且使用VGG网络将会带来大量的网络模型计算复杂度。因此本文引用SRPGAN[20]中的感知损失,通过重用由判别器和生成器提取出的网络中间层的特征来减少感知损失的计算量。具体过程如下:获取生成器生成的数据经过两个判别器的每一层卷积层之后的结果与真实数据经过两个判别器的每一卷积之层后的结果作为中间层来计算,然后通过对生成器网络和判别器网络提取的中间层用L1损失函数计算网络的感知损失。
式中:
2.2.4 风格损失
为了将分辨率提高4倍,生成器网络残差块后面接两个反卷积层,反卷积对上一个卷积层提取的特征进行上采样和聚合操作,因为反卷积上采样是直接通过学习LR图像和HR图像之间的端到端映射,因此可以大大缩减网络重建图像的时间。但是采用反卷积容易使生成器生成的图像出现棋盘效应和鱼鳞效应,即当反卷积核移动的步长小于边长时,会出现反卷积核与输入数据作用区域上的重叠,产生不同幅度的“棋盘”伪影。具体效应如
图 3. 反卷积上采样结构的可视化棋盘伪影图像
Fig. 3. Visualized checkerboard artifact images of deconvolution upsampling structure
为祛除或消减这类效应,引用Liu等[21]的Style损失函数,该函数计算风格损失时涉及的内容较多,但为遵循相同的原则,需要为网络提供基本输入图像和生成图像的原始中间输出。在对风格损失使用L1损失函数之前,需要得到判别器网络与生成器网络这两个网络卷积层后的中间层输出的特征映射图的gram矩阵,而非基本输入图像和生成图像的原始中间输出。对于一张
式中:
最后使用另一种优化方法来优化生成器网络G和判别器网络D1和D2。结合各个损失函数及其训练参数,便可训练整个网络,具体定义为
式中:
3 实验结果与分析
实验数据集:文中使用的训练数据集为DIV2K数据集[22],其包含800张训练图像,100张验证图像和100张测试图像。由于测试数据集资料尚未发布,因此将DIV2K的验证数据集和基准数据集中的Set5[23]、Set14[24]、BSD100[25]作为测试数据集。训练网络时,将HR图像双三次下采样4倍以创建用于训练的输入LR图像。
网络训练:生成器网络使用AdamOptimizer优化器,
实验运行环境的硬件设备参数为AMD Ryzen 7 1700 3.0 GHz 8核处理器,16 GB内存, NVIDIA GTX 1060(6 G)显卡;涉及的相关软件版本为Anaconda3-5.2.0-Windows-x86_64,cuda_9.0.176_win10,Spyder(Python3.5)。
质量评价:选用峰值信噪比
式中:
式中:
实验结果: 在DIV2K验证集和基准数据集中的Set5、Set14、BSD100四个数据集上对本文网络DDSRRN进行测试,选取Bicubic、SRCNN[3]、ESPCN[6]、RDN[26]、EDSR[7]和SRGAN[12]这6种算法进行对比。为保证测试的公平性,针对SRCNN使用Caffe框架进行实验;针对SRGAN、ESPCN和本文DDSRRN模型,实验使用Tensorflow框架;针对RDN和EDSR模型,实验使用Pytorch框架。
图 4. DDSRRN与SRGAN模型在DIV2K验证集上的R PSN与S SIM表现对比。(a) R PSN值;(b) S SIM值
Fig. 4. Comparison of S PSN and S SIM between DDSRRN and SRGAN models on DIV2K validation set. (a) S PSN;(b) S SIM
从
从
从DIV2K数据集中选择“0846”建筑物图像,从Set5数据集中选择“Baby”图像和“Butterfly”图像来展示各种方法的可视化效果对比。从结果来看,DDSRRN构建的图像在感知质量上具有显著的增益。为更好地可视化DDSRRN的有效性,可选择图像中具有丰富细节的区域来进行放大可视化。从细节处可以看出ESPCN重建的图像显示出大量的色彩失真;而对于EDSR和RDN,虽然重建的图像结构清晰,但它们与HR图像相比,出现过于模糊和平滑现象;在SRCNN重建的图像中出现振铃现象和模糊,边缘结构不清晰;SRGAN重建的图像出现“棋盘伪影”现象,虽然其感知质量达到了人类的视觉效果,但其边缘细节处理不够。从
表 1. 各模型在基准数据集和DIV2K验证集上的平均性能比较
Table 1. Average performance of each model on baseline dataset and DIV2K validation set
|
图 5. DIV2K数据集中“0846”建筑物4×重建对比图
Fig. 5. Comparison of ”0846” building reconstruction with magnification of 4 in DIV2K dataset
图 7. Set5数据集中“Butterfly”4×重建对比图
Fig. 7. Comparison of “Butterfly” reconstruction with magnification of 4 in Set5 dataset
4 结论
在D2GAN与SRGAN的基础上,针对SISR任务设计出一个判别器超分辨率重建网络,通过增加一个判别器,利用KL与反KL散度设计目标函数。与传统的GAN设计的JS散度目标函数相比,本文方法重建效果显著,生成器能够学习得更好,但从所有生成的样本图像中来看,生成器并不完美。通过多次训练实验发现,本文模型在非线性图像上表现良好,但当网络训练到一定程度时,针对城市现代建筑物、大面积带毛动物等风格图像依旧会产生由反卷积上采样带来的伪影现象。本文模型在这些图像上的表现不具优势,所以偶尔会在图像重建时出现失真现象。下一步的研究重点将继续优化本文目标函数算法和网络框架模型,使重建的高分辨率图像与真实的高分辨率图像在高层次的抽象特征上更接近,这也是目前基于学习的图像超分辨率重建所共同面对的问题。
[1] Park S C, Park M K, Kang M G. Super-resolution image reconstruction: a technical overview[J]. IEEE Signal Processing Magazine, 2003, 20(3): 21-36.
[2] Subhasis C. Super-resolution imaging[M]. The springer international series in engineering and computer science. New York: Springer Science+Business Media, 2001, 632: XIV, 280.
[3] DongC, Loy CC, He KM, et al. Learning a deep convolutional network for image super-resolution[M] ∥Fleet D, Pajdla T, Schiele B, et al. Computer vision-ECCV 2014. Lecture notes in computer science. Cham: Springer, 2014, 8692: 184- 199.
[4] KimJ, Lee JK, Lee KM. Deeply-recursive convolutional network for image super-resolution[C]∥2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 26-July 1, 2016, Las Vegas, Nevada. New York: IEEE, 2016: 1637- 1645.
[5] SimonyanK, Zisserman A. Very deep convolutional networks for large-scale image recognition[J/OL]. ( 2015-04-10)[2019-05-12]. https:∥arxiv.org/abs/1409. 1556.
[6] Shi WZ, CaballeroJ, HuszarF, et al. Real-time single image and video super-resolution using an efficient sub-pixel convolutional neural network[C]∥2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27-30, 2016, Las Vegas, NV, USA. New York: IEEE, 2016: 1874- 1883.
[7] LimB, SonS, KimH, et al. Enhanced deep residual networks for single image super-resolution[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 1132- 1140.
[8] Lai WS, Huang JB, AhujaN, et al. Deep Laplacian pyramid networks for fast and accurate super-resolution[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 5835- 5843.
[9] Sønderby CK, CaballeroJ, TheisL, et al. Amortised MAP inference for image super-resolution[J/OL]. ( 2017-02-21)[2019-05-12]. https:∥arxiv.org/abs/1610. 04490.
[10] DahlR, NorouziM, ShlensJ. Pixel recursive super resolution[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 5439- 5448.
[11] Goodfellow IJ, Pouget-AbadieJ, MirzaM, et al. Generative adversarial nets[C]∥Proceedings of the 27th International Conference on Neural Information Processing Systems, December 4-9, 2017, Long Beach, CA, USA. Canada: NIPS, 2017.
[12] LedigC, TheisL, HuszarF, et al. Photo-realistic single image super-resolution using a generative adversarial network[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 4681- 4690.
[13] Wang XT, YuK, Wu SX, et al. ESRGAN: enhanced super-resolution generative adversarial networks[M] ∥Leal-Taixé L, Roth S. Computer vision-ECCV 2018 Workshops. Lecture notes in computer science. Cham: Springer, 2019, 11133: 63- 79.
[14] Nguyen TD, LeT, VuH, et al. Dual discriminator generative adversarial nets[C]∥Proceedings of the 27th International Conference on Neural Information Processing Systems, December 4-9, 2017, Long Beach, CA, USA. Canada: NIPS, 2017.
[15] He KM, Zhang XY, Ren SQ, et al. Identity mappings in deep residual networks[M] ∥Leibe B, Matas J, Sebe N, et al. Computer vision-ECCV 2016. Lecture notes in computer science. Cham: Springer, 2016, 9908: 630- 645.
[16] GulrajaniI, AhmedF, ArjovskyM, et al. Improved training of Wasserstein GANs[C]∥Proceedings of the 27th International Conference on Neural Information Processing Systems, December 4-9, 2017, Long Beach, CA, USA. Canada: NIPS, 2017.
[17] Wang Z, Bovik A C. Mean squared error: love it or leave it? A new look at signal fidelity measures[J]. IEEE Signal Processing Magazine, 2009, 26(1): 98-117.
[18] Zhao H, Gallo O, Frosio I, et al. Loss functions for image restoration with neural networks[J]. IEEE Transactions on Computational Imaging, 2017, 3(1): 47-57.
[19] Bruhn A, Weickert J, Schnörr C. Lucas/Kanade meets Horn/Schunck: combining local and global optic flow methods[J]. International Journal of Computer Vision, 2005, 61(3): 211-231.
[20] Wu BZ, Duan HD, Liu ZC, et al. SRPGAN: perceptual generative adversarial network for single image super resolution[J/OL]. ( 2017-12-20)[2019-05-12]. https:∥arxiv.org/abs/1712. 05927.
[21] Liu GL, Reda FA, Shih KJ, et al. Image inpainting for irregular holes using partial convolutions[M] ∥Ferrari V, Hebert M, Sminchisescu C, et al. Computer vision-ECCV 2018. Lecture notes in computer science. Cham: Springer, 2018, 11215: 89- 105.
[22] AgustssonE, TimofteR. NTIRE 2017 challenge on single image super-resolution: dataset and study[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 1122- 1131.
[23] BevilacquaM, RoumyA, GuillemotC, et al. Neighbor embedding based single-image super-resolution using Semi-Nonnegative Matrix Factorization[C]∥2012 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), March 25-30, 2012, Kyoto, Japan. New York: IEEE, 2012: 1289- 1292.
[24] YuanY, Liu SY, Zhang JW, et al. Unsupervised image super-resolution using cycle-in-cycle generative adversarial networks[C]∥2008 IEEE Conference on Computer Vision and Pattern Recognition (CVPR) Workshops, June 18-22, 2018, Salt Lake City, Utah. New York: IEEE, 2018: 814- 823.
[25] MartinD, FowlkesC, TalD, et al. A database of human segmented natural images and its application to evaluating segmentation algorithms and measuring ecological statistics[C]∥Proceedings Eighth IEEE International Conference on Computer Vision. ICCV 2001, July 7-14, 2001, Vancouver, BC, Canada. New York: IEEE, 2001: 416- 423.
[26] Zhang YL, Tian YP, KongY, et al. Residual dense network for image restoration[J/OL]. ( 2018-12-25)[2019-05-12]. https:∥arxiv.org/abs/1812. 10477.
袁飘逸, 张亚萍. 双判别器生成对抗网络图像的超分辨率重建方法[J]. 激光与光电子学进展, 2019, 56(23): 231010. Piaoyi Yuan, Yaping Zhang. Image Super-Resolution Reconstruction Method Using Dual Discriminator Based on Generative Adversarial Networks[J]. Laser & Optoelectronics Progress, 2019, 56(23): 231010.