朱联祥,仝文东,牛文煜,邵浩杰
(西安石油大学 计算机学院,陕西 西安 710065)
岩石是具有稳定外形的固态集合体。通过研究其特性可对该地区油气藏分布情况进行评估预测。岩石显微图像在岩性识别、储集层评价等方面起着直观可视的重要作用。不仅能满足观察烃类与岩石的需要,而且能清晰地显示出储集层空间的微观结构特点及烃类物质在储集层中的存在方式,揭示岩石中油气分布与岩石结构、构造、次生缝洞之间的关系,为准确识别油气层提供了可靠依据[1]。岩石薄片显微图像超分辨处理可获得更加清晰的岩石图像,从而更有利于相关研究工作的展开。
图像超分辨率重建[2]是将低分辨率图像通过软件处理,从而生成具有较高分辨率图像的技术。目前图像超分辨率重建主要分为传统方法和基于深度学习的方法两大类别。传统方法主要包括基于插值、基于重建和基于学习三种[3],相对来讲操作简单,但重建的图像通常也比较模糊。基于深度学习的方法将图像输入到复杂的神经网络中,通过获取低分辨率图像与高分辨率图像间的复杂映射关系来实现图像重建,虽然训练周期往往较长,但因具有更好的重建效果而得到更为广泛的重视[4]。
2016年,Dong Chao等人提出SRCNN[5]结构,将深度学习引入到单张图像的超分辨率重建领域,为图像超分辨率重建技术的研究开辟了一条崭新路径[6]。2017年,Leding等人首次将GAN应用于图像超分辨率重建,提出了SRGAN[7]算法。该网络由生成器和判别器构成,其原理是使生成器生成的图像尽可能骗过判别器,而判别器则尽可能区分出生成器生成的图像与真实的高分辨率图像。通过生成器与判别器的竞争博弈,在很大程度上克服了卷积模型恢复图像质量差的缺点。
SRGAN之后陆续出现了一系列基于生成对抗网络的超分辨算法。Wang等人研究了类条件图像的超分辨率重建,在2018年提出了SFT-GAN,解决了图像纹理信息恢复不好的问题。但因超分辨率等底层视觉任务往往需要考虑更多的图像空间信息,并在不同的位置进行不同的处理,Wang Xintao等人通过对SRGAN的进一步改进,提出了ESRGAN[8]。该网络从三个方面对SRGAN进行了改进:生成网络残差模块改进、判别器网络替换、损失函数优化,从而使得其超分辨重建的效果更加自然,使用PSNR和SSIM等指标的评价更好。
使用逐层抽象的方式来提取目标的特征时,高层网络的感受野较大,语义信息的表征能力更强。但相对地,其特征图的分辨率却较低,几何信息的表征能力偏弱。低层网络则与之相反:感受野较小,几何细节信息表征能力强,虽分辨率较高但语义信息表征能力偏弱。多尺度特征融合[9]的思想便是,在对每层网络进行卷积操作之前,将其上一层的特征图与该层特征图相加,从而部分保留上一层的信息,减少信息的丢失。
该文以ESRGAN为基础,通过多尺度特征融合的思想,对从卷积神经网络不同层获得的不同尺度的特征进行融合,并对所得的网络结构进行优化调整,达到了重建图像在细节性能上的提升。使用该方法对岩石显微图像进行超分辨率处理,并采用峰值信噪比(PSNR)、结构相似性(SSIM)和感知系数(PI)等指标对该方法的超分辨性能进行了评价。
生成对抗网络[10]是Ian J. Goodfellow等人提出的一个通过对抗过程估计生成模型的新框架。该模型由生成网络G和判别网络D构成。生成网络不断学习训练集中的数据概率分布,目标是通过输入随机噪声生成可以以假乱真的图像。判别网络则用于区分一个图像是否为真实的图像,目标是将生成网络产生的图像与训练集中的图像成功区分[11]。
在训练过程中,二者的对抗形式如式(1)所示:
Ez~Pz(z)[log(1-D(G(z)))]
(1)
对于来自真实概率分布Pdata的x,生成对抗网络希望其判别网络的输出D(x)尽可能接近于1,即logD(x)越大越好。而在生成网络中,对于通过噪声z生成的数据G(z),则需要使判别网络D尽可能地区分出真假数据,因此D(G(z))应尽量接近于0[12]。
ESRGAN是在SRGAN基础上进一步改进得到的增强超分辨生成对抗网络。该模型通过移除SRGAN生成网络中的BN[13]层来缓解重建图像的伪影,具体如图1所示。图中,左侧为SRGAN的残差块结构,右侧则为去除BN层之后的ESRGAN残差块结构。
去除BN层的残差块用密集连接[14]的方式组成密集块(DenseBlock),其中含有5个3*3的卷积层。将3个密集块的输出经过β倍的残差缩放后输入主残差网络,以此构成密集残差块RRDB。如图2所示,该结构具有更深更复杂的网络结构,更容易训练。
图2 RRDB结构
在判别网络中则使用了可估计真实图像相对于生成的虚假图像逼真程度的相对平均判别器,用概率值作为其度量,从而可保证生成数据样本的稳定与高质量。
ESRGAN的完整网络模型如图3所示,LR图像经过3*3的卷积提取低层特征后,输入到23个RRDB块中由低到高逐层提取特征,最后通过逐级上采样获得4x高分辨率图像。
图3 ESRGAN网络模型
卷积神经网络层数加深的过程,是从低层到高层提取语义特征的过程。对于岩石显微图像的特征提取,低层网络提取的只是一些轮廓特征。随着网络层数的深入,提取到的特征可能会包含孔隙、颗粒等更高的语义特征[15]。而当网络到达最深层时,则可提取到整张岩石显微图像的特征。
对于原有的ESRGAN模型,随着网络层数的加深,每一层都会有一些信息丢失。结果便是,等到了最后一层时,会有太多的信息已经丢失。为解决这一问题,该文考虑引入特征融合的思想,即是从第二层开始,在对每层网络进行卷积操作之前,将上一层的特征图与该层的特征图相加,从而部分保留上一层的信息,减少信息的丢失。
而使用基于多分支卷积的多尺度融合策略,则可以提取到不同尺度的特征并将其融合,从而有效提升网络的特征提取能力。由于ESRGAN本身不具备多尺度的特征提取能力,因而造成了重建图像的细节模糊问题[16]。如果能将多尺度的特征提取与融合引入到ESRGAN的RRDB块,则可使网络能够提取到不同尺度的特征信息并进行残差计算,进而提升其对图像高频信息的重建性能。
图4为具有多尺度特征融合的卷积结构,由三个并行分支组成。首先对来自上一层输出的特征图分别进行1*1、3*3和5*5的卷积核处理及随后的3*3空洞卷积,膨胀率分别为1、3和5,从而可获得具有不同感受野的多个分支,分别代表不同尺度的特征[17]。继而将所有不同尺度的特征图通过相加运算连接起来,经过1*1的卷积核压缩后,与来自上一层的特征图相加,作为本层的输出。
图4 多尺度特征融合模型
基于以上分析,提出的生成器网络结构如图5所示。其中,LR为输入到生成网络的低分辨率岩石显微图像,经过1个3*3*64的卷积核对其进行特征提取之后输入到新的RRDB。该文使用4个相同的多分支卷积模块替换原网络的卷积层+LReLU结构,以此构成新的密集块(New-DB),再由3个密集块构成新的RRDB块。因多分支卷积模块中具有1*1、3*3、5*5三种不同大小的卷积核,故可提取不同尺度的特征,再经过一个1*1的卷积核可对三种不同尺度的特征进行压缩融合。经过23个New-RRDB结构进行残差计算后,进入上采样部分对图像进行放大。
图5 生成网络结构
网络所采用的相对平均判别器DRa原理如式(2)所示:
(2)
其中,xr是真实图像,即训练集;xf为生成图像,C(x)为别器激活前的输出;σ为sigmoid函数,用于激活判别器;E(x)为一个小批次的真实图像或生成图像取平均值。
(3)
感知损失是Johnson等人在SRGAN中提出的损失项,其通常定义在预先训练好的(VGG)深层网络的激活层上。受此启发,ESRGAN提出了一种更为有效的感知损失Lpercep方法,即利用激活层之前的特征来计算感知损失,从而使重建图像在细节上有更好的视觉效果[18]。
Exf[log(DRa(xf,xr))]
(4)
其中,DRa判别网络的输出,是一个概率值,Ex表示一个小批次的真实图片或假图片取平均。
内容损失项L1计算公式如式(5)所示,反映了生成网络的输出G(x)数据集中的高分辨率图像y的1范数距离。
L1=‖G(xi)-y‖1
(5)
文中方法在Tesla P100-PCIE 11 GB的GPU上进行实验,使用了基于Python语言的PyTorch深度学习框架,实验所用到的软硬件环境如表1所示。训练过程中,批训练样本数设置为16,训练图像切块大小为200*200,初始学习率为0.000 1,且每迭代5 000次学习率减半,总迭代次数为500 000。
表1 实验环境
实验所使用的数据集是新南威尔士大学的岩石显微图像数据集DRSRD1_2D[19],该数据集由碳酸岩(carbonate)和砂岩(sandstone)组成,每类包含1 000张3.1μm×3.1μm图像,并将其划分为训练集(800张)、验证集(100张)和测试集(100张)三部分,同时还提供了800*800的高分辨率图像,以及对应的两倍和四倍缩小的低分辨图像。
该文主要进行放大倍数为4的超分辨研究,在实验前使用了随机裁剪的方法来增加数据并增加模型稳定性,对高分辨率图像和四倍缩小的低分辨图像分别进行随机裁剪,获得480*480和120*120的子图像。
图像质量评价是图像处理的重要内容。该文使用以客观质量评价为主的评价指标对实验结果进行评价,如峰值信噪比(PSNR)、结构相似性(SSIM)和感知系数(PI)等。
(1)峰值信噪比(Peak Signal to Noise Ratio,PSNR)。
PSNR是最普遍、最广泛使用的评价图像质量的客观指标[20],不过许多实验结果都显示,有可能PSNR较高的图像看起来反而比PSNR较低的图像差。这是因为主观评价的方法受很多因素影响,不能准确地判断出差异。PSNR计算公式如式(6)所示:
(6)
式中,MSE表示均方误差,(2n-1)2是信号最大值的平方,n是每个采样值的比特数。其以分贝为单位,一般在20 dB~40 dB间,PSNR越大表示图像失真越小,图像质量越好。
(2)结构相似性(Structural Similarity Index,SSIM)。
结构相似性是一种衡量两幅图像相似度的指标。结构相似性指数从图像组成的角度将结构信息定义为独立于亮度、对比度的,反映场景中物体结构的属性,并将失真建模为亮度、对比度和结构三个不同因素的组合。用均值作为亮度的估计,标准差作为对比度的估计,协方差作为结构相似程度的度量[21]。给定两个图像m、n[11],结构相似性的计算方法如式(7)所示:
(7)
(3)感知指数(Perceptual Index,PI)。
感知系数PI可评价图像的主观感知质量,它更符合人类视觉的感知特征,计算方法如式(8)所示:
(8)
其中,Ma为马氏评分,其使用空间域和频域的统计数据作为SR图像的特征,并将特征集成在回归树中进行训练,利用线性回归模型对预测质量进行评分。NIQE(Natural Image Quality Evaluator)为图像评价质量,其原理:将图像特征输入到多元高斯模型中计算均值、方差,再将HR图像与SR图像拟合得到均值、方差,从而计算SR图像分布与HR图像分布间的差异。PI值越低,代表图像感知质量越好[14]。
实验分别在DRSRD1_2D数据集的碳酸岩类(carbonate)和砂岩类(sandstone)上进行测试,放大因子为4的实验结果如图6、7所示。其中作为随机图示样例所选用的碳酸岩图像和砂岩图像分别为DRSRD1_2D数据集中的carbonate_0905和sandstone_0910。从图中可以看到,文中方法在视觉效果上有着不错的表现,重建图像的岩石颗粒、孔隙更加明显,纹理清晰,边缘锐利。
图6 各算法在碳酸岩图像上的重建效果比较
图7 各算法在砂岩图像上的重建效果比较
此外,从实验结果图不难发现,文中算法在碳酸岩图像上的重建效果更为突出。这是因为碳酸岩相比砂岩具有更加复杂的物理结构,其表面具有更多、更细小的高频特征。这也反映出引入多尺度特征融合方法的文中算法对图像高频特征重建的效果显著。为直观对比不同方法的超分辨重建效果,将文中算法与传统插值算法Bicubic[22]及深度学习算法SRGAN[7]、SFT-GAN[23]、ESRGAN[8]在碳酸岩类和砂岩类上的客观评价指标进行对比,结果如表2、3所示。表中加深字体为最优值,下划线为次优值。可以看出,在碳酸岩数据集上,文中方法的三项指标在几种算法中均为最优。其中PSNR表现尤为突出,达到了24.66 dB,较ESRGAN有0.61 dB的提升。在砂岩数据集上,文中方法的PSNR和PI指标最优,SSIM指标则为次优。
表2 测试集carbonate中的对比实验结果
表3 测试集sandstone中的对比实验结果
从实验结果可以看出,ESRGAN在加入多尺度特征融合方法后,超分辨重建的结果在视觉效果和客观指标上都有了不同程度的提升,生成的图像具有更好的细节特征、更加接近原高分辨率图像。此外,文中方法在具有更多高频信息的碳酸岩图像上的重建效果更为明显,这也从客观上证实了多尺度特征融合对提升超分辨细节特征重建的有效性。
此外,为进一步测试多尺度特征融合ESRGAN在训练时间和占用空间上的影响,实验还对其改进前后的训练时间与内存占用情况进行了对比,结果如表4所示。可以看出,加入多尺度特征融合的ESRGAN相对于加入之前,模型大小增加了2.8%,训练时间则增加了5%。这样比例的代价增加,相对于所取得的效果,还是值得的。
在ESRGAN的基础上,通过引入多尺度特征融合,解决了原网络由于提取特征的尺度单一而造成的重建图像高频信息丢失问题,使得重建后的图像在视觉效果和评价指标上均有了不同程度的改善。改进方法在岩石显微图像的超分辨重建输出具有更加清晰的纹理和孔隙特征,视觉感知的质量也更好。而这样的改善并没有过多影响到算法模型的训练时间及GPU内存占用,是相当值得的。
下一步的研究工作将着重于网络训练效率的提升,以及针对岩石显微图像特点的更加有效的损失函数项设计,以期进一步提升其超分辨重建的效果。