基于特征重构CycleGAN的红外遥感图像生成
2021-09-23王楠李晓宾
王楠 李晓宾
(北京航空航天大学计算机学院 北京市 100191)
1 引言
在深度学习中,许多任务都是基于数据驱动的,数据的规模和质量决定了模型的最终效果。但是,当面临新的领域、新的任务中(如遥感、医学等特定领域图像),高质量的数据往往是相当匮乏的。在实际应用领域中,红外遥感在红外制导、武器装备等方面具有广泛的应用。但是,在这些领域中,红外数据的获取却受到限制,而红外卫星遥感分辨率较低,很难获取有效图像。在数据较少的情况下,深度学习的应用和效果都受到了影响。为了应对以上挑战,本文将易获取的可见光图像作为红外数据生成的来源,通过对CycleGAN网络添加特征重构损失,使得可见光数据在风格、内容、特征等方面生成近似符合红外数据特性的图像,解决了深度学习中红外典型军事目标数据少,难以寻找批量数据进行训练的难题。
本文的主要贡献有:
(1)本文设计了高效的红外遥感图像自动生成算法,扩大红外遥感图像的数据集规模,推动深度学习算法在红外遥感图像识别领域的应用;
(2)本文在基于CycleGAN风格迁移的基础上,添加特征重构损失,使得生成的红外图像与真实的红外图像在特征方面更具有相似性。
2 相关工作与问题分析
2.1 相关工作介绍
红外遥感领域对典型军事目标(如飞机、舰船等)机密性的严格要求,采集数据难度大。构建大规模、高质量的此类数据集非常困难,因此,利用一种红外仿真数据模拟红外真实数据是亟需的一项任务。在基于传统方法的图像生成时,一般从图像的灰度、对比度、饱和度、色调等方面进行处理。在遥感图像的红外军事目标数据生成中,由于自然图像与红外遥感图像相差较大,不宜采用。基于深度学习生成图像的技术中,生成对抗网络(GAN)[1]在计算机视觉中有许多如图像绘画、标注、生成等方面有着广发应用。Stackgan[2]是一种具有两层生成器的迭代方法。第一个生成器接收噪声输入并输出模糊图像,这些图像显示图像中目标对象的模糊细节和形状。第二个生成器生成更逼真的图像细节。InfoGAN[3]通过非监督学习得到可分解的特征表示。PPGN[4]使用激活最大化生成图像,这些图像采用去噪自编码器(DAE)来训练图像特征。CoGAN[5]利用权重共享和编码器VAE实现无监督图像之间的转换。这些基于生成对抗网络的技术解决了计算机视觉领域中数据量不足问题。虽然这些方法在图像生成方面比较有效,但它的训练过程非常不稳定,需要很多技巧才能获得良好的结果。
2.2 存在问题与本文思路
在一般的数据生成过程中,生成图像的数据分布、内容、特征难以与原始图像保持一致,即生成图像的真实性难以保证。图像生成的质量一般受风格、内容、特征等方面的影响。相同数据的分布可能有不同的表观特征,而相同的内容可能局部特征也不一样。在数据生成过程中,由于网络训练时的不稳定性,会出现生成的数据不理想的情况。图1展现了在基于生成对抗网络技术的生成图像过程中,出现的图像失真变形的示意图,从而在图像特征上不能保证生成数据的真实性。因此,生成器生成的图像在数据分布、特征等方面与原图能否保持近似一致受到了极大的挑战。
图1:基于GAN网络生成的图像失真示意图
图2:可见光生成红外图像中的生成器与判别器流程图
针对以上问题,本文在基于CycleGAN风格迁移的基础上,添加特征重构损失,使得生成的红外图像与真实的红外图像在特征方面具有相似性。为了使得生成的红外图像更加符合真实红外图像的特性,本章对CycleGAN[6]网络添加特征重构损失,使得生成图像与原始红外图像具有特征相似性。最重要的是,将特征重构损失与原始的生成对抗损失以及循环一致损失相结合,使得可见光数据在风格、内容、特征方面生成更符合红外数据特性的图像。生成对抗损失保证输出图像的分布,循环一致性损失保证输入和输出图像之间的内容相似性,特征重构损失保证生成图像与真实图像的特征相似性。
3 基于特征重构的CycleGAN红外图像生成网络
本节主要对CycleGAN网络进行改进,添加特征重构损失,以对红外目标与背景的生成进行详细分析。在CycleGAN中,有两个分布不同的图像域以及生成器和判别器。在训练过程中,利用对抗损失来衡量这两个域分布的差异。CycleGAN可以训练两个数据集而无需配对以学习输入图像和输出图像之间的映射。通过训练来创建这个映射,以得到输入图像和生成图像之间共享某些关联的特征。生成模型主要用于衡量数据分布,判别模型主要用于估计输入样本来自真实数据而非生成样本的概率。生成模型构造一个从先验分布到数据空间的映射以更好的学习数据的生成分布特性。也即,生成器拟合数据分布,判别器衡量分布的差异。
图3:可见光图像生成红外图像数据展示
图4:云雾场景下可见光图像生成红外图像实验结果
3.1 基于特征重构的损失函数
上述的对抗损失和循环一致损失只是保证生成的图像在数据分布与风格方面与原始图像尽量保持一致,而忽略了图像中的特征一致性。一般地,可以通过优化损失函数来生成高质量的图像。在基于CycleGAN网络将可见光图像对红外图像进行生成时,为了保证生成的红外图像内容更逼真,本节结合图像变换中的感知损失(Perceptual Loss)[7][8]中的特征重构损失函数,使得生成的红外图像更接近于真实红外图像。
图2是可见光图像生成红外图像中的生成器与判别器的结构图展示。其中,生成器由编码器、转换器和解码器构成。首先输入图像经过编码器中的卷积神经网络对输入图象中提取特征,将具有高维信息的图像压缩为低维特征向量。然后转换器通过组合两类训练集图像域中的不相近特征,将可见光域中的特征向量分布转换为红外域中的特征向量分布。在本节中,转换器中使用了多层残差网络ResNet模块。每个ResNet模块都是一个由两个卷积层组成的神经网络层,可以实现在转换特征的同时保留原始域中图像数据集的特征的目的。解码器利用多层反卷积层实现从特征向量中还原出低级特征的功能,最后得到变换后的近似符合目标域数据分布的图像。即通过反卷积模块把这些特征重构成图像。与生成器相对应的是判别器模块,它是将生成的红外图像和真实的红外图像作为输入,对输入图像判断其为原始真实图像还是生成的虚假图像。
图5:爆炸场景下可见光图像生成红外图像
本节使用判别网络的隐藏层来评估生成的红外图像和真实红外图像之间的特征重构损失。该特征重构损失使用预训练的网络提供的高层特征。预训练好的骨干网络模型可以将图像从像素空间映射到高级特征空间。对图2中判别器隐含层中构造特征差异,并利用最小绝对误差计算判别器中的隐含层特征表示之间的差异。特征重构损失定义如下:
其中,j代表隐含层的层号,N代表样本数量,xi代表输入的第i个可见光图像,T代表生成器中的图像转换功能,T(xi)代表输入图像经过生成器变换后生成的红外图像,yi代表第i真实的红外图像,Fj代表第j个隐含层上的图像特征表示,Fj(yi)代表真实红外图像在判别器中第j个隐含层的特征表示,Fj(T(xi))代表输入的生成的红外图像在判别器中第j个隐含层的特征表示。Lfeature值越小,说明生成的红外图像与真实的红外图像特征相似性越接近,也即生成的图像越逼真。
在实验的训练过程中,特征重构损失衡量了生成图像与真实图像之间的特征相似性。这样做保证了可见光图像在生成红外图像的过程中,能够将输入的可见光图像转换为与真实的红外图像具有相似高级特征的红外图像。生成器与判别器的训练交替进行,一方面使得判别器能持续寻找输出图像与真实图像的高维特征的差异,以此作为生成器的反馈调节,使得生成器生成的图像与真实的图像之间的差异越来越小,即两者越来越逼真。另一方面训练生成器,使得判别器对生成器生成的图像难以辨别是真实的还是生成的。
其中,LFeature_all为总的特征重构损失,它包括生成器损失LG和判别器损失LD。当训练时,只要存在生成图像与真实的红外图像有差异,判别器就会持续自动的输出差异。实验中制定了衡量生成图像与真实图像相似度的重要指标的参数。简而言之,该参数值越小,LD损失越接近0,这时判别器很难区分相似的图像。该参数值越大,损失值接近0的难度就越大,这甚至会导致网络无法收敛,但是可以更确定地分辨出更多相似的图像。
基于CycleGAN图像生成的损失为对抗损失和循环一致性损失以及特征重构损失的总和:
其中 λ和β为循环一致损失和特征重构损失的权重系数,也即控制两者的相对重要性。Ladv、Lcyc分别代表对抗损失和循环一致损失。在实验训练过程中,生成网络和判别网络轮流交替进行。通过对抗训练过程,学习两种数据集之间的某种映射关系。
4 实验结果与评价指标
4.1 实验结果与分析
本文中的可见光遥感图像数据来自GF1和GF2卫星。全色图像的分辨率与红外图像的分辨率不同是一个重要的事实。为了得到批量的满足红外数据分布的不同场景的红外数据集,本节验证了本文提出的CycleGAN网络生成的红外数据集的分布以及质量。同时,为了生成更多的干扰复杂场景的红外图像,实验中本文将可见光图像的厚云厚雾等干扰场景经过CycleGAN网络进行迁移,然后将迁移后的干扰场景图像与所需的舰船目标进行不同位置、不用视角、不同尺度的泊松编辑融合,从而得到批量的红外样本库。图3展示了可见光全色图像生成红外图像的部分结果图。从实验结果可以看出,生成的红外图像在风格、内容等方面能够保持较好的特性。
图4中的第一列是多光谱与全色图像在不同场景下的云雾图像。第二列是经过本文提出的CycleGAN生成的红外云雾图像。其中,第一行和第二行为多光谱图像中的平静海面背景下的薄云、碎片云场景。第三行为全色图像中黑云存在的场景。从上表可以看出,从全色图像经过风格迁移的红外图像比较自然,表观特征与真实红外图像比较相似。
图5中展现了多光谱图像在不同爆炸火光场景下舰船的迁移效果图。第一行为爆炸火光处于前期时的状态,第二行为爆炸火光为处于中后期火光落下的状态,第三行为烟雾处于漂移的状态,第四行为厚烟雾处于爆发的状态。可以看出,本文算法在面对爆炸火光的发生的不同时期,均能迁移出较自然的效果。
4.2 数据集质量评价指标
基于GAN网络等生成模型的评价是深度学习研究的重要组成部分。为了更好的评估基于CycleGAN生成的图像质量,本文采用FID指标来衡量CycleGAN生成的图像质量。FID值越低,说明生成的图像质量越高。Inception V3是一个特征提取的深层网络,最后一层是池化层,网络输出图像的类别。在计算FID时,得到的是个具有较高维度的n维特征。假设原始样本集得到的此n维向量是服从高斯分布的,则对于基于CycleGAN生成的图像经过特征提取网络后,得到的n维向量也近似看作符合某种分布。为更好的评估本章CycleGAN生成的图像数据分布与原始图像的分布差异,本文采用FID来度量这两种多维特征分布的距离。FID计算公式如下:
其中, Tr表示矩阵对角线上元素的总和,矩阵论中俗称“迹”。均值为u,协方差为∑。此外 x表示真实的图片,g代表生成的图片。上式(ux,ug)和(∑x,∑g)分别是来自真实数据分布和生成样本的均值和协方差。通过本章算法对可见光图像中的部分舰船数据集生成红外遥感图像舰船的部分数据集FID值可以达到30.26。
5 结论
本文提出一种基于特征重构CycleGAN红外数据生成算法,解决了红外图像中的目标样本量受限的问题。该方法可以通过可见光图像与红外图像的互相迁移的生成学习,达到一种以可见光图像辅助生成海量且高质量的红外图像数据的作用,有效解决红外遥感领域的样本不足的问题。本文对CycleGAN网络添加特征重构损失,使得可见光数据在风格、内容、特征方面生成更符合红外数据特性的图像。实验结果表明,本文提出的方法可以高效实现红外遥感图像的自动化生成,图像能够保持较好的特性。