图像融合技术主要分为两种,一是多源图像融合技术,旨在将多种类型的传感器图像或不同光谱的图像进行融合,二是将不同时刻下的同源图像进行融合。本文主要针对多源图像融合技术展开研究工作。
本文主要研究红外与可见光图像的融合技术,这是多源图像融合领域的热点和重要研究方向之一,其旨在将红外图像中的高亮目标信息和可见光图像的高分辨率场景纹理信息进行有效合理的融合,从而获得对场景信息更为准确全面的描述。
多源图像融合技术便是将不同成像机理的图像传感器对同一场景同一时间捕获的图像融合成一张图像,一来可以去除多幅图像中的冗余信息,二来可以利用不同传感器的特性,将多张图像的有效信息融合到一张图像中,获得对特定场景更全方位的描述,提高对图像信息处理的效率。目前,图像融合技术已被广泛应用于计算机视觉等领域
根据融合算法采用的不同理论,通常可将其分为基于空域的方法、基于多尺度变换的方法、基于稀疏表示的方法、基于神经网络的方法等
基于像素的融合规则有均值法、最大值法等,这类融合规则直接对图像的分量系数进行处理,简单易操作,计算量小,运算速度快。然而这类融合规则未考虑图像相邻像素或系数间的相关性,容易丢失边缘细节等信息,导致融合图像对比度差、细节模糊,难以取得令人满意的效果。
基于窗口的融合规则考虑到了图像相邻像素或分解系数的相关性,融合系数根据图像分量系数局部区域内的统计特性来确定,相比于基于窗口的融合规则,融合效果和适用性都得到了明显提升。然而,图像的局部特征很难由图像的单个像素或局部窗口区域所表示,而是由图像该区域内的多个相关性较强的像素或系数所表示。
基于区域的融合规则便是将图像分成多个区域,将区域内的多个像素或系数当作整体参与到融合中。不同的区域可以根据区域内的显著性特征采用合适的规则融合。这类融合规则比前两类的融合效果整体上要更好,但是较为复杂,融合速度较慢。
1.3.3 基于稀疏表示的图像融合方法
稀疏表示是一种非常有效的图像表示理论,目前已经成功应用于计算机视觉、模式识别等领域并取得了良好的效果。与基于多尺度的融合方法不同,基于稀疏表示的融合算法基于图像数据字典对源图像进行稀疏表示,进而实现图像的融合。该类融合算法一般首先将源图像通过滑动窗口策略划分为许多带重叠的图像块,然后基于学习到的完备字典对每个图像块进行系数编码,得到图像的稀疏表示系数;之后根据融合规则融合图像系数,最后利用完备字典对系数进行重构,得到融合图像。
1.3.4 基于神经网络的图像融合方法
![]() |
神经网络是通过模拟生物神经网络行为特征,进行数据处理的数学模型,具有较强的抗噪声能力和适应性[38]。因此,神经网络在图像融合等领域也得到了广泛的应用。
PCNN经常与多尺度变换结合使用,首先通过多尺度变换对图像进行分解,得到图像的高低频子带信息,接着通过合适的融合策略将高低频子带分别融合,然后再进行逆变换,获得融合结果。许多学者都在高低频子带的融合策略中使用了PCNN。如Chai等对原始图像进行多尺度分解时使用了提升平稳小波变换,再使用双通道PCNN对高低频系数进行融合,最后逆变换得到融合图像。
2018年,刘羽等人在文献的基础上提出了一种结合卷积神经网络和多尺度分解的红外与可见光图像融合方法,该算法对源图像进行拉普拉斯分解后,使用卷积神经网络计算权重高斯金字塔,然后计算各层的融合拉普拉斯系数并融合,最后通过逆变换得到融合图像。同年,李辉等人在提出一种深度学习框架来进行图像融合。该算法将源图像分解为基本部分和细节部分,基础部分用加权平均法融合,细节部分内容使用深度学习网络(VGG-19)进行多层特征的提取,并以此生成多个候选融合细节内容,然后使用最大选择策略来生成融合的细节内容。最后,将融合后的基础部分与细节内容相结合,重建融合后的图像。
李辉等人还提出了一种基于稠密网络和自编码器结构的新型融合框架,整个框架分为编码器、融合策略、解码器三部分,编码器部分使用了稠密网络(DenseNet)提取并保留图像的深层特征,从而确保使用融合策略融合后图像的显著特征不会丢失,然后基于制定的融合规则对红外和可见光图像的深层特征进行融合,再使用一个包含4个卷积层的解码器对融合后的图像特征信息进行解码,得到融合图像。
2019年马佳义等人将生成式对抗网络(GAN)用于红外和可见光图像融合任务,生成器的目标是提取源图像中的重要信息,并将这些信息融入到一张图像中,鉴别器判别融合的图像是否具有更多的可见信息,通过二者的对抗训练提升图像融合效果。与现有的融合方法相比,这些基于卷积神经网络或生成式对抗网络的融合框架都取得了优异的融合性能
很多基于卷积神经网络的图像融合方法都使用自编码网络进行实现。这种基于自编码网络的图像融合方法一般都含有编码网络、解码网络和特征融合部分。编码网络将图像从灰度空间转为特征空间,并逐层提取图像更为深层的特征;特征融合部分将编码网络从源图像中提取的特征信息进行融合;解码网络基于特征信息进行图像的恢复和重建,把图像从特征空间转为灰度空间,得到融合图像。
这种基于自编码网络的图像融合方法实际上是利用卷积神经网络对传统方法中的图像分解、重建方法进行了替换。在模型训练阶段,这类方法利用丰富的图像数据,对编引言 11 码网络的图像特征提取能力和解码网络的图像恢复重建能力进行训练。在测试阶段,这类方法使用编码网络进行源图像特征的提取,利用合适的融合规则将不同源图像的特征信息进行融合后,使用解码器进行图像的恢复重建,进而得到融合图像。这种融合方法能很好的解决数据无标签的问题,且可以有效利用丰富的图像数据集,但是模型训练时的学习目标不够直观,融合策略的选择可能会对融合结果产生较大的影响。很多融合策略只适用于特定类型的图像特征,不具有适用性,导致融合策略需要人工选择和制定
2.1.1 BP神经网络
反向传播(Back-propagation,BP)神经网络是一种基于反向传播算法的多层前馈神经网络。如图2-1所示是一个常见的前馈神经网络链式结构。神经网络含有输入输出层和隐藏层。在正向传播过程中,数据从输入层进入,经各隐藏层逐层计算处理后,最终结果由输出层输出。正向传播过程结束后,若在实际输出与期望输出之间存在偏差,则使用反向传播算法,在误差的反向传播阶段对网络模型进行调整训练。反向传播过程中,首先根据损失函数计算实际输出与期望输出之间的误差,并将误差逐层反传,根据梯度下降策略计算每层的修正误差并调整权重,以最小化损失函数,实现模型的收敛。
以下是BP算法的一般工作流程:
(1)将数据从输入层输入,经各隐藏层处理后,从输出层输出结果;
(2)计算输出层的误差,并进行反向传播,依次计算各个隐藏层的误差;
(3)根据各个隐藏层的误差对神经元参数进行修正;
(4)重复以上步骤,直至输出误差降低到一定阈值以下。
2.1.2 激活函数
在神经网络的模型中,我们使用神经元中的参数(权重𝑤和偏置𝑏)对神经元的输入𝑥进行计算,但该计算方式是线性计算。若只使用神经元的参数参与计算,那么整个神经网络一定也是线性的,但是在现实生活中,并非所有的数据都是线性可分的,线性模型并无法解决该类线性不可分问题。为此,在神经网络模型中引入激活函数,其一般使用非线性函数,将线性不可分特征转化到线性可分的特征空间[38]。另外,引入激活函数还可以将神经元的输出值映射到一定范围内,避免隐藏层内部神经元的输出值过大或过小,影响神经网络模型的训练效果。 常见的激活函数有:
(1)Sigmoid函数
Sigmoid函数是一种非常典型的激活函数,输出值范围为(0,1),其计算方式如下所示:
![]() |
Sigmoid函数易于求导,能很好的解决非线性分类问题,使用广泛,其函数图像如图2-2所示。但是当输入值的绝对值较大时,Sigmoid函数输出便趋近于0或1,函数图像趋于平缓,梯度也趋近于0,进而在使用反向传播算法更新权重时,容易出现梯度消失现象,导致无法对层数较多的神经网络模型进行很好的训练。
(2)Tanh函数
![]() |
Tanh函数为双曲正切函数,与Sigmoid函数相似,输出范围为(-1,1),其计算方式如下:
由计算公式和图2-3可以看出,Tanh函数可以看作是Sigmoid函数平移拉伸后的结果。同Sigmoid函数相比,Tanh函数在模型训练中取得的效果有所提升,但在训练深层网络时仍可能产生梯度消失等问题。
(3)ReLU函数
ReLU(The Rectified Linear Unit)函数又叫修正线性单元,其计算方式如下: 𝑓(𝑥)=max(0,𝑥)(2-3) ReLU函数图像如图2-4所示。
相较于Sigmoid函数和Tanh函数,ReLU函数的计算速度快,且可以有效地抑制网络模型训练中梯度消失的问题,因而,ReLU函数在神经网络模型中被广泛采用。
(4)LeakyReLU函数 LeakyReLU函数是ReLU函数的变体,其计算公式如下:
其中𝛼为小于0的直线斜率常数,一般设置为0.01。LeakyReLU函数图像如图所示。同ReLU函数相比,LeakyReLU函数在输入小于0时,仍有一定的梯度,避免了此时神经元无法学习的情况,也在一定程度上减少了静默神经元的出现。
2.2 卷积神经网络
卷积神经网络(Convolutional Neural Network,CNN)本质上仍是一种前馈神经网络,但是其采用了局部连接和权重共享的方式,极大的降低了网络的权重参数,使得模型易于训练优化,减小了模型过拟合的风险。
神经网络中,神经元间的连接表示输入输出间的内在联系。传统全连接网络中每一层都包含大量的神经元节点,每一个神经元都与网络前一层中所有的神经元相连,且每个神经元的输出都作为下层中神经元的输入。因而,这种全连接网络的参数规模巨大,模型也难以训练。不同于此,卷积神经网络中加入了权重共享的概念,神经元的输入只采用输入数据中的局部区域,该接收数据区域空间的大小取决于神经元卷积核的大小,也叫感受野。相对于全连接网络,卷积神经网络中神经元的连接是稀疏的,这极大的减小了网络参数的规模,使得网络更加简洁,可以接受处理更大规模的数据,一定程度上也减小了模型过拟合的风险,便于模型的训练优化。
2.2.2 池化层
池化层是卷积神经网络中重要的一部分,一般位于卷积层之间,对卷积层的输出特征进行处理,提取聚合其中的重要特征信息,丢弃无用或冗余的也正信息,从而对特征降维,达到降低计算量和参数量、减小模型过拟合可能性的目的。 常用的池化操作一般有两种:平均池化和最大池化。顾名思义,平均池化即是对一定区域内的区域数据进行平均值计算,倾向于保留特征背景信息;最大池化则保留该区域数据中的最大值,倾向于保留突出纹理特征信息。如图2-8所示为两种池化方式的示意图。
2.3 深度网络模型
2.3.1 VGGNet网络模型
VGGNet(Visual Geometry Group Net)[56]是牛津大学计算机视觉组和Google DeepMind公司的研究员提出的深度卷积神经网络。VGGNet主要由卷积层、最大池化层和全连接层组成,有VGG16和VGG19两种结构,两者无本质区别,仅是网络的深度不同。网络结构如图2-9所示。作者在VGGNet的网络结构中,探究了网络性能与深度间的关系,并在保证感受野相同的情况下,使用了多个3*3的卷积核替代5*5和7*7的卷积核,增加了网络的深度,一定程度上提升了模型的效果。VGGNet在图像分类问题上表现优异,而且泛化能力很好,在不同的图像数据集上都有良好的表现,经常被用来提取图像的特征信息,有些算法还使用VGGNet提供的预训练模型在自定义的图像数据集上进行微调,从而加快模型的训练。
2.3.2 残差网络模型
在卷积神经网络模型中,神经网络模型层数的增加一般有利于提高模型的准确度和效果,然而当卷积神经网络模型增加到一定的深度后,反而会导致模型的收敛速度下降,准确率降低,模型出现了退化现象。何凯明等人基于传统计算机视觉领域中残差表示的概念,在卷积神经网络中引入了残差学习的思想,提出了残差网络结构(Residual Network,ResNet) 一般卷积神经网络通过多个卷积层学习输入输出之间的映射关系,即:
其中,𝑥表示输入,𝑦表示输出,𝐻(𝑥)表示卷积层学习到的输入与输出间的映射关系。引入残差学习思想后,残差网络通过在卷积层中间添加恒等映射的操作,将网络中的卷积层模块转化为去学习输入与输出间的残差表示。其关系可表示为:
相比起一般神经网络直接学习输入输出间的映射关系,这种学习输入、输出间的残差的方式要更加容易,模型的收敛速度更快,取得的结果也更好。
残差网络一般由多个残差单元组成,一个残差单元可分为直接映射部分和残差部分,其中残差部分一般由两至三个卷积层组成。常用的标准残差单元如图2-10中(a)所示,其中残差部分中有两个卷积层,其输入输出通道均为64,卷积核大小为3*3,使用了ReLU激活函数。在此基础上,图2-10(b)中所示的BottleNeck残差单元将卷积层增加至3层,输入输出通道增加为256,但其在网络中间将通道降维,并将第一个和第三个卷积层中卷积核缩小为1*1,在减小参数量的同时增加了网络深度,并且不会引起模型效果的下降。
2.3.3 自编码网络
自编码网络(Autoencoder,AE)是一种基于非监督学习的视神经网络模型,可以从无标签数据中学习特征,以重构输入信息为目的。如图2-11所示,自编码网络有编码器(Encoder)和解码器(Decoder)两部分,编码器可以将输入数据转化为有效的特征信息,解码器可以将编码得到的特征信息进行重构,得到输出数据。网络通过反向传播对网络进行训练,使得输出数据接近于原始数据。自编码网络具有良好的信息表征能力,通过编码网络可以给出比原始数据更好的特征描述,在很多深度学习算法中,常用自编码网络生成的特征替代原始数据,并取得了良好效果。同时,自编码网络还可以看作是一种数据压缩算法,只是相比于传统压缩算法,其压缩和解压通过神经网络来实现。由于自编码网络的输出无法保证与原始数据一模一样,因而其在用于压缩数据时是一种数据有损的压缩算法。目前,自编码网络在图像去噪和降维可视化等方面得到了广泛应用。
3 基于残差网络与注意力机制的图像融合方法
本章提出了一种基于残差网络和注意力机制的图像融合算法,该方法首先利用引导滤波将红外与可见光图像分解为背景层和细节层,之后使用编码网络分别提取背景层和细节层图像的特征信息,这使得编码网络可以只专注于提取源图像中高频细节信息或低频背景信息的图像特征,降低了网络提取图像特征的难度,有助于提取更为全面的特征信息。在编码网络中,本章使用了上下文特征提取模块来提取图像的上下文特征信息,提升图像特征提取的效果。之后,将两种图像特征信息进行融合,再利用解码网络对图像进行恢复重建。在解码网络中,本章设计了一种注意力特征融合模块对残差网络单元进行加强,提升了残差单元对特征信息的选择效果,该模块有利于保留重要的图像特征信息,提升图像的恢复重建效果。另外,考虑到红外和可见光图像含有的信息量不同,两者对融合图像产生的影响也不同,因此本章在损失函数中设计了一种基于梯度信息的自适应权重计算方法,将此权重作为红外和可见光图像的信息保留度,以此来调节不同源图像对融合图像的影响程度。
3.2.1 融合算法网络结构
本章提出了一种基于残差网络与注意力机制的图像融合网络结构,实现红外与可见光图像的融合。在该图像融合算法中,RGB彩色图像的融合与灰度图像的融合流程类似,因此本节在网络设计的介绍中仅考虑灰度图像融合任务。 如图3-1所示是该融合算法的整体框架示意图,该融合算法分为图像预处理、图像编码网络、特征融合、图像解码网络几部分。在该算法的网络结构中,使用卷积层后一般紧跟着批归一化操作和激活层,为避免重复,后续在进行网络结构介绍时如无必要不再强调。在本章算法模型中,输出层采用TanH激活函数,并将值映射到(0,1)范围内,从而将图像从特征空间转化为灰度空间;其余卷积层后的激活函数采用ReLU函数,该函数计算复杂度低,可以有效抑制模型训练中的梯度消失问题。
该算法网络各层的参数如表3-1所示。其中CFR Block表示上下文特征提取模块,Res-Aff-Block表示残差注意力网络模块,这两个模块都将在后续章节进行详细描述。首先是图像预处理环节,本章融合算法使用引导滤波将红外与可见光图像分解为背景层和细节层,其中,背景层包含源图像的低频背景信息,细节层包含源图像的高频细节信息。对图像进行分解的目的是为了在后续进行特征提取时,编码器网络可以专注于提取图像某一维度的信息,从而可以获取更为全面的图像特征信息。