基于DDR-CycleGAN的红外图像数据增强
2022-06-09杨坚华李启航花海洋
张 浩,杨坚华,李启航,花海洋
(1.中国科学院光电信息处理重点实验室,辽宁 沈阳 110016;2.中国科学院沈阳自动化研究所,辽宁 沈阳 110016;3.中国科学院机器人与智能制造创新研究院,辽宁 沈阳 110169;4.中国科学院大学,北京 100049;5.西北大学信息科学与技术学院,陕西 西安 710127)
1 引 言
随着深度学习的快速发展,在红外和可见光图像融合应用中已开展了广泛应用,由于深度学习在训练时需要大量成对的红外和可见光图像,而目前实际情况是可见光图像较易获取,而红外数据集较少。因此,通过数据增强方法来扩充成对数据集来实现红外和可见光图像融合是非常有必要的。
常用的数据增强算法包括传统方法:几何变换,色彩空间增强[1],核滤波器[2],混合图像[3],随机擦除[4];深度学习方法:特征空间增强[5],生成对抗网络[6],元学习[7]。
其中几何变换和色彩空间增强会损失图像信息,影响图像的标签;核滤波器和神经网络内部机制非常相似,其作为网络架构的一层较好,而不是通过数据增强对数据集增广;混合图像方法很难去解释其意义;随机擦除的缺点是其并不是总保存标签进行变换;特征空间扩展的一个缺点是矢量数据很难解释;元学习作为一个新概念没有经过大量实验的验证[8]。深度学习中的生成对抗网络以其优秀的计算速度和生成图像的高质量性备受关注,然而 pix2pix[9]网络需要成对的图像数据进行训练,Zhu J Y在2017年提出了循环一致性生成对抗网络[10]由于其不需要成对的数据就可以进行训练实现风格迁移,为解决数据集稀缺问题提供了解决方案。
受循环一致性对抗网络的启发,胡麟苗[11]运用循环一致性对抗网进行短波红外-可见光人脸图像翻译,实现了红外图像与可见光图像的相互转化,然而其方法生成器性能极易饱和,针对于该问题,本文提出了一种红外图像数据增强网络:双鉴别器相对循环一致性对抗网络,这种增强只需要少量不成对的数据就可以训练出从可见光图像到红外图像更高质量的映射,实现红外图像数据增强。本文方法主要有两个创新点:第一,对于双鉴别器循环一致性生成对抗网络的生成器在不断优化过程中会脱离鉴别器水平而产生过度优化的问题,加入了相对概率的思想,用鉴别器鉴别图像相对真实概率取代绝对真实概率,解决生成器在不断优化过程中会脱离鉴别器水平而产生过度优化的问题。第二,对于DDR-CycleGAN提出了Four-stage训练方法,相比于One-stage训练方法更大程度地提升了生成器性能。
2 双监督机制的相对循环一致性生成对抗网络
2.1 双鉴别器监督机制
CycleGAN 引入了循环一致性损失[10,12],从未配对的数据集中学习域间映射可以减少对配对数据的需求,学习的域间映射是一种风格转化,即为图像到图像的转化,通过结合一个图像的内容和另一个图像的风格来生成新的图像。可见光图像是依据物体反射率不同成像,红外图像主要是依据物体的温度或者辐射率不同成像。可见光图像的内容是图像的结构,红外图像的风格是红外辐射特征。本文主要是利用可见光图像扩充红外图像数据集,本质上是结合可见光图像的结构和红外图像的红外辐射特征实现可见光图像到红外图像的风格转化[13]。
CycleGAN模型包含两个生成器GX→Y(X→Y)和GY→X(Y→X)和两个鉴别器DX和DY,鉴别器DX的作用是鉴别输入的红外图像的真假,其损失函数为:
dxloss=[DX(realir)-label(realir)]+[DX(fakeir)-label(fakeir)]
(1)
其中,DX(a)为鉴别器对图像a的鉴别结果;label(a)为图像a的真实标签;鉴别器DY的作用是鉴别输入的可见光图像的真假,其损失函数为:
dyloss=[DY(realvi)-label(realvi)]+[DY(fakevi)-label(fakevi)]
(2)
在和鉴别器DY对抗过程中生成器GX→Y使红外图像吸收可见光图像的风格转化为更真实的可见光图像,在和DX对抗过程中生成器GY→X使可见光图像吸收红外图像的风格转化为更真实的红外图像。为了规范生成对抗网络,使生成的图像在获得新风格的同时不要失去原图像的内容,CycleGAN引进了循环一致性损失。原理即为利用生成器GX→Y将红外图像转化为可见光图像之后还可以利用生成器GY→X将其转化为原来的红外图像:X→GX→Y(X)→GY→X(GX→Y(X))≈X。
双鉴别器的循环一致性生成对抗网络原理如图1所示,在 CycleGAN 的基础上添加了两个鉴别器DX2和DY2,其中DX2和DX1的结构完全一样,DY1和DY2的结构完全一样,但是他们的初始化不同。当其中一个鉴别器达到收敛,在另一个鉴别器的作用下生成器仍不会停止学习[14-15]。双鉴别器结构有利于生成器得到充分训练,解决传统对抗网络的不稳定的过早饱和问题。
图1 DD-CycleGAN 原理图Fig.1 The schematic diagram of DD-CycleGAN
在实际训练中,对于不同的鉴别器,其鉴别方式不同,即提取的特征不同,因此生成器需要学习利用不同的特征去干扰鉴别器,这也会使得生成器训练地更加全面,性能得到更大的提升。可以这样理解,鉴别器是生成器的老师,生成器通过鉴别器学习特征,生成器训练流程如图2所示,理想来说,只要鉴别器足够多,生成器就可以学习所有特征进而生成最逼真的图像。
图2 DD-CycleGAN 生成器训练流程图Fig.2 The generator training diagram of DD-CycleGAN
2.2 鉴别器相对概率损失函数
虽然双鉴别器会使得生成器得到充分训练,但也导致生成器出现了过度优化的问题。鉴别器是为了区分真假图片,生成器是为了生成让鉴别器区分不开的假图片。例如,当鉴别器鉴别一个真图片是真的概率是 0.9 时,同时也鉴别假图片真实的概率是 0.9,那么这时候就可以认为鉴别器已经区分不开真假图片了,生成器效果已经达到最优了,但是根据 CycleGAN 的损失函数来看,生成器在这时候还要继续优化其网络结构进而生成接近于D(fake)=1 的图片,这就出现了过度优化的问题,D(fake)=1 的假图片在鉴别器鉴别下已经非常真实,但是其已经脱离了D(real)=0.9 的真实图片,反而不真实,图3为在D(real)=0.9 时的相对概率图,在欠优化区域和过度优化区域的生成图片都是不真实的,因此为了基于鉴别器的能力水平来训练生成器,本文加入了相对真实概率的思想[17]。
图3 D(real)=0.9相对概率Fig.3 D(real)=0.9 relative probability diagram
加入相对概率后的损失函数修改为:
dloss=E(real,fake)~(R,F)[f(D(real)-D(fake))]
(3)
其中,f是端到端的函数;R是真实图像的分布;F是生成图像的分布,同理,生成器的损失函数修改为:
gloss=E(real,fake)~(R,F)[f(D(fake)-D(real))]+
losscycle-consistency
(4)
在相对概率思想的影响下,可以保证生成器生成和真图像一样真实的图像,而不是脱离鉴别器的鉴别能力生成过度真实的伪真实图片。最后,双鉴别器相对循环一致性生成对抗网络的生成器网络结构设计如图4和表1,鉴别器网络结构设计如图5和表2。
图4 DDR-CycleGAN 生成器结构图Fig.4 The generator structure diagram of DDR-CycleGAN
表1 生成器的编解码神经网络结构Tab.1 Encoder-decoder neural network structure of generator
图5 DDR-CycleGAN 鉴别器结构图Fig.5 The discriminator structure diagram of DDR-CycleGAN
表2 鉴别器的二分类神经网络结构Tab.2 Two-classification neural network structure of discriminator
2.3 Four-stage训练方法
在前面提到,在实际训练中,对于不同的鉴别器,其鉴别方式不同,即提取的特征不同,因此生成器需要学习利用不同的特征去干扰鉴别器,这也会使得生成器训练地更加全面,性能得到更大的提升。但是鉴别器在面对鉴别任务会趋向于提取最有利的鉴别特征,在随机初始化的前提下,两个鉴别器面临相同的鉴别任务,会趋向于提取同一类鉴别特征,进而造成生成器性能在某一类特征上表现极佳,在其他特征上表现不好,为了促进生成器性能全面提升,对此提出了Four-stage训练方法,如表3所示。
表3 Four-stage训练步骤Tab.3 Four-stage training steps
3 实验验证
3.1 实验设计
本文的实验基于 Python3.6 和 Tensorflow1.14 版本,在实验中,设置两个鉴别器相同的权重,batchsize 设为 1,每 5000 步输出一次图像质量评价结果,初始学习率为 0.0002,之后余弦退火衰减到0.00001。鉴别器损失函数为:
dloss=(D(real)-D(fake)-1)2+(D(fake)-D(real)+1)2
生成器损失函数为:
gloss=(D(real)-D(fake)+1)2+(D(fake)-D(real)-1)2+λ|real-Cycle|
图像质量评价指标采用峰值信噪比(PSNR)和FID(Frechet Inception Distance score)两个指标。峰值信噪比是基于图像像素灰度值进行统计分析的衡量信号失真的指标:
(5)
(6)
FID由Heusel[18]等提出,其使用Inception v3模型的编码层提取图像特征,然后将真实数据分布和生成数据分布分别建模为均值为μr,μg,方差为Σr,Σg的高维高斯分布,通过计算真实数据分布和生成数据分布之间的Frechet距离来表征两个分布的差别:
(7)
FID具有良好的判别能力,是GAN的优秀判别指标。FID越小,说明生成的图像特征分布与真实图像特征分布越接近,生成器效果越好。
在FLIR数据集进行训练和测试,其共包含14000张图像,其中10000张来自短视频片段,另外4000张BONUS图像来自一段140 s视频。视频以30 Hz帧率记录,数据集序列以2 f/s或1 f/s速率采样。
3.2 相对概率作用分析
从图6中可以看出,DD-CycleGAN方法随着迭代次数增加,峰值信噪比先上升,在20000次时达到峰值59.5而后下降最终稳定在58.74。而加入相对概率的思想后,DDR-CycleGAN(One-stage)方法随着迭代次数的增加,峰值信噪比一直增加最终稳定在61.87,并一直高于DD-CycleGAN方法的峰值信噪比水平。说明加入相对概率的损失函数后有效避免优化过剩,也有利于避免图像失真现象的出现,提高了网络结构的稳定性。
图6 DD-CycleGAN 和DDR-CycleGAN(One-stage)峰值信噪比随迭代次数增加的变化曲线Fig.6 The PSNR of DD-CycleGAN and DDR-CycleGAN (One-stage)with the increase of iteration times
3.3 性能分析
DDR-CycleGAN(Four-stage)PSNR和FID随迭代次数变化曲线如图7所示,第一列分别为训练 5000次、200000 次、600000 次的输出图像。由图像可知,随着训练次数的增加,PSNR震荡上升最后达到稳定,稳定时PSNR为61.04,相比DD-CycleGAN提升了3.92 %,FID一直减少最后达到稳定,稳定时FID为61.18,相比DD-CycleGAN降低了3.81 %。说明加入相对概率的损失函数后有效避免优化过剩,也有利于避免图像失真现象的出现,提高了网络结构的稳定性。
图7 DDR-CycleGAN FID和PSNR随迭代次数增加的变化曲线Fig.7 The FID and PSNR of DDR-CycleGAN with the increase of iteration times
如表4所示,本文方法生成图像的峰值信噪比较高,而FID比较小,相比于双鉴别器CycleGAN 在生成红外图像质量上峰值信噪比提高了3.91 %,FID(Frechet Inception Distance score)降低了3.81 %,性能有着很大程度的提升,这代表着生成的红外图像与目标图像有着更高的相似度。
表4 训练结果评价指标Tab.4 Evaluation index of training results
图8展示了DD-CycleGAN、DDR-CycleGAN(One-stage)、DDR-CycleGAN(Four-stage)三种方法生成红外图像的比较,在图中标注的虚线框处可以明显看出DDR-CycleGAN(One-stage)方法生成的红外图像相比于DD-CycleGAN更加接近于红外图像,但是其纹理特征和边缘特征还原的较差,而DDR-CycleGAN(Four-stage)方法生成的红外图像全面还原了各种特征,图片质量最好。
图8 FLIR数据集在不同方法下的测试结果Fig.8 Test results of FLIR data sets under different methods
3.4 真实场景验证
为了测试本方法在实际场景的适用能力,选用了七组不同真实场景进行了性能测试,结果如图9所示。
图9 真实场景在不同方法下的测试结果Fig.9 Test results of real scene under different methods
本文的方法应用到真实场景中得到的结果见图9,经过对比三种方法的结果可以得到,DD-CycleGAN方法得到的红外图像虽然摆脱了可见光风格,但是其红外风格已经超越了真实的红外风格,看起来不真实;DDR-CycleGAN(One-stage)相比于它们既摆脱了可见光风格,又没有不真实的红外风格,但是边缘模糊;DDR-CycleGAN(Four-stage)方法不仅生成了较真实的红外图像,边缘也比较清晰,证明了该方法的可行性。
4 结 论
本文提出了DDR-CycleGAN(Double Discriminator relative Cycle-Consistent Generative Adversarial Network),即双鉴别器相对循环一致性对抗网络进行红外数据增强,有效地解决了科研过程中红外图像数据数量不充足的问题。本文方法主要有两个贡献:第一,在双鉴别器可能存在过度优化的问题上利用相对真实概率的思想,保证了网络性能不下降,确保了网络的稳定性。第二,对于DDR-CycleGAN,设计了Four-stage的训练方法,使得生成器可以更全面地学习特征,确保其性能全面提升。尽管该方法在红外图像数据增强方面取得了进步,但是这项任务仍然具有巨大的挑战性,接下来的工作将围绕鉴别器数量与生成图片质量的关系展开研究,以增强实际复杂场景下的生成器性能,进一步提高生成的红外图像质量。