APP下载

改进DCGAN的飞机蒙皮图像生成方法

2022-04-08农昌瑞杨智勇刘镇毓曾庆松

兵器装备工程学报 2022年3期
关键词:蒙皮残差网络结构

张 静,农昌瑞,杨智勇,刘镇毓,曾庆松

(1.海军航空大学,山东 烟台 264001;2.烟台理工学院,山东 烟台 264001)

1 引言

飞机蒙皮是保持飞机良好气动特性的重要部件,其大部分时间暴露在自然环境中,极易产生裂纹故障,同时,飞机蒙皮在受到外来物等冲击会导致蒙皮缺损故障,此外,蒙皮件在日常工作过程中还会产生磨损故障。如果这些故障不能及时发现并进行修复,可能会导致严重的飞行事故。传统的故障检测方法对机务人员的工作经验与业务水平的要求较高,且存在检测效率低、漏检等问题。为此,利用深度学习方法对飞机蒙皮进行故障检测逐渐受到研究学者的关注,基于深度学习的检测方法具有检测速度快、精度高的优点,能够在一定程度上降低检测成本、减轻检测人员的工作量。但是利用深度学习的方法进行故障检测,需要依赖大样本数据才能获得较好的训练效果,而飞机蒙皮故障的图像数据往往不对外公开,研究人员难以获取数据来建立大样本数据集,这严重影响了网络的检测性能。

为了解决小样本这一难题,通常可以采用数据增强的方式对数据集进行扩充。数据增强(data augmentation,DA)通过对样本图像进行多种变换,获得具有多样性的样本图像。传统的DA方法如PCA(principal component analysis,PCA)抖动、随机裁剪、旋转等,但是这些方法主要是在原图的基础上进行一定规则的变换,生成图像的分布较为单一。2014年Goodfellow等提出了生成式对抗网络模型(generative adversarial networks,GAN),并在图像超分辨率、DA等领域得到了广泛的应用。GAN在DA中具有更大的优势,其通过产生一组随机噪声并对真实样本进行学习,生成新的样本数据,从而摆脱对原图进行简单变换的限制,进而解决小样本数据增强问题。GAN提出后得到了学者们的广泛关注,出现了针对不同任务的改进版本,其中2015年Radford A等提出的DCGAN(deep convolutional generative adversarial networks,DCGAN)是解决DA问题较优异的改进算法,其引入步长卷积替换原有的感知机层,具有较好的训练稳定性,生成样本的质量较好。

2019年Juan W等将DCGAN应用到帕金森识别中,通过对样本数据增强,进一步提高了模型的识别准确率;孙东平在金属零件外观瑕疵检测中引入了DCGAN,改进DCGAN模型以生成瑕疵块样本数据,有效解决了小样本检测难题;2020年甘岚等引入了Wasserstein距离与普归一化(spectral normalization,SN)等对DCGAN进行改进,用于数据集增强;徐永士等则是将DCGAN应用于SAR图像生成中,通过增加生成器数量来提升模型性能;2021年张笑璐等针对轴承故障诊断中样本不均衡问题,引入DCGAN生成分布较均衡的样本;杨彦利等将DCGAN应用到绝缘子图像生成中,获得了质量较好的图像数据。通过上述文献,可以看到DCGAN在SAR图像、金属零件瑕疵图像和绝缘子等图像生成中具有较广泛的应用,故将DCGAN应用到飞机蒙皮故障图像增强中是有效可行的,但是在实际应用过程中也发现一些问题,如生成图像的尺寸小、图像质量差、训练不稳定等。

为此,本文中从以下2个方面进行改进:① 针对生成图像尺寸与质量问题,改进网络结构,使用更深的网络层以生成更大尺寸的图像,并使用ResNet残差模块代替原来的步长卷积;② 针对训练不稳定,引入Wasserstein距离代替原来的损失函数。经过改进,上述问题得到了有效解决,DCGAN的性能有所改善。

2 DCGAN原理

DCGAN是在GAN的基础上提出的一种无监督深度学习模型,其结构包括生成器Generator(G)和判别器Discriminator(D),G和D通过相互竞争,最终实现纳什均衡。其中,G给定噪声输入,随后通过学习真实数据的数学分布与特征信息,最终生成新的样本数据。D则是对输入样本进行判断,辨别出样本是生成样本还是真实样本。DCGAN结构如图1所示。

图1 DCGAN结构示意图Fig.1 Structure of DCGAN

DCGAN在GAN的基础上采用了全卷积结构,进一步提高了网络的特征提取能力,考虑到利用池化层(pooling)进行下采样会损失部分图像信息,因此把网络中的池化层替换成了步长卷积,其中G网络由5层反卷积层组成,使用卷积核为4×4、步长为2的反卷积层,后边进行批量归一化(batch normalization,BN),除最后一层使用的是Tanh激活函数,其余层均采用ReLU激活函数;D网络与G网络基本对称,由5层卷积层组成,其采用卷积核为4×4、步长为2的卷积层,采用LeakyReLU激活函数。

在模型训练过程中,随机噪声被输入到G网络中进行学习,获得G生成的样本数据G(),此时期望G()经过D网络后得到的概率为1,即D(G())=1,则1-D(G())=0,也就是最小化模型G。当训练模型D时,若输入为真实数据时,期望目标仍是判别概率为1,即D()=1;若输入为生成数据G()时,则期望目标是判别概率为0,即D(G())=0,则1-D(G())=1,因此最大化模型D。所以G和D的训练问题变成了V(G,D)的最大化最小化问题,可表示为

(1)

式中:为真实的数据分布;为噪声分布。G和D的训练是一个反复迭代的过程,通常固定G训练D,对D中的参数进行更新,反过来再更新G的参数,直至网络到达稳定。而当=时,(,)就可获得全局最优解,也就是达到了纳什均衡状态,此时训练趋于稳定。

3 改进的DCGAN模型

飞机蒙皮故障图像主要用于后续的故障检测,因此要求生成图像的质量必须较高,且图像尺寸不能过小,否则会影响目标检测网络的训练效果,而原网络结构只能生成小尺寸的图像,且图像的质量较差,因此,需要对DCGAN进行改进,以生成满足要求的高质量飞机蒙皮故障图像。

3.1 DCGAN网络结构的改进

图1中,DCGAN模型层数较少,生成的图像尺寸只有64×64,无法满足需求,因此需要进一步扩大图像尺寸,本文在原DCGAN结构上增加3层卷积网络,改进后的网络能够生成大小为512×512的飞机故障图像。

直接增加网络层数,在一定程度上能够提取更具代表性的图像特征,提升网络的特征表达能力。但是,由于卷积神经网络的反向传播机制,网络加深使得参数量增多,参数若为极大的值或极小的值,在反向传递过程中会导致梯度爆炸或者梯度消失的问题,最终的结果就是生成图像的质量不佳以及网络的生成能力不稳定。

为此,在加深网络的深度过程中,引入了残差模块对DCGAN进行改进,将生成网络和判别网络中的步长卷积替换成残差模块,残差网络能够更好地解决网络层数加深导致的上述问题,在网络加深的情况下比直接堆叠网络层取得更优异的图像生成效果,从而确保在调整网络结构和层数时也能够生成较高质量的图像,同时,引入残差网络能够减小网络的参数量,进一步优化了网络结构复杂度。

如图2的生成器结构,原生成网络利用多个反卷积层实现图像生成,改进后的残差模块将反卷积替换成了两个卷积核为3×3、步长为1的卷积操作,每个残差单元通过增加上采样实现残差操作中的特征图像放大,非残差边则使用卷积核为1×1、步长为2的反卷积层进行简单的特征图放大,以保持与残差块相同的输出尺寸。生成网络在将一维的噪声变换成4×4大小的图像后,连续进行7次残差模块的特征图放大,最后进行一次3×3的卷积核转换通道数,采用Tanh激活函数生成512×512尺寸的图像。

图2 引入ResNet的生成器结构框图Fig.2 The generator structure of ResNet

如图3的判别器结构,改进的残差模块使用卷积核为3×3、步长为1的卷积层进行卷积操作,然后通过下采样进行特征图像的缩小,非残差边则利用步长卷积进行特征图像缩小,最后将残差边与非残差边进行堆叠输出。判别网络先进行一次步长卷积,随后进行6次残差模块的特征缩小,最后通过全连接将特征展开成一维输出判别结果,这里由于引入W损失函数,因此去掉了sigmoid激活函数。

图3 引入ResNet的判别器结构框图Fig.3 The discriminantor structure of ResNet

3.2 损失函数的改进

根据前面的分析可知,式(1)是DCGAN网络的优化目标,而DCGAN包含生成网络和判别网络两部分,所以可将式(1)拆分成两个损失函数模型。其中,判别网络的损失函数为

(2)

式中,第一部分为真实图像的判别结果,第二部分是生成图像的判别结果,前项越趋近1则说明效果越好,后项则是越趋近0效果越好,期望的结果是趋近于1,因此再加上对数函数就得到了判别网络的损失函数。而生成网络的损失函数为

(3)

同理,生成网络的损失函数同样也要使用对数函数,生成数据的结果趋近于1则效果越好。改进前的DCGAN使用Jensen-Shannon(JS)散度来衡量分布之间的距离,但是其存在训练结果不稳定,特别是两个分布的相关性不大时。因此,本文中引入了W距离作为损失函数,W距离在2个分布没有重叠的情况下,也能实现远距离响应。

距离的定义为式(4),通过计算真实样本和生成样本的距离‖-‖,求得分布下样本对距离的期望(,)~[‖-‖],而联合分布中的期望值下界就定义为距离:

(4)

(5)

式中要求函数()的Lipschitz常数‖‖在小于等于的情况下,所有满足条件的取[()]-[()]的上界,再除以。进而可以用参数定义的函数将式(5)做进一步的变换得:

(6)

-[(()]

(7)

[()]-[()]

(8)

式(7)为生成网络的损伤函数,式(8)为判别网络的损伤函数。引入距离构建的损失函数,将DCGAN中判别网络原本的二分类任务转化成了回归任务,因此需要将网络最后一层sigmoid函数除掉。

4 实验过程和分析

4.1 实验环境配置

实验的软硬件环境配置如表1所示。

表1 环境配置Table 1 Environment configuration

4.2 评价指标

本研究中主要针对飞机蒙皮故障图像生成方法进行研究,关键的指标就是生成图像的质量,而图像清晰度是图像质量优劣的重要指标,它能够较好的与人的主观感受相对应。由于生成图像的评价过程是直接对生成图像进行评价,不再利用原始输入图像作为参考,因此,应选择“无参考”图像质量评价方法对生成图像进行评估,而灰度方差(sum of modulus of difference,SMD)函数、Tenengrad梯度函数、Laplacian梯度函数是常用的3种“无参考”图像质量(主要指清晰度)评价方法,故本文选择这3种评价方法对生成图像进行质量评价,引用这3种方法能够较好地对网络的图像生成能力进行客观评价,3种指标通过量化后的数值进行评价,量化后的数值越大,表示样本的清晰度越高。

SMD函数基于图像聚焦时清晰度越高,则图像中的高频分量越多,因此可以实现图像的清晰度评价

(9)

Tenengrad梯度函数采用Sobel算子提取水平和垂直方向的梯度值,其图像清晰度定义为

()=∑|(,)| ((,)>)

(10)

Laplacian梯度函数将式(10)中的(,)改成Laplacian算子即可。

4.3 实验过程与结果分析

网络训练数据集由某型飞机蒙皮缺损图像300张、裂纹图像300张组成。训练过程中,学习率为0.001,噪声输入为120,使用随机梯度下降(stochastic gradient descent,SGD)优化器,Batch Size大小为64,生成器和判别器的迭代训练次数为1 000次。网络每迭代10次输出一次生成器损失与判别器损失绘制成损失函数,直观展示网络训练过程的损失函数变化情况,同时,每迭代一次便输出一次生成的图像,直观展示训练过程中网络生成能力的提升过程。

图4展示了网络改进前后训练过程中损失函数的变化曲线,其中,图4(a)是生成网络损失函数的变化情况,G_loss_OR为仅增加网络层的网络结构的生成器损失函数,G_loss_RE为使用残差结构的网络生成器损失函数;图4(b)是判别网络的损失函数,其值包括判别为真的损失和判别为假的损失之和,其中的D_loss_OR为改进前的判别器损失函数,D_loss_RE为改进后的判别器损失函数。

从图4看网络的训练情况,图4(a)中,改进前的网络生成器损失函数在前400次迭代中,损失在不断增加,在400次迭代后,损失稳定在7~9之间振荡,对应图4(b)中,改进前的网络判别器在400次迭代前呈振荡衰减的趋势,在400次迭代后损失在0附近稳定振荡且趋于稳定;改进后的网络结构,对应图4(a),其生成器损失函数在前300次迭代中呈振荡上升的趋势,在300次迭代后稳定在5~7之间振荡,对应图4b中的判别器损失函数,在300次迭代前呈振荡衰减的趋势,在300次迭代之后振荡明显减弱,逐渐趋于稳定在0附近小幅度振荡。从训练过程的损失函数曲线来看,改进前后的网络结构训练过程都能收敛并趋于稳定,说明生成器和判别器最后都达到了相互制约、平衡的状态,从中也可以看到,改进后的网络结构训练效果明显比改进前更优异,网络训练的收敛速度更快,训练更加稳定。

图4 改进网络训练损失对比曲线Fig.4 Contrast curve of training loss of improved network

为研究网络结构改进前后图像生成质量的变化情况,将训练过程中每一次迭代生成的图像以5×5的缩略图像格式进行保存,图5展示了网络结构改进前后,训练过程的初期、中期、后期3个不同阶段的生成的蒙皮缺损故障图像。

图5 生成器生成的图像Fig.5 The image generated by the generator

从图5中可以明显看到,在第100次迭代时,网络具有初步的生成能力,能够生成较模糊的图像,存在较为明显的噪声点;在第500次迭代时,网络的生成能力得到较大提升,生成图像的质量明显提高,噪声点基本消除;在第1 000次迭代时,网络的生成能力基本稳定,与第500次迭代时的效果相差不大,图像的质量较清晰。再对网络改进前后的生成图像进行比较,从不同阶段生成的图像质量来看,改进前的网络结构生成的图像质量较差,存在一定的噪声,不能很好地反映出真实的蒙皮故障特点,无法用于蒙皮故障图像检测网络的训练当中,而引入残差模块的网络结构生成的图像质量比较好,生成的蒙皮图像故障的特征较清晰,可用于扩充蒙皮故障图像数据集。

通过从生成图像中随机选取500张图像,计算3种指标的平均值作为量化评价指标,改进前后网络结构生成的图像评价指标如表2所示。

表2 样本质量评价指标Table 2 Comparison of sample quality evaluation indexes

表2中DCGAN-OR为改进前的模型,DCGAN-RE为引入残差模块的模型,通过其中的数据可以看到,DCGAN-RE模型生成的图像质量比改进前的模型有了较大提升,表明改进后的DCGAN能够生成清晰度较高的图像,无论是从直观图像还是客观评价指标来看,改进后的网络生成图像的质量能够满足飞机蒙皮图像故障检测应用中的图像要求。

5 结论

将DCGAN应用到飞机蒙皮故障图像生成中,进行数据样本的扩充,针对飞机蒙皮故障图像的生成要求,对DCGAN的网络结构进行改进,取得的成果主要有:

1)通过引入W距离作为新的损失函数,加快了模型收敛的速度,提高了模型训练的稳定性。

2)通过引入残差模块,模型生成的图像质量得到显著改善,其中SMD值提升了30.6%,Tenengrad值提升了41.5%,Laplacian值提升了13.4%。

猜你喜欢

蒙皮残差网络结构
客车侧围铝蒙皮涨拉工艺技术研究
飞机机翼内垫曲线式褶皱夹层结构的抗鸟撞性能研究
多级计分测验中基于残差统计量的被试拟合研究*
大型客机蒙皮生产线制造效率分析
基于镜像铣的某型飞机厚蒙皮铣边优化
基于残差-注意力和LSTM的心律失常心拍分类方法研究
用于处理不努力作答的标准化残差系列方法和混合多层模型法的比较*
融合上下文的残差门卷积实体抽取
试论分布式计算机网络结构分析与优化
带通信配网故障指示器故障监测方法及安装分析