3D卷积自动编码网络的高光谱异常检测

2022-04-06 03:46王盛铭唐圣金苏延召
光谱学与光谱分析 2022年4期
关键词:光谱重构卷积

王盛铭,王 涛*,唐圣金,苏延召

1. 火箭军工程大学作战保障学院,陕西 西安 710025 2. 火箭军工程大学导弹工程学院,陕西 西安 710025

引 言

高光谱图像(hyperspectral image, HSI)由空间维和光谱维构成,其中光谱维包含几十到数百个连续光谱波段,含有丰富且易于区分的光谱信息。 因此,相较于其他遥感图像,高光谱图像可以更加准确的区分目标和背景信息,并广泛应用于矿物勘探、水质监测和军事侦查等领域[1]。 由于目前待测目标的光谱信息获取困难且缺少完善实用的光谱信息库,无需目标先验光谱信息的异常检测成为了目标检测的研究热点。 异常检测的目的是检测出在空间或光谱信息上与背景环境存在较大差异的异常目标。 通常假设异常目标出现的概率极小并且在光谱域与邻域背景光谱存在较大差异。 Reed和Yu最早提出了经典的基于广义似然比检验的异常目标检测算法: RX算法(global reed-xiao detector,GRX)[2]。 随之产生了一系列改进算法,Kwon等提出引入非线性核函数的KRX算法(kernel RX,KRX);Alam等提出对全图进行K均值聚类的SRX算法(segmented RX,SRX);Taitano等提出采用滑动双窗口进行检测的LRX算法(local RX, LRX)。 近年来,图像压缩感知思想快速发展,一些基于表示和矩阵分解的方法不断被提出。 其中,低秩和稀疏矩阵分解(low-rank and sparse matrix decomposition,LSMD)已经成功应用于高光谱图像异常检测。 Xu等提出了基于低秩和稀疏表示的LRASR算法(low-rank and sparse representation anomaly detector,LRASR)[3]。 Zhang等提出了基于低秩稀疏矩阵分解和马氏距离相结合的LSMAD算法(low-rank and sparse matrix decomposition-based mahalanobis distance anomaly detector, LSMAD)[4]。 Niu等提出了基于低秩表示和字典学习的LRRLD算法(low-rank representation and learned dictionary anomaly detector, LRRLD)[5]。 然而,基于概率统计模型的RX算法及其变体,通常只能保证在简单的高光谱图像上具有较高的准确率,并且算法普适性较低;基于低秩和稀疏理论模型的异常检测效果完全取决于不确定性很强的矩阵分解,检测准确率在不同数据集上差距较大。 因此,随着深度学习在计算机视觉方面的不断发展,利用深度学习方法进行高光谱图像异常检测已成为遥感领域目标检测的最新发展趋势。 2015年,Bati等提出了基于自动编码器的高光谱异常检测算法,通过编码-解码过程对高光谱图像背景数据进行学习,并以最小化重构误差进行解码重构[6]。 随后,Li等提出利用卷积神经网络(convolutional neural network, CNN)提取图像的深度特征进行异常检测[7];Zhao等提出利用堆叠降噪自编码器(stacked denoise auto encoder, SAE)进行异常检测[8];Jiang等提出利用生成对抗网络(generative adversarial network, GAN)突出异常目标,抑制背景重构图像进行异常检测[9];Ma等提出利用深度信念网络(deep belief network,DBN)和自动编码器(auto encoder,AE)的输入和输出之间的重构误差进行异常检测[10]。

上述方法在高光谱图像特征表示和背景估计方面存在一些不足,对空间-光谱相关性的信息利用也有所欠缺。 同时这些方法为了满足模型的需要,通常将由图像块组成的训练样本展平到一维或二维,这严重损失了原始高光谱数据立方体包含的对异常检测非常重要的空间-光谱信息。 近年来,在计算机视觉领域中通常利用3D-CNN(3D convolutional neural networks,3D-CNN)对视频的时间-空间信息进行特征学习[11-12]。 根据这一理论,提出了一种基于3D卷积自编码网络的高光谱图像异常检测算法(3D convolutional autoencoder networks anomaly detector,3D-CAEAD)。 首先,采用边缘扩展方法来填充边界,以确保图像的边缘不会缺失。 然后,在编码层通过3D卷积、3D池化、3D归一化等步骤,对空间-光谱信息进行编码生成高光谱图像隐含层;再通过3D反卷积、3D反池化等步骤,重构所提出的隐含层的输入。 最后,通过计算原始高光谱图像待测像元与重构的背景图像之间的马氏距离进行异常检测。 通过给定高光谱图像作为训练数据,3D-CAE网络在训练过程中无需目标先验信息就可以有效的学习高光谱图像的空间-光谱特征。 这种无监督的异常检测算法对训练样本稀少且不易获取的高光谱图像非常有效,并且对不同复杂程度的高光谱图像检测的自适应性强。

1 实验部分

1.1 基于3D-卷积的特征提取

3D卷积神经网络(3D-CNN)将高光谱图像立方体看做一个整体,可以准确有效的提取高光谱图像深层空谱结合的特征,直接生成3D特征立方体。 这在很大程度上改善了以往的基于1D、2D或者2D+1D的特征提取模型,可以更加充分利用高光谱图像的空谱信息和结构特性。 相对于通常的将空间维和光谱维简单相加的2D+1D卷积网络,3D-CNN将其合并为一体,不仅可以利用空间和光谱信息,还考虑了空间-光谱之间的相关性,并且仅需要更少的参数和层。

图1 2D卷积操作(a)和3D卷积操作(b)对比Fig.1 Comparing 2D convolution operation (a) and3D convolution operation (b)

(1)

式(1)中,下标“i”和“j”分别代表卷积层和对应卷积层中的卷积核。

图2 3D卷积Fig.2 3D convolution

3D反卷积也称为3D转置卷积,是卷积层卷积的逆过程。 通过填充和卷积,将输入从低维空间映射到高维空间。 在解码器网络中,反卷积层与编码器网络的卷积层具有镜像结构。 通过堆叠三维反卷积层,可以从编码特征中重构高光谱立方体。

3D归一化将高光谱图像数据转换为[0, 1]的值,这样可以使网络对不同高光谱图像的适应性更强,同时加快运算速度。

池化层可以大大降低算法模型的参数量和优化工作量,减少卷积层的训练参数数量,同时减少卷积层产生的冗余特征。 为了更好的保留高光谱图像的纹理特征,本工作选择最大池化。 最大池化是对检测点邻域内特征点取最大值,可以将数个3D卷积核应用于高光谱图层中探索不同的深层特征,然后使用池化合并这些特征来保留主要特征。 3D最大池化定义为

(2)

1.2 基于3D-CAE的图像重构

自动编码器是一种包含输入层(编码器)、隐含层和重构层(解码器)的神经网络,通过最小化解码层的重构误差,以无监督的方式从高光谱图像数据中学习特征。 编码层是从输入数据中学习图像的深层特征,生成保留原始高光谱图像最基本信息的隐含层Z;解码层则利用从隐含层Z包含的深层特征进行图像重构。 在自动编码器中,编码器起到特征提取作用,利用权重矩阵W和和偏差b将输入层I映射到隐含层Z

Z=σ(WI+b)

(3)

式(3)中,σ为激活函数,Z的维度比输入I小。

解码器利用权重矩阵W′和偏置b′将隐藏层Z映射到重构层I′

I′=σ(W′Z+b′)

(4)

传统的AE常使用全连接的方式来学习数据的特征,这种方法不能充分的学习到数据的内在特征,而且对于二维或以上的数据这些操作会丢失数据的结构信息。 利用3D卷积代替全连接方法可以有效的提取高光谱图像内在特征,保留光谱和空间的特征。 3D卷积自动编码器(3D convolutional auto-encoder,3D-CAE)是在传统的AE的基础上改进的神经网络模型,将编码层和解码层分别建模成深度卷积神经网络,通过卷积的方式对输入数据进行线性变换,同时保持权重共享。 编码层由卷积层和最大池化层构成,最大池化层负责空域下采样;解码层由反卷积层和上采样层构成。 通过将3D-CNN与AE联合,在保证自动编码网络对高光谱图像数据以无监督的方式进行训练的同时,加入了3D卷积神经网络的空间-光谱特性提取能力,使得自动编码网络可以更好的学习到高光谱图像内在特征。

选择均方差(mean squared error,MSE)作为损失函数。 通过调节参数φ=(W,W′,b,b′)来最小化重构误差函数,其定义为

(5)

然而,选择欧几里得范数(l1orl2)或者均方差作为损失函数容易使图像产生模糊[13]。 根据光谱矢量固有的光谱特性,采用光谱角距离(spectral angle distance, SAD)来约束输入和重构光谱矢量。 定义

(6)

DSAD的值在[0, 1]范围内,值越大,输入与重构光谱向量越相似。 综合考虑高光谱图像的空间和光谱信息,我们采用DSAD作为损失函数的一项。 因此,完整的损失函数为

(7)

通过误差反向传播算法(back propagation, BP)不断的训练调节参数。 最后,利用得到的损失函数提取最优的特征来有效的表示输入高光谱图像的隐含层信息。

另外,对于编码器和解码器中的激活函数σ,引入非线性激活函数Leaky ReLu,这样可以有效解决梯度消失和过度拟合的问题,帮助建立更深层的网络。 同时,弥补ReLu在输入值为负数时的不足,计算速度比Sigmoid或TANH等替代方法更快。

(8)

式(8)中,x为输入,Y为输出,a是(1,+∞)区间内的固定参数。

本文提出的3D-CAEAD算法的核心就是重构与原始高光谱图像更相似的背景图像。 3D-CAE神经网络通过3D卷积解码器对3D卷积编码器不断训练到最优结果,从而提取高光谱图像中的空间-光谱深层特征。 因此,可以更好的重构背景图像,使背景图像尽可能的不包含异常目标信息,对原始高光谱背景图像产生较低的重构误差。

1.3 基于马氏距离的异常检测

在高光谱图像异常检测任务中通常利用欧氏距离或者马氏距离来判断待测像元与背景图像之间的差异。 本工作选择马氏距离,虽然相较于欧式距离计算稍微复杂,但是马氏距离可以独立于测量尺度并排除变量间相关性的干扰。 利用3D-CAE重构与原始高光谱图像极为相似的重构高光谱背景图像,并将马氏距离应用到最后的异常检测步骤,通过马氏距离计算待测像元与重构后的高光谱图像之间的差异,从而判断出与背景图像存在显著差异的异常目标。

图3 基于无监督的3D-CAE异常检测框架Fig.3 Unsupervised anomaly detection framework based on 3D-CAE

利用马氏距离检测异常目标的算法表达式为

(9)

2 结果与讨论

2.1 数据集

由于传感器和外部环境条件限制,高光谱图像在采集过程中容易受到噪声影响。 为了提高检测的准确率,我们选取在异常检测领域广泛应用,并且经过大气校正的三组高光谱数据集。 根据Frobrnius范数对截取的九个高光谱图像进行简单的预处理,剔除吸水区域、低信噪比和坏波段,仅保留大部分含有较多光谱信息的波段[18]。 利用以下高光谱图像对所提出的算法进行对比验证。

表1 数据集信息Table 1 Information of datasets

(1)San Diego 数据集

从拍摄场景中截取三个100×100和一个120×120的高光谱图像。 在此机场数据集中,飞机被视为异常,机库,草坪,停机坪等构成背景。 图像中的背景对象(机库)与异常对象(飞机)具有相似的材质,可能导致难以从周围背景中区分异常。

(2)Los Angeles数据集

在这个场景中,截取两个100×100的高光谱图像。 其中,不同比例的物体、建筑物的屋顶被视为异常,土壤,草地等构成背景。

(3)Pavia数据集

截取三个100×100的高光谱图像,数据集中主要涵盖的背景包括水和沙滩。 异常目标为水面上的舰船或者桥上的车辆。

2.2 参数选择

对比算法中窗口大小(win_in和win_out)和参数选择对算法结果有很大影响。 我们根据数据集为每个算法选择不同的参数进行调优。 在SRX算法中,通过K-Means++方法确定簇类K。 在CRD和UNRS算法中,对于较大异常目标选择窗口大小(9, 27),对于较小异常目标选择窗口(3,5),调和参数λ设置为0.01。 在LRASR算法中,对于San Diego和Los Angeles数据集,λ和β设置为0.1;对于Pavia数据集λ和β分别设置为1和0.001。

选择自适应矩估计(adaptive moment estimation,Adam)为优化器,因为它具有高效的运算效率并且适用于稀疏梯度的情况。 设置初始学习率为0.000 1,学习率更新采用自适应调整策略。 网络的batch size设置为32,epoch设置为100。 在训练时分别将60%, 20%和20%的数据随机分配给训练集、测试集和验证集。

表2 3D-CAE参数设置Table 2 3D-CAE parameter settings

为了检验所提出3D-CAEAD算法的优越性我们将所提出的算法与其他五种方法进行比较,分别是RX,SRX,CRD,UNRS和LRASR。 同时,以接收器工作曲线ROC和曲线下面积AUC值作为评价异常检测准确率的主要标准,在9组真实高光谱图像上进行对比验证。

三个数据集的检测结果如图4,图5和图6所示。 与其他方法相比,本方法的结果与参考图像最接近。 并且该方法可以检测具有不同大小和不同结构信息的异常像素,并完全保留异常的全部形状结构。

通过结果图可看出,在背景环境较为简单并且异常目标单一时,传统方法可以表现出较高的准确率。 在目标光谱相近或异常目标较小时,检测准确率明显下降。 同时,传统方法只能在部分场景中保持较高的准确率。 这说明传统方法的性能较弱,不能充分利用高光谱图像的信息,特征提取能力不强,无法完整的表现异常目标的形状结构,不能将所有的异常目标检测出来。 这说明这些算法的鲁棒性不高,不能适应大多数场景,只能针对个别数据集产生准确的检测效果。

与传统方法相比,我们的方法基于深度学习,具有更强的特征提取能力。 可以学习到高光谱图像更深层的信息,以得到更多具有区分性的信息,来检测出图像中的异常目标。 该方法的判别性重构部分可以有效地突出异常目标并抑制背景,本文具有更好的异常检测效果。 但是,本算法在面对密集或者单一的小异常目标情况时,检测效果并不理想。 异常检测结果相较于其他传统方法优势不明显,对个别数据集甚至存在一定差距。 原因在于,本算法的核心是利用3D-CAE网络对高光谱图像进行背景重构。 当异常目标较小并且单一时,受周围背景像元干扰和卷积核大小的影响,数据训练时被当作背景数据的一部分;异常目标较为密集时,容易被当作局部区域背景图像进行训练,不能很好的检测出异常像元与背景图像之间的差异。

图4 San Diego数据集异常检测结果(a): 假彩色图像;(b): 参考图;(c): RX;(d): SRX;(e): CRD;(f): UNRS;(g): LRASR;(h): 3D-CAEADFig.4 Results of San Diego datasets anomaly detection(a): False color image; (b): Reference map; (c): RX; (d): SRX; (e): CRD; (f): UNRS; (g): LRASR; (h): 3D-CAEAD

图5 Los Angeles数据集异常检测结果(a): 假彩色图像;(b): 参考图;(c): RX;(d): SRX;(e): CRD;(f): UNRS;(g): LRASR;(h): 3D-CAEADFig.5 Results of Los Angeles datasets anomaly detection(a): False color image; (b): Reference map; (c): RX; (d): SRX; (e): CRD; (f): UNRS; (g): LRASR; (h): 3D-CAEAD

图6 Pavia数据集异常检测结果(a): 假彩色图像;(b): 参考图;(c): RX;(d): SRX;(e): CRD;(f): UNRS;(g): LRASR;(h): 3D-CAEADFig.6 Results of Pavia datasets anomaly detection(a): False color image; (b): Reference map; (c): RX; (d): SRX; (e): CRD; (f): UNRS; (g): LRASR; (h): 3D-CAEAD

通过以上三组异常检测结果图可以看出,总体上提出的3D-CAE方法的检测准确率和鲁棒性都比较出色。

图7 San Diego数据集ROC曲线图Fig.7 ROC curves of San Diego datasets

图8 Los Angeles数据集ROC曲线图Fig.8 ROC curves of Los Angeles datasets

表3 三组数据集的AUC值Table 3 AUC values of three groups of datasets

图9 Pavia数据集ROC曲线图Fig.9 ROC curves of Pavia datasets

图7,图8和图9和表3分别列出了不同数据集使用不同方法得到的ROC曲线和AUC值。 通过对比,可以清晰的看出3D-CAEAD的检测准确率的稳定性远远高于其他5种算法,整体上保持着最高的AUC值。 在所有数据集上都保持着0.97以上的AUC值,可以适应不同的目标与场景,具有较高的可靠性。 原因在于,3D-CAEAD网络可以通过3D卷积块提取高光谱图像的空间-光谱信息,有效的利用了异常目标与背景在空间和光谱信息上存在的差异,可以更加凸显出异常目标。 同时,在编码解码的过程中,对高光谱图像中存在的噪声有一定抑制作用,减少了检测时受到噪声的干扰。 这些对检测空间或者光谱信息与背景相似的小异常目标尤其有效。

3 结 论

高光谱图像数据复杂、信息量大,不同高光谱图像特征存在显著差异。 针对现有的检测算法在特征提取和对空间-光谱信息有效利用上存在的缺陷,以及算法复杂、运行时间长等问题,提出一种基于3D卷积自动编码网络的高光谱异常检测算法。 该方法通过3D卷积可以有效的提取高光谱图像的空间-光谱信息,实现对高光谱图像数据的充分利用。 同时,自动编码器可以以无监督的方式很好的学习数据特征,实现背景重构,从而使异常目标获得更大的差值。 最后,利用马氏距离对原始高光谱图像与重构后的背景图像进行异常检测。 为了验证本方法的性能,对三个公开的高光谱数据集做了测试。 结果表明本方法可以有效地适用于不同数据集,相比于其他方法提高了异常检测的准确率。 由于自动编码网络本身存在一定的去噪能力,因此本算法在多数情况下,无需进行高光谱图像去噪便可以有效的检测出图像中的中小型异常目标,例如: 飞机、舰船等。 但是,受光谱成像仪自身空间分辨率的限制,高光谱图像会存在混合像元等情况。 因此,本算法在重构高光谱图像背景图像时,会受到异常点和其他背景像元的干扰,对单一小异常目标或者密集小异常目标的检测性能优势并不明显。

猜你喜欢
光谱重构卷积
基于三维Saab变换的高光谱图像压缩方法
视频压缩感知采样率自适应的帧间片匹配重构
长城叙事的重构
基于3D-Winograd的快速卷积算法设计及FPGA实现
高光谱遥感成像技术的发展与展望
高盐肥胖心肌重构防治有新策略
卷积神经网络的分析与设计
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
北京的重构与再造