王继霄,李 阳,王家宝,苗 壮,张洋硕
(陆军工程大学指挥控制工程学院,南京210007)
(*通信作者电子邮箱emiao_beyond@163.com)
复杂场景下计算机视觉任务对于计算机而言十分困难,往往需要利用多种信息才能实现。随着传感技术的飞速发展,综合利用多源信息成为了可能。但多种传感器的部署,同时也带来了信息的冗余与分析困难。随着深度学习技术的兴起,从2016 年开始,基于深度学习特别是卷积神经网络的图像融合方法开始出现。例如VGG_ML 方法[1]、ConvSR 方法[2]、DeepFuse 方法[3]和ResNet50 方法[4]在红外与可见光图像融合上都取得了较好的效果。但在实际应用中,由于图像融合需要在前端边缘设备上进行实时计算,传统的深度模型很难达到边缘设备计算资源有限的要求。例如,经典的ResNet50 网络包含2 556 万参数,需要占用98 MB 内存,计算一个图像前传过程需要完成28 亿次高精度计算,这对于资源有限的前端设备来说负载过重。因此,如何高效地在嵌入式设备上进行实时图像融合成为研究的重大挑战。
最近,在目标检测和目标识别等领域,越来越多的研究人员开始关注轻量级卷积神经网络在移动设备上的应用。例如:MobileNetV1[5]和MobileNetV2[6]采用深度可分卷积来构建轻量级深度神经网络;ShuffleNet[7]采用分组卷积和深度可分卷积来构建轻量级神经网络;SqueezeNet[8]开创性地提出了Fire 模块来压缩模型参数,减少了网络的深度,降低了模型的大小。这些网络在移动和嵌入式设备上,可高效完成目标检测和目标识别任务。然而,在红外与可见光图像融合领域,仍缺少轻量级深度神经网络支持移动和嵌入式设备上的图像融合任务。
因此,本文提出一种基于SqueezeNet 的轻量级图像融合方法。该方法通过迁移SqueezeNet网络的部分模型参数构建轻量级图像融合模型,实现了模型的精简、压缩和轻量化,可有效降低当前深度融合模型的大小。同时,本文的轻量级图像融合模型可以高效地提取红外与可见光图像特征,进而获得高质量的融合结果。本文在公开融合图像数据集上进行实验,并和其他10 种方法进行对比,实验结果表明本文方法可以有效提高图像融合的质量和效率。
红外与可见光图像融合技术在军事侦察、遥感探测、安全导航、医学图像分析、反恐检查、环境保护、交通监测、清晰图像重建、灾情检测与预报等领域都有着重大的应用价值。经过多年的发展,传统的图像融合方法主要有:基于交叉双边滤波器(Cross Bilateral Filter,CBF)的方法[9]、基于离散余弦谐小波变换(Discrete Cosine Harmonic Wavelet Transform,DCHWT)[10]的方法、基于联合稀疏表示(Joint Sparse Representation,JSR)的方法[11]、基于显著性检测的联合稀疏表示(JSR with Saliency Detection,JSRSD)的方法[12]、加权最小平方法(Weighted Least Square,WLS)方法[13]以及最小梯度下降法(Gradient TransFer and total variation minimization,GTF)[14]等。这些融合方法只能针对特定的图像类型进行融合,同时融合策略为人工设定,缺乏一定的泛化能力,融合的效果欠佳。
随着深度学习技术的兴起,尤其是深度卷积神经网络的广泛运用,基于深度学习的卷积神经网络在计算机视觉任务中发挥出强大的作用。在图像融合方面,研究人员开始利用卷积神经网络进行图像融合。
在文献[15]中,Liu 等利用深度卷积神经网络(Convolutional Neural Network,CNN)针对不同焦距的输入图像构建融合权重图,进而实现图像融合。这种方法在多焦距图像融合上获得了较好的效果,但并不适用于其他类型图像的融合。Li等[1]利用VGG-ML方法强大的图像特征提取能力,将红外与可见光图像分别拆分为基础部分(base parts)和细节内容(detail content)。针对基础部分,采用加权平均的方式对两类图像的基础部分进行融合;针对细节内容,通过该网络的多个卷积层提取深度特征,然后将提取的深度特征采用softmax 的方式融合在一起。最后,将融合后的基础部分和细节内容进行重构。VGG-ML方法在图像融合任务上表现出了较好的性能,但VGG-ML方法的弊端也比较明显[15]:该网络结构过深且包含3 个全连接层,融合过程中需要消耗过多的计算资源。因此VGG-ML方法并不适合部署在移动和嵌入式设备上。
此后,Li等[4]又提出使用ResNet50网络进行图像融合,在融合过程中该方法将ResNet50网络某几层输出的特征图按照设定的策略进行加权组合,用来保留更多的图像细节信息,并获得了较好的融合效果。ResNet50模型比VGG-ML模型小了近10倍,但是模型过大的问题仍然没有得到根本性的解决。
由此可见,以上的这些深度学习方法虽然在图像融合上都取得了较好的效果,但是模型结构大、参数多、耗时长的问题并没有解决,无法直接部署到前端移动和嵌入式设备上进行图像融合。
在目标检测领域,移动端部署的轻量级深度模型已经开始应用。这些网络主要采取了可分离卷积和分组卷积等策略进行模型压缩,取得了较好的应用效果。其中,Iandola 等[8]提出SqueezeNet[8]网络首次引入了Fire[8]模块,减少了卷积神经网的参数量,实现了卷积神经网络的轻量化。Fire 模块的作用是先对特征图进行维度压缩,然后对这些特征图做多尺度学习并进行拼接。Fire 模块这种结构可大量压缩模型参数,同时保持模型的鲁棒性。因此,在检测精度相近的情况下,SqueezeNet 模型的参数量比AlexNet[16]模型缩小了近50倍,且模型小于0.5 MB。SqueezeNet 网络精度高、体积小的特性在图像处理方面备受关注。受此启发,本文基于SqueezeNet 设计了一种红外与可见光图像融合方法,该方法首先通过Fire模块提取两类图像特征,然后求解提取特征的l1范数获得融合的权重图,最后按照设定的融合策略进行加权融合,进而获得高质量的融合结果。
SqueezeNet轻量级卷积神经网络由Berkeley和Stanford的研究人员提出,其主要设计理念是通过减少卷积神经网络结构参数,来降低模型的大小。SqueezeNet 中的Fire 模块主要分为两个部分:squeeze层和expand层(各自连接一个ReLU 激活层)。squeeze 层中的卷积核全都是1×1 的卷积核,数量为S1,expand 层中包含E1 个1×1 的卷积核和E2 个3×3 的卷积核,并且满足S1<E1+E2,如图1所示。
图1 SqueezeNet中Fire模块的示意图Fig. 1 Schematic diagram of Fire module in SqueezeNet
SqueezeNet 模型共包含8 个Fire 模块,中间插入了3 个max pooling 层,最后一层为average pooling 层,这样的设计大大减少了参数的数量。除了Fire 模块以外,SqueezeNet 在开始输入和结束输出时各加入了一个卷积层,如图2所示。
图2 SqueezeNet网络的结构Fig. 2 Network architecture of SqueezeNet
本章主要介绍运用卷积神经网络SqueezeNet 进行红外与可见光图像融合的过程,如图3所示。
在图3 中,红外和可见光图像分别输入到SqueezeNet 网络中,经过提取特征、融合策略和加权融合3 个步骤进行图像融合。
图3 图像融合的具体过程Fig. 3 Process of images fusion in detail
首先将需要融合的成对红外图像Source1(x,y)和可见光图像Source2(x,y)输入到SqueezeNet 的前半部分网络中。红外和可见光图像输入的网络参数和结构相同,它包含1 个卷积层conv1、1个max pooling 层和2个Fire模块。Fire模块用于提取的图像特征,本文选取fire3-relu_squeeze1×1层输出的特征图作为融合图像特征。设F1∈(K×W×H)和F2∈(K×W×H)分别表示该网络提取的红外和可见光图像特征图,其中W×H表示特征图的宽度和长度,K表示特征图的通道数。
得到特征图F1∈(K×W×H)和F2∈(K×W×H)之后,在通道维运用l1-norm 正则化方法[17]求解特征范数,分别获得红外与可见光图像的权值图和。和的求解方式如式(1):
其中:K表示特征图的通道数,t表示滑动窗口的大小,p表示滑动窗口的长度,q表示滑动窗口的宽。
通过式(1)的计算,厚度为K的特征图被压缩成二维矩阵。通过这样的方式,实现了特征图的降维。
最后用softmax 的方式(如式(2))得出红外和可见光图在融合时的权值图,由于权值图的大小与原始图像尺度不同,采用双线性插值方法将权重图调整到原始图像大小。具体流程如图4所示。
图4 获得权重图的过程Fig. 4 Process of obtaining weight map
其中:Sourcek(x,y)表示源图像(红外和可见光图均为灰度图像),Fused(x,y)表示融合结果图像。
为了对各种融合方法进行有效的评估和对比,本文利用文献[18]中使用的21 对图像数据集进行实验。该数据集作为评价各种融合方法的经典数据集,得到了广泛使用。图5给出了21对图像中的4对图像示例。
图5 图像融合数据集中的4对源图像Fig. 5 Four pairs of source images in image fusion dataset
本文使用的评价融合图像质量的指标为:FMIpixel[19]、Nabf[10]和SSIMa[1]。FMIpixel表示像素级特征互信息,用于表征从原图像传输到融合图像的特征信息量,FMIpixel越高,融合图像质量越好;Nabf表示通过融合过程添加到融合结果中噪声和人工干扰的数量,该指标越低,融合结果越好;SSIMa表示结构相似度指标,该指标越高,说明融合图像的结果与源图像结构越相近。
本文进行实验的硬件环境:CPU为Intel Core i5-7200U、内存为8 GB。软件环境:计算机操作系统为Windows 10 pro、模型运行平台为Matlab 2018b。
本文所使用的SqueezeNet 网络模型为预训练的模型,在进行红外与可见光图像融合时,通过调用Matlab 2018b 版本中自带的deep learning 工具箱模型SqueezeNet 网络,将红外和可见光图像输入到网络中,选取Fire3 模块的fire3-relu_squeeze1×1层输出作为红外和可见光图像的特征图,进行加权融合。
SqueezeNet 网络包含了8 个Fire 模块以及部分卷积层和池化层。但在图像融合过程中,只需要其中某一层的输出作为选取的特征层。因此选择合适的输出层作为提取特征的输出至关重要。将Fire2 到Fire9 这8 个输出层的每个输出特征图分别进行图像融合,得到了表1 中不同层21 对图像的平均融合结果。
在表1 中,可以看到Fire2 作为输出层的特征输出所得到的融合图像效果最好(将最好的数值进行了加粗)。因此在下面的实验中选择Fire2作为特征输出层。
表1 不同层输出的融合质量对比Tab. 1 Fusion quality comparison of different layer outputs
在21 张红外和可见光图像数据集上,将本文方法与近期10 种图像融合方法:DCHWT[10]、CBF[9]、JSR[11]、JSRSD[12]、GTF[14] 、WLS[13] 、ConvSR[2] 、VggML[1] 、DeepFuse[20] 和ResNet50[4]进行对比实验并评估融合性能。对比的10种融合方法中,DCHWT[10]、CBF[9]、JSR[11]、JSRSD[12]、GTF[14]、WLS[13]是 传 统 图 像 融 合 方 法;ConvSR[2]、VggML[1]、DeepFuse[20]、ResNet50[4]是基于深度学习的方法。
表2 中各数值均是每种方法采用21 对图融合后的平均值,将图像融合质量指标排名第一的数值用黑体突出,排名第二的数值用下划线突出。从表2可以看出,SqueezeNet方法的融合效果比较良好,在11种方法中Nabf和SSIMa两个指标均排名第一,FMIpixel指标虽然排名第三,但与第一、二差距较小。在所有深度学习的方法中:本文方法FMIpixel指标仅比第一名的ConvSR 和第二名的VggML 分别低0.007 98 和0.001 77;Nabf指标(指标越低越好)比第二名的ResNet50 方法提升0.000 16;SSIMa比ResNet50方法高0.000 24。
在图像融合过程中,除了要考虑图像融合的质量,还要考虑融合效率。本文在表3中对比ResNet50方法和本文方法的融合效率。
表2 不同方法下的融合质量对比Tab. 2 Fusion quality comparison of different fusion methods
表3 ResNet50和SqueezeNet性能参数比较Tab. 3 Comparison of performance parameters between ResNet50 and SqueezeNet
如表3 所示,本文方法网络的参数量是ResNet50 网络的1/21,模式大小是ResNet50 的1/204,运行速度加快了约4 倍。由此可以看出,本文方法较ResNet50 方法在融合效率上有较大的提升,在融合效果近似的情况下实现了高效的图像融合。SqueezeNet 网络在参数量设置、模型尺寸、运行时间都具备了轻量级的神经网络的特性,运行时间满足移动和嵌入式设备上的基础要求。
如图6(c)~(h)所示,可以看到本文所用的方法(m)将红外与可见光图像融合后得到的图像在红框的位置人工噪声较少且展示出了更多的细节内容,例如目标的纹理。
图6 不同图像融合方法的融合结果Fig. 6 Fusion results of different image fusion methods
从图6 中可以直观地看到,CBF 方法获得的图像中很多的人工噪声而且显著特征也不清晰;JSR、JSRSD 和WLS 方法获得的图像的显著特征位置包含了许多人工噪声,并且其细节信息也不清晰;运用神经网络融合架构的ConvSR、VGGML、DeepFuse 以及SqueezeNet 方法获得的图像在显著特征的数量比较多,并且图像信息的细节上要更加清晰完整。
从图6 中传统方法融合所得到的图像不清晰且噪点较多,可以分析出,这主要是因为这些方法提取的特征的理论所致。传统方法主要是基于域变换的方式将图像矩阵转化为另一个子空间的方式进行,这样的方式更多地关注图像的细节信息,而缺乏语义信息的提取。而神经网络的方法在细节信息和语义信息方法都进行了较好的兼顾,因此可以看到基于神经网络的融合方法其融合效果更好。
图像特征的提取和融合策略的设计是红外与可见图像融合的关键所在,现有的深度卷积特征提取网络参数较多、结构较深、计算耗时,不适用于移动和嵌入式设备。本文提出采用基于轻量级SqueezeNet 的图像融合方法,运用SqueezeNet 作为图像特征提取的网络,改善现有网络的不足。实验表明,本文方法不仅能够压缩网络规模,同时在取得与其他融合方法相近的融合效果下,提高了融合的速度和效率,能够较好地适应移动和嵌入式设备。
但是,融合策略的设计仍是图像融合领域富有挑战的任务,需要针对不同类型网络和图像进行具体分析,它对融合质量的提升具有重要的意义,需要进一步研究。