庄文华,唐晓刚,张斌权,原光明
(航天工程大学航天信息学院,北京 101416)
当今世界,安防行业的视频监控系统已经成为目标检测领域的重要应用场景,视频监控系统能够守护能源、工业、金融、城市和交通的安全,也能守护社区和家庭生活的安全[1]。对于安防监控而言,要想达到全天候监测目的,最大的难题是在夜间时段对环境中目标的监测。因此,对夜间监控视频或图像中重要的目标进行准确定位和监测已经成为建设平安城市亟待解决的重要课题[2],探索有效的面向夜间场景的目标检测方法具有很重要的现实意义。
红外图像是通过探测目标与背景间的热辐射差异的方式来采集的,图像内容取决于目标和场景的温度分布,不受光照的影响,但细节信息较差;
可见光图像对比度和分辨率极高,但在夜间低照度条件下可视性差。因此在夜间弱光或无光条件下进行目标检测,可以充分利用红外图像和可见光图像的优点来增强监测系统的夜间监测能力,进而提高目标检测的准确率[3]。
随着计算机技术的不断发展,基于深度学习的红外与可见光图像的图像增强成为了研究热点[4]。Liu等[5]于2018 年提出了一种基于CNN(Convolutional Neural Networks)的图像融合[6]方法,利用CNN 获得了图像中像素活动信息的权值图,并采用图像金字塔的多尺度融合方法进行融合增强;
Li等[7]利用在ImageNet[8]中预训练的固定VGG19网络来提取多层特征之后再进行图像融合增强;
Prabhakar 等[9]通过引入Encoder 和Decoder[10]的 结 构 来 进 行 图 像 增 强;
Ma等[11]第一次将GAN[12]引入图像融合增强中,无需定义融合规则,从源图像自动生成融合图像。
上述研究均需要2 幅完全匹配的图像才能进行图像融合的工作,然而在实际应用中,很难获得完全匹配的可见光和红外图像。针对上述问题,本文提出一种基于循环一致性的无监督可见光图像生成方法In2vis-CycleGAN。作为一种无监督算法,本算法无需一一匹配的红外可见光图像数据集,通过训练构造出强光下的可见光图像和全天候下的红外图像的图像映射,进而在夜间就可以从一幅红外图像生成对应的可视性好的可见光图像,达到对夜间低照度条件下的图像增强,从而提高夜间目标的检测准确率和抗干扰能力。
1.1 CycleGAN网络架构
在没有配对数据的情况下,CycleGAN[13]通过引入循环一致性来建立源域和目标域的图像映射。如图1(a)所示,生成器G和F分别进行域X和域Y的图像转换,判别器DY和DX用于判断输入图像来自真实图像还是生成图像。为了杜绝模型把所有域X的图像都转换为域Y中的同一幅图像,生成器G和F还应满足循环一致性:如图1(b)所示,将输入图像输入G得到生成图像G(x)以后,再将生成的图像G(x)送入F获得重构图像F(G(x)),同时约束图像重构图像无限接近输入图像,即循环一致性。
图1 映射函数和循环一致性损失
本文的网络架构如图2 所示,生成器G和F分别输入红外图像IR 和可见光图像VIS,DX和DY用于判断输入图像是真实图像还是生成图像。为了网络架构的循环一致性,避免所有的红外图像IR 都被映射到同一张可见光图像VIS 上或者所有的可见光图像VIS 都被映射到同一张红外图像IR 上,还存在IR→GVIS→REIR和VIS→GIR→REVIS的2组重构图像的线路,GVIS 和GIR 分别为生成器G生成的可见光图像和生成器F生成的红外图像,REIR 和REVIS 分别为网络重构的红外图像和重构的可见光图像,约束重构图像与输入的源图像尽可能相似。
图2 本文网络架构
1.2 CBAM注意力模块
计算机视觉的注意力机制[14]借鉴了人类的视觉注意力机制,本质上是一种资源分配机制。因此计算机视觉中的注意力机制的作用为判断输入图像的哪一部分需要重点关注,并把有限的算力资源分配给这一部分[15]。
如图3 所示,CBAM(Convolutional Block Attention Module)[16]是一种轻量级的通用注意力模块,包括通道注意力模块和空间注意力模块,可以无缝地集成到CNN 中进行端到端训练,提升神经网络提取有效特征的能力。
图3 CBAM网络结构[16]
本文通过在生成器中Transformer 模块Resnet[17]添加CBAM 注意力模块,如图4 所示,构造出CBAMResnet模块来提高网络的特征提取能力,其中通道注意力模块[18]可以获取特征层对关键信息的重要程度和关联程度,空间注意力模块[19]能够使模型获取特征层的关键位置信息,进而促使模型加强在不同阶段对输入图像重点目标的关注程度,从而显著提高生成图像的质量。
图4 CBAM-Resnet网络结构
1.3 生成器解码器改进
当使用神经网络生成图像时,网络模型会从低分辨率描述粗略的图像开始一步步填写细节来提高分辨率,通常使用转置卷积[20]来执行此操作,但是转置卷积具有不均匀的重叠,如图5 所示,会导致生成的图像产生如图6 所示的“棋盘伪影”[21]。而神经网络在生成图像时通常会使用多层反卷积,它们通常会复合,从而在生成图像的各种尺度上产生伪影,使图像的质量严重受损。因此为了保证生成图像的高质量,不在生成图像产生“棋盘伪影”,本文的生成器编码器网络架构不再使用CycleGAN 的原始反卷积层,上采样方式改为最近邻插值图像缩放然后加一层卷积层的方式来替代。
图5 反卷积的重叠
图6 “棋盘伪影”
本文改进的生成器由Encoder、Transformer 和Decoder 这3 部分组成,网络结构如图7 所示,各层网络具体配置如表1 所示,其中Encoder 由3 层卷积层组成,负责下采样提取输入图像的有效特征图;
Transformer 由9 层构造的CBAM-Resnet 组成,负责学习下采样获得的有效特征图并传递到Decoder 中;
Decoder上采样方式改为最近邻插值[22]图像扩大一倍然后加一层卷积层的方式。
图7 生成器网络结构
表1 生成器网络配置
1.4 损失函数改进
原始CycleGAN 使用交叉熵函数来衡量生成器和对抗器的损失,但是由于GAN 网络对网络超参数的选择更加敏感,交叉熵函数容易导致网络训练不稳定,无法生成有效图像[23]。因此本文借鉴LSGAN[24]的方法,使用最小二乘函数作为对抗损失函数。最小二乘函数可以通过优化决策边界来提高GAN 网络的泛化能力,提高网络的稳定性和收敛速度,进而提升生成图片的质量。最小二乘函数下的对抗损失如下:
本文选择的数据集选自天津大学机器学习与数据挖掘实验室推出的大型无人机航拍数据集Drone-Vehicle[25],如图8所示。其是使用配备双摄像头(可见光摄像头和热红外摄像头)的无人机在不同场景、不同天气和照明条件下收集的,包括15532 对由无人机拍摄的从白天到黑夜全天候红外-可见光图像序列,对象包括汽车、公共汽车、卡车、面包车等类型的车辆,场景包括城市道路、居住区、停车场、高速公路等各种场景,图像分辨率均为840×712,是第一个也是最大的基于无人机的全天候红外-可见光跨模态数据集。
图8 DroneVehicle红外可见光图像
本文为建立红外图像与高照度可见光图像的图像映射,训练从夜间红外图像生成高照度可见光图像,从DroneVehicle 中选出了2251 幅红外图像和1710 幅高照度可见光图像,总共3961 幅图像,作为In2vis-CycleGAN 的训练集,其中为排除不同照度下红外图像的差异干扰,红外图像分别取强光下的红外图像1510 幅,弱光及无光条件下的红外图像741 幅。并在输入网络前对图像进行预处理,均切片转换为356×356大小的图像,如图9所示。
图9 切片后的数据集
本文的实验环境和部分实验参数如表2所示。
表2 本文实验环境
3.1 实验对比
经过200 轮的训练后,本文对无光及弱光条件下的图像进行测试,生成效果如图10所示。
图10 源图像及生成图像
对改进算法做消融实验,对比效果如图11 所示。其中第一行为输入的红外图像,第二行为真实的可见光图像,第三行为本文改进的In2vis-CycleGAN 生成的可见光图像,第四行、第五行和第六行分别为消融实验效果图,-A 表示本文的改进算法去除了CBAM注意力机制,-B 和-C 分别表示去除了改进上采样和最小二乘损失函数,第七行为原始CycleGAN 的生成效果图。从图11 中可以看出原始CycleGAN 生成图像含有许多伪影,目标车辆色彩模糊轮廓带有明显的噪声干扰,色彩层次很不明显;
去除了注意力机制的-A 生成图像目标和背景区域颜色生成不理想,如道路带有明显噪声;
去除了改进上采样的-B 生成图像带有明显伪影,图像中含有各种干扰噪声模块;
去除了最小二乘损失函数的-C 生成图像目标车辆轮廓带有明显噪声;
而本文改进的算法In2vis-CycleGAN生成图像目标车辆颜色理想,没有虚影伪影模块,生成图像达到预期效果。
图11 In2vis-CycleGAN 生成结果及消融实验对比
3.2 图像生成指标测试
本文使用信息熵EN(Information Entropy)、空间频 率SF(Spatial Frequency)、峰 值 信 噪 比PSNR(Peak-to-peak Signal-to-noise Ratio)、结构相似性SSIM(Structural Similarity)、交叉熵CE(Cross Entropy)和自然图像质量评估指标NIQE[26](Natural Image Quality Evaluator)这6 项指标来衡量图像生成的质量。其中EN反映了生成图像包含平均信息量的多少,SF 反应图像的清晰度,PSNR 表示受到的噪声影响和失真程度,SSIM 表示生成图像与源图像结构的相似度,CE用来度量2幅图像之间的差异,NIQE用来评价图像的生成质量。除CE和NIQE为反向指标外,其余4项指标均为正向指标。
如表3 所示,实验分别计算了各算法的信息熵EN、空间频率SF、峰值信噪比PSNR、结构相似性SSIM、交叉熵CE 和自然图像质量评估指标NIQE 这6项指标,从而进行了定量对比评价。由表3 可知,本文改进算法的EN 值、SF 值、PSNR 值和SSIM 值均为最高,同时CE 值和NIQE 值最低,表示改进后的算法生成图像细节突出,图像最清晰,受到噪声影响和失真程度最低,与真实图像最相似,质量更高,验证了算法的有效性。
表3 图像生成评价指标对比
3.3 目标检测指标测试
为验证生成的可见光图像是否能应用于提高夜间图像目标检测准确率,本文使用改进的Rotate-YOLOv5 旋转框算法[27]对红外图像、可见光图像和生成的可见光图像3 类图像分别进行训练和测试,在每一类图像中训练集含3500 幅图像,测试集含1000 幅图像,其中强光图像和弱光图像各占一半,目标类别为4 类,分别为轿车(car)、卡车(truck)、公交车(bus)和货车(van)。
表4 为红外图像、可见光图像和生成可见光图像在弱光、无光和强光条件下的Rotate-YOLOv5检测效果图。由图中可以看出红外图像由于自身图像缺点,会出现漏检、错检的问题,如表4 所示:在无光条件下漏检了2 辆卡车,在弱光条件下错误检测到了轿车,在强光条件下把货车和卡车错检成了轿车,把公交车错检成了卡车;
夜间的可见光图像由于光照不足,可视性差,无法有效检测到目标;
而生成的可见光图像可以有效检测到目标且准确率高。表5 为Rotate-YOLOv5 对3 类图像500 幅弱光及无光图像测试集的各类别mAP[28]的检测值。由表5可知:红外图像对卡车和货车2 类目标检测率不高,而可见光图像受制于光照不足各类别mAP 均不高,而生成的可见光图像各类别的mAP 值均有了显著提高,较红外图像和真实可见光图像分别提高了11.7 个百分点和30.2 个百分点,验证了算法的有效性。
表4 Rotate-YOLOv5检测效果图
表5 Rotate-YOLOv5检测各类别mAP值
本文为解决夜间无光及弱光条件下难以准确检测场景目标的问题,提出了一种基于循环一致性的可见光图像增强算法In2vis-CycleGAN,通过训练建立了红外图像与亮度高的可见光图像的图像映射,有效提高了对夜间目标的检测准确率和抗干扰能力,实现了夜间有效的图像增强。通过在生成器转化器模块引入CBAM 注意力模块提高了生成器提取特征的能力,通过把生成器解码器的反卷积方式改为最近邻插值加卷积层的上采样方式提高了生成图像的质量,最后把对抗损失函数由交叉熵函数换为了最小二乘函数提高了网络训练的稳定性。为验证算法的有效性本文通过图像生成指标和目标检测指标对生成图像进行了定量分析,在图像生成指标测试中EN、SF、PSNR 和SSIM 均有显著提高,反向指标CE 和NIQE 均有显著减少;
在目标检测指标中,在弱光及无光条件下对生成可见光图像测试得到的mAP 较红外图像和真实可见光图像分别提高了11.7 个百分点和30.2 个百分点,验证了本算法的有效性。