APP下载

残差网络在工程竹材图像超分辨率中的应用

2022-05-27庄子龙

林业机械与木工设备 2022年5期
关键词:散斑竹材残差

刘 铮, 刘 英, 庄子龙, 谢 超

(南京林业大学机械电子工程学院,江苏 南京 210037)

竹材具有生长迅速、成材率和理化性能好的特点,目前成为了木材良好的替代材料,并广泛应用于各类机械包装结构和建筑结构。由于天然竹材的多孔结构和工程竹材的胶合工序,初始裂纹的扩大引起的断裂是工程竹材结构件被破坏的主要形式,裂纹会使材料在低于屈服强度时就发生破坏,影响结构的安全性[1,2]。精确监控裂纹的发展对于图像的要求极高,采用DIC(Digital Image Correlation)技术得到的工程竹材散斑图像存在着大量的噪声,如何提高图像的质量是急需解决的重要问题。应用超分辨率重建技术可以在现有硬件条件下,提高数字图像的成像质量,从而提高工程竹材裂纹的识别精度,确保工程竹材在使用中的安全。

图像超分辨率是从一个或多个低分辨率图像中获得高分辨率图像的技术,随着深度学习的高速发展,基于深度学习的图像超分辨率技术也有着广泛的应用[3]。已有研究成果表明,提高网络的深度能够提高网络的重建性能,然而简单地对网络进行叠加并不能无限制地提高网络的性能,反而会使得网络训练更加困难[4]。

1 图像超分辨率相关研究

由于深度学习方法的良好性能,其被应用于图像超分辨率领域。2014年,Dong[5]等提出SRCNN(Super-Resolution CNN),首次将深度学习用于超分辨率领域,其性能相对于传统方法有了较大的飞跃。针对网络无法依靠简单加深来提高性能的缺陷,2016年,Kim J[6]等首先将残差结构用于图像超分辨率问题,提出了VDSR(Very Deep CNN for SR)。2017年,Ledig[7]等提出SRResNet,首次将ResNet模型应用在图像超分辨率任务中,训练精度以及收敛性能上均优于传统卷积神经网络。受其启发,Bee Lim[8]等提出了EDSR(Enhanced Deep Residual Networks for SR)算法,删除了批规范层以解放更多内存空间,从而可以通过增加网络层数来提高模型性能。2018年,Zhang Y[9]等提出了RCAN(Residual Channel Attention Networks),首次将通道注意力机制应用于超分辨率任务,最大信噪比有所提升。随着GAN(Generative Adversarial Networks)网络的成功,2017年,Ledig[10]等提出SRGAN(GAN for SR)来恢复4倍上采样因子图像的高频细节,由生成网络和判别网络博弈平衡,该网络峰值信噪比略有降低,但图像纹理更丰富,视觉效果更好。2018年,Xintao Wang[11]等针对SRGAN的不足提出ESRGAN(Enhanced Super-Resolution GAN),提高了网络的性能。

现有图像超分辨率算法在训练难度、纹理细节方面表现仍然不尽如人意,而且超分辨率算法在工程竹材散斑图像上尚未有所应用。

2 用于工程竹材散斑图像超分辨率的注意力密集残差网络

2.1 网络结构

本文提出一种注意力密集残差网络(Attention Dense Residual Network,ADRN),算法流程包括输入层、多层注意力密集层、上采样层和输出层。

输入层由卷积层组成,输入低分辨率图像,卷积操作将输入图像R、G、B三个通道的信息映射到C个卷积核分量上,将输入图片的浅层特征信息初步加深。

多层注意力密集层分为密集残差块和二级块,二级块中包含注意力模块,此层可以提取到图片更深层次的特征信息,并且对于各通道加以权重计算,使得模型能够更多地关注重要和关键的特征信息。

上采样层将特征图进行放大并将放大后的特征图输出到输出层。

输出层由卷积层组成,降低特征图的维度至3,并输出。

基于注意力残差结构的图像生成算法结构如图1所示,具有三个层次,首先一级密集残差块由n个密集残差块组成(n取16),每个密集残差块包含4个级联的二级块和1个卷积层,每个二级块包括卷积层、激活层和1个注意力模块。

2.2 注意力密集块设计

在超分辨率领域中,BN(Batch Normalization)层的归一化作用会在网络各环节中生效,会对图像的纹理信息造成一定的破坏,工程竹材散斑图像超分辨率任务对于图像细节信息的要求较高,为了对后续竹材尖端裂纹识别工作提供便利,并加快网络的训练速度,本文去除网络中所有的BN层。

工程竹材散斑图像重建不仅要求较高的分辨率,对比度、纹理等信息在工程竹材散斑图像中也尤为重要,因此本文使用CMAM[12]的通道注意力结构对网络进行改进。

注意力模型会将特征图进行全局平均池化(AvgPooling)和最大池化(MaxPooling),然后通过卷积核大小为X的卷积层减少通道数量,减少的比例为M,X如式(1)M如式(2):

(1)

(2)

式中:c为输入的特征通道数,r为典型值,取16。

图1 多层注意力密集结构

之后通过ReLU层和通过卷积核大小为c的卷积层,将特征通道数量恢复到初始值,然后通过Sigmoid层将各通道的权重系数分别输入到特征通道上,使得图片中的重点区域被关注。计算过程如式(3):

(3)

式中:σ为Sigmoid激活函数。

2.3 损失函数

在超分辨率任务中,最常用的损失函数为L2损失函数,即均方误差(MSE):

(4)

式中:W和H分别是图像的宽度和高度,IHR和ISR分别是原始高清图像和经过超分辨率还原之后的高清图像。

随后发现的L1损失函数,即绝对值平均误差(Mean Absolute Error,MAE),其表达式为:

(5)

根据其表达式推算,L2损失函数对于较大的误差相较于L1损失函数更加严厉,由此L1损失函数有着比L2损失函数更为出色的鲁棒性[13,14],因此采用L1损失函数监督训练。

3 用于工程竹材散斑图像超分辨率的生成对抗网络

3.1 网络结构

为了进一步提高还原出的图像质量,使用ADRN作为生成网络,借鉴Ralativistic Standard GAN的思想,让判别器尝试估计真实图像比超分辨率重建之后的高分辨率图像更真实的概率,取代经典判别器判断一幅图像是否为真实图像的工作模式,提出一种基于注意力密集残差结构和相对均值生成对抗网络(Attention Dense Residual Relative Average Generative Adversarial Networks,ADRAGAN),其中生成器部分包括 16个密集残差块,可以单独训练,判别器网络共包含7个卷积块,每个卷积块由3×3卷积层、BN层和L ReLU激活层组成,包含网络最前端的一个3×3卷积层和一个LReLU激活层,整个判别器共包含8个卷积层。

3.2 相对均值判别器

在SRGAN中,使用的判别器为标准GAN(Standard GAN,SGAN)使用的判别器,即估计一个图像是真实图像的概率。

经过足够的训练之后,判别器如果性能过关,那么其应该能够正确区分大多数图像的真伪性,而生成器的目标是尽可能地使判别器将伪图像判别为真实图像。这种逻辑事实上是不合理的,因为经过生成器的训练,真实数据和假数据看起来真实性的区别很小,如果判别器没有先验知识,则判别器可能会将所有的样本都判断为真实的。

相对标准GAN(Ralativistic Standard GAN,RSGAN)使用的判别器与标准判别器不同,其预测真实图像比伪图像更真实的概率[15]。

其判别器和生成器的损失函数如式(6)和式(7):

(6)

(7)

为了使判别器更具有全局性,本文对判别器进行了改进,使用基于相对均值的判别器DRa,如式(8)和式(9):

DRa(xr,xf)=σ(C(xr)-Exf[(xf)])

(8)

DRa(xf,xr)=σ(C(xf)-Exr[(xr)])

(9)

在相对均值判别器中,判别器和生成器的损失函数如式(10)和式(11):

-Exf[log(1-DRa(xf,xr))]

(10)

-Exf[log(DRa(xf,xr))]

(11)

式中:求均值的操作是通过对最小批量中的所有数据求平均值得到的,xf=G(xi),xr表示输入的低分辨率图像。

与SRGAN相比,生成器在训练时不仅可以从生成数据的梯度中提取信息,还能从真实数据中获得指导,对于判别器进行的这种调整可以使得网络生成的图片获得更为清晰的边缘和更丰富的细节信息。

3.3 损失函数

在提出的生成算法中,使用了L1损失函数,但是在基于生成对抗网络的模型中,无论是L2损失函数还是L1损失函数都无法准确和完全地度量重建出图像质量。

-Exf[log(1-DRa(xf,xr))]

(12)

结合感知损失、内容损失和对抗损失,本文生成器使用的损失函数为综合损失函数,如式(13):

(13)

4 实验结果与分析

4.1 数据集

实验所需数据集为工程竹材散斑图像,共有620张,图像的宽度为4 032像素,高度为1 348像素,部分图片如图2所示。

图2 工程竹材散斑图像部分图片

样本对中原始高分辨率图像来自原工程竹材散斑图像,由于原始图像存在大片无用的纯黑色区域,会大幅延长训练时间,所以首先将黑色区域去除,部分剪裁图片如图3所示,低分辨率图像是由高分辨率图像进行双三次插值降采样处理得到,比例系数为×4。

图3 工程竹材散斑图像部分剪裁图片

按8∶1∶1的比例分配训练集,测试集和验证集,即训练集图像数量为496张,验证集和测试集的图像数量均为62张。

4.2 实验条件

为了保证实验的科学性和正确性,本文均采用相同的硬件环境。硬件平台配置见表1。

表1 硬件平台配置

本实验在Windows 10 64位操作系统下进行,编程语言为Python3.7,所有深度学习框架由PyTorch搭建,IDE为PyCharm Community Edition,使用CUDA10.1和CuDNN7604加速模型训练。

本文使用初始学习率为1×10-4,采用Adam优化器,衰减速率参数设置为β1=0.9,β2=0.999,在残差添加到主路径之前乘的残差缩放系数设为0.2,损失函数之间的平衡系数取λ=5×10-3,η=0.01。

4.3 实验结果

为了评价改进的算法与其他算法之间的优劣,在放大因子为4的条件下,分别从客观指标峰值信噪比(Peak Signal to Noise Ratio,PSNR)、结构相似性(Structural Similarity,SSIM)以及主观指标平均意见得分(Mean Opinion Score,MOS)比较算法性能。

各算法在工程竹材散斑图像数据集上的PSNR值、SSIM值和MOS值见表2。

表2 各算法评价指标对比结果

由表2可知,在工程竹材散斑图像数据集上进行超分辨率重建,本文采用的ADRN 和ADRAGAN方法相较于传统双三次B样条插值方法在PSNR指标上分别提高了8.55 dB和8.74 dB,在SSIM指标上相对于传统方法分别提高了0.323和0.254,效果提升明显,其在主观指标MOS值上分别提高了1.22分和1.26分,这两种方法在工程竹材散斑图像上的重建效果都大幅领先传统方法。

原工程竹材DIC使用的双三次B样条插值方法和本文使用的方法重建出的高分辨率图像的对比结果如图4所示。从图中可见,双三次B样条插值方法重建出的高分辨率图像相较于低分辨率图像质量有所提升,但是细节纹理信息仍然非常模糊,本文采用的ADRN 和ADRAGAN方法相较于传统方法还原出的图像边缘明显更加锐利,细节更加丰富,其中ADRAGAN网络重建出的高分辨率图像视觉效果好于ADRN网络重建出的高分辨率图像。

图4 图像重建效果

5 结论

(1)针对网络训练稳定性不足和图像深层信息提取困难的问题,本文提出了一种用于工程竹材散斑图像超分辨率重建的注意力密集残差网络。对现存残差网络存在的不足进行改进,移除残差网络中的BN层以提高网络的稳定性以及降低网络训练的难度,引入注意力模型使网络着重于细节的重建,加强了高频信息在网络中的作用,结合多层密集连接,实现不同层次信息的融合,有效加深了网络的深度,提高了网络的性能。

(2)针对网络还原出的图像边缘不够锐利、细节不够丰富的问题,本文提出了一种用于工程竹材散斑图像超分辨率重建的生成对抗网络。将注意力密集残差网络作为生成器,结合感知损失、内容损失和对抗损失对相对均值判别器进行优化,更好地还原出了图像的细节纹理。

(3)实验结果证明,本文使用的网络结构在客观评价指标和主观评价指标下均优于传统插值方法在工程竹材散斑图像上的重建效果,并具有一定的参考价值。

猜你喜欢

散斑竹材残差
固体折射率的激光散斑测量实验
SiO2气凝胶纳米颗粒浸渍改性对竹材性能的影响
基于数字散斑相关法的固体折射率测量误差研究*
基于残差-注意力和LSTM的心律失常心拍分类方法研究
基于双向GRU与残差拟合的车辆跟驰建模
耐老化处理对毛竹竹材颜色变化的影响
热处理毛竹材吸湿与解吸特性
基于残差学习的自适应无人机目标跟踪算法
基于深度卷积的残差三生网络研究与应用
用于检验散斑协方差矩阵估计性能的白化度评价方法