潘敏婷,方云升,陈寰,王清峰,钱久超,朱肖光,刘佩林
(1.上海交通大学 类脑智能应用技术研究中心·上海·201109;2.上海航天控制技术研究所·上海·201109)
随着计算机视觉技术的发展,目标检测的应用范围越来越广泛。在制导武器上搭载基于人工智能的目标识别智能处理器,可以更加快速、便捷地锁定目标。在军事安全领域,红外成像尤为重要。相较于可见光成像,红外成像具有隐蔽性好、抗干扰能力强、可昼夜工作等优势。因此,在红外图像上应用目标检测技术,可以极大地提高识别系统的准确率。在人工智能中,神经网络往往需要大量的数据进行训练,不充足的数据会导致网络的拟合能力较差。面对由红外图像难以采集而造成的数据量较少的问题,采用基于生成对抗网络(Generative Adversarial Networks,GAN)的红外图像生成方法进行红外数据集的扩充,可生成复杂多样的红外样本训练网络模型,以提高网络的适应性和泛化性。
针对传统生成式模型中训练过程和数据生成过程效率较低的局限,Goodfellow等[1]人在2014年提出了GAN,通过输入随机噪声来生成图像,但生成的样本的类别是不确定的。换言之,无法控制模型生成特定类别的样本。为了解决这个问题,Mirza等[2]提出了条件生成式对抗网络(conditional GAN,cGAN)。cGAN在朴素GAN的基础上将条件变量y与噪音矢量z同时输入至生成器G(Generator)中。在判别器D(Discriminator)中,真实样本x和条件变量y同时作为判别函数的输入,可有效控制样本特定类别的生成。
GAN网络的输入,不仅可以是随机噪声,还可以是图片,可用于处理图像到图像的转换任务[3-5]。例如,由语义标签图像生成实景照片,由遥感卫星图生成虚拟地图等。在此之后,几乎在所有的图像到图像转换中,都能看到生成对抗网络的影子[6-7]。GAN在图像生成上已经具备绝对的优势,其生成的图片清晰逼真[8],但目前的研究主要针对彩色图像的生成,对红外图像生成的研究还比较少,且红外数据的采集比彩色数据困难。在没有充足红外样本的情况下直接训练生成模型,效果会比较差。鉴于有限的红外图片和充足的彩色图片,本文通过改进生成对抗网络,对鉴别器采用配对输入的方式,学习点对点红外映射进行风格迁移训练,将彩色图片转换为红外图片扩充了红外数据。使用L1损失函数增加了生成图片的清晰度,并在网络模型中加入了跳跃连接方式,增加了底层信息的输入,增强了网络的生成能力。此外,本文还制作了一个街道数据集。应用配对的红外图和彩色图进行训练,可以有效地学习两个不同域之间的转换关系,由此生成的红外图片更加逼真可靠。
GAN是一种生成模型,可以通过学习有标签样本的数据分布来生成类似样本,从而达到以假乱真的效果。GAN网络主要由两部分组成,即生成器G和鉴别器D。生成器G以随机噪声z作为输入,尽可能输出逼近真实分布的图片,使鉴别器D不能判别该图片是真实的图片,还是生成的图片。而鉴别器D的输入为真实的图片和生成的图片,可用来判别图片是否为真实图片,它的目标是尽可能地将生成器G生成的图片识别出来。因此,生成器G和鉴别器D构成了一个动态的博弈过程,其网络训练方式如图1所示。
图1 GAN网络示意图Fig.1 Schematic diagram of GAN
该网络的优化函数为
Ez~Pz(z)[log(1-D(G(z)))]
(1)
式中,L(D,G)为损失值,E表示数学期望,x为原始数据,Pdata(x)为真实的数据分布,Pz(z)为先验分布。对于鉴别器D而言,这是一个二分类问题,训练D最大限度地将正确的标签分配给真实样本和来自G的样本。对于生成器G而言,为了尽可能地欺骗D,其需要最大化地生成样本的判别概率D(G(z)),即最小化log(1-D(G(z)))。在实际训练时,生成器G和鉴别器D交替训练,即先训练D,然后训练G,不断往复,直至最终两者达到纳什均衡。
卷积神经网络(Convolutional Neural Networks, CNN)目前已成为解决各种图像预测问题的主力,其通过不断学习使损失函数最小化,但需要手动设计有效的损失函数。如果损失函数的设计不合理,盲目地要求CNN网络最小化生成图像和真实图像之间的欧氏距离,那么将会导致模糊的结果。这是由于欧氏距离是将所有输出进行平均的结果,如果将之最小化,将无法输出清晰和真实的图像。GAN网络可有效地解决这一问题。GAN网络可自动学习一个适合的损失函数,以区分真实样本和生成样本。模糊的图像由于过于虚假而易被识别出来,只有生成的图片较为清晰时,才可让鉴别器D无法识别。
由于各种环境和设备的限制,采集的红外数据十分有限。若直接使用基本的GAN网络对该数据集进行扩充,将无法生成清晰逼真的图片。由于彩色图像易于拍摄,且可以从网上收集,可以对GAN网络进行相应的改进,以实现彩色图像到红外图像的转换,这样便可解决红外图像不足的问题。
改进后的GAN网络如图2所示,其可以实现图像x到图像y的转换。网络的输入不仅仅是随机噪声z,而是随机噪声z和图片x。此时,生成器G的映射过程为G:{x,z}→y,而鉴别器D需要鉴别两组数据,即{x,G(x,z)}和{x,y}。
图2 改进后的GAN网络示意图Fig.2 Schematic diagram of the improved GAN
改进后GAN的损失函数为
Ez~Pz(z)[log(1-D(G(z|y)))]
(2)
生成器G不断地尝试最小化该损失函数,而D则通过不断的迭代最大化这个损失函数。生成器G不仅要欺骗鉴别器D,还要生成尽可能真实的图片,增加图片的清晰度。因此,可以给生成器G增加一个L1范数损失函数(L1 loss),即
(3)
式中,E同样表示数学期望。将式(2)和式(3)结合,最终的损失函数为
(4)
式中,α为平衡因子。
2.1.1 生成器的网络结构
图像转换问题的实质是将一个高分辨率的输入特征图映射到另一个高分辨率的输出特征图。虽然输入和输出特征图在显示上不一样,但是它们在底层结构上却是一致的[9]。因此,可以将输入网络和输出网络的结构设计为对齐的形式,如图3所示。
图3 生成器的网络结构Fig.3 The network structure of the generator
在网络中,输入图像经过几次卷积和下采样过程,在到达瓶颈层(bottleneck)后进行逆转,即执行反卷积和上采样操作。对于很多图像转换问题,输入图像和输出图像之间存在许多可以共享的底层信息,而这些底层信息对于图像的生成有着重要的意义,因此可以在输入结构和输出结构之间添加一些跳跃连接,进行底层信息的传递。具体地,每根跳线将第i层和第n-i层的特征通道连接在一起。其中,n为网络的总层数。
2.1.2 鉴别器的网络结构
L1范数损失函数和L2范数损失函数[10]在图像生成上会存在模糊的问题。尽管这些损失函数不能促进网络生成高频清晰的图像,但在许多情况下,它们可以捕捉到低频信息。因此,不需要再设计一个全新的结构来提高低频信息的准确率。这样的方式,使得GAN网络的鉴别器只需对高频结构进行建模,而低频信息的建模则需依靠L1损失函数。
设计鉴别器D关注局部图像块,只对块规模的结构进行惩罚,即将图片划分为N×N的图像块。鉴别器D对每个图像块进行分类,以区分该图像块为真或是假。在整张图片上,使用滑动窗口运行该鉴别器,最后以平均值作为鉴别器D的最终输出。
该网络需要一一配对的彩色图像和红外图像进行训练。根据FLIR公司使用红外摄像头拍摄的街道图片,制作出了彩色和红外配对的数据集。该数据集分别由超过8000张的彩色图片和红外图片组成,彩色图片的分辨率为1800×1600,红外图片的分辨率为640×512,且包含了白天和黑夜的情况。图片如图4所示,左边为红外图片,右边为彩色图片,左右两幅图拍摄的场景是完全一致的。
图4 数据集中的图片Fig.4 Images in the dataset
为了优化网络,使用标准的训练方法,交替进行生成器G和鉴别器D的训练,即先训练鉴别器D,然后训练生成器G,不断往复。当训练生成器时,对于最小化log(1-D(x,G(x,z)))的问题,可以将问题转变为最大化logD(x,G(x,z)),这样可以使网络更好地收敛。在训练过程中,可使用minibatch SGD和Adam优化器[11]。其中,学习率设置为0.0002。
在测试阶段,使用与训练阶段相同的方式来运行生成器G。另外,与常规的方法不同,在测试时使用了丢弃技术[12](dropout)和批量正则化[13-14]方式,而这一过程一般是在训练阶段使用。当设置批处理大小为1时,这种批处理规范化的方法被称为“实例规范化”,它已被证明对于图像生成任务而言是有效的。在实验中,根据实际情况,可使用1到10之间的批次大小。
实验在Utunbu16.04、Nvidia GTX1080ti操作系统下运行,基于Pytorch框架进行了网络构建。在整个训练过程中,生成器G的目标是生成可以以假乱真的图像G(z),让鉴别器D无法区分,即D(G(z))=0.5。此时,可得到一个生成器G,用来生成图像数据集。经过60次迭代,损失函数基本收敛,实验结果如图5所示。
(a)彩色图x
(b)真实的红外图y
(c)生成的红外图G(x)
在图5的实验结果中,第一列为需要转换的原始彩色图片,第二列为真实拍摄的红外图片,第三列为网络生成的红外图片。真实红外图与生成红外图的对比结果,表明改进的GAN网络可以有效地进行图片风格的转换,将彩色图片转变为逼真的红外图片以用于数据集的扩充。由于图片的分辨率较大,图中细小区域的转换存在一定的误差,网络模型在进行特征提取时,在经过卷积池化操作后,会遗失掉一些细小特征。使用跳跃连接的方式可以保留大部分细节,因此在进行红外图像生成时,对比真实的红外图片,图片虽然存在一些细节差异,但整体上相似度极高。
在生成的红外图片上进行车辆检测,检测结果如图6所示。图中第二列图片为第一列图片经过转换后生成的红外图片,在生成的红外图片上可以较准确地检测出车辆目标。在黑夜环境中,由于光线的问题,使用普通相机拍摄的彩色图片很难对车辆进行检测。本文提出的红外图像生成技术可有效地解决这一问题,将彩色图像转换为红外图像,然后在红外图像上完成对车辆目标的检测,这在很大程度上提高了目标检测的精度。
(a)原彩色图片
(b)生成的红外图片
将人工智能应用于制导武器是时代发展的趋势,人工智能可有效提高作战武器对复杂空间任务的自感知、自适应能力。本文研究了基于GAN网络的红外图像生成技术。红外图像采集的局限性,易造成红外图片不足,而充足的数据量是训练神经网络的重要条件。通过对GAN网络进行改进,制作配对的街道数据集以进行网络模型训练,实现彩色图片到红外图片的转变,以此扩充红外数据集。模型搭建和测试,验证了该算法可有效地生成清晰和高质量的红外图像。