基于空谱联合的高光谱异常检测算法 下载: 1142次
1 引言
光谱成像仪将成像技术和光谱技术结合在一起,使得高光谱数据在获取地物空间信息的同时还获取了具有指纹效应的地物光谱曲线。高光谱图像“图谱合一”的特点为地物的精细探测提供了数据基础,在目标探测领域显示出了巨大的潜力[1-2]。高光谱异常检测能在没有先验知识的情况下,检测出与背景有明显差异的目标,具有很高的实际应用价值,已成为目标探测领域的研究热点。
现有的高光谱异常检测算法大致可分为3类:1) 基于统计模型的异常检测算法。这类方法认为背景服从特定的分布,而异常目标背离这样的分布。应用较为广泛的RX(Reed-Xiaoli)异常检测算法就是建立在背景服从高斯分布假设的基础上,通过估计背景的均值和协方差矩阵来计算待测像素与背景的马氏距离,进而判断像素点是否属于异常目标[3]。直接使用RX进行异常检测往往会产生较高的虚警率,原因在于高光谱图像分布广泛,背景并不是简单地服从单一的高斯分布。此外,在估计背景的均值和协方差矩阵时,高光谱图像会受到异常目标的“污染”。2) 基于几何模型的异常检测算法。这类方法不需要假设背景的统计模型,并认为背景可以由一组光谱向量(如协方差矩阵的特征向量)表示,而异常目标则不可以。这类算法的典型代表有基于子空间的异常检测(SSPAD)算法[4]以及基于协同表示的异常检测(CRD)算法[5]。SSPAD算法认为背景和目标处于不同的低维子空间,可以利用像素投影到背景的正交子空间的残差值来判断像素是否属于异常目标。然而,准确估计背景的子空间十分困难。CRD算法的主要思想是异常像素不能被其邻域像素表示,而背景像素可以。因考虑了相邻像素对待测像素的影响,CRD算法取得了不错的检测效果。3) 基于矩阵分解模型的异常检测算法。该算法认为上述两类算法只致力于准确估计背景信息,却忽略了挖掘异常目标的特点[6]。考虑到像素之间存在较强的相关性,基于矩阵分解的异常检测算法认为背景具有低秩特性,而目标在图像中出现的概率较小,具有稀疏特性。借助这样的先验信息,该类算法首先将三维高光谱数据转化为二维矩阵,并将其分解为背景、目标和噪声3部分。通过求解这样的约束优化问题,该类算法就能将高光谱数据中的目标信息与背景信息分离开来,然后用于目标探测。这类算法的典型代表有LRaSMD[7](low-rank and sparse matrix decomposition)、LSMAD[6](LRaSMD-based Mahalanobis distance method for hyperspectral anomaly detection)和LRASR[8](low-rank and sparse representation)。
随着成像技术的发展,成像光谱仪的光谱分辨率和空间分辨率不断提高,高光谱数据不仅包含了地物的光谱辐射信息,还包含了地物的空间分布、形状及纹理信息[9]。对于异常检测,其目的是寻找与背景有明显差异的目标,这种差异不仅体现在光谱辐射信息上,还体现在空间结构上(如纹理特性)[10]。然而上述异常检测算法都仅考虑了像素间光谱辐射强度的差异,对像素间存在的空间结构的差异没有足够重视,这在一定程度上造成了高光谱数据的浪费,也使得检测方法的检测效能未得到充分发挥[11]。如果能够对图像中包含的空间信息进行合理挖掘和充分利用,将会大大提高检测算法的检测效能[12-13]。鉴于此,本文综合利用高光谱数据的光谱信息和空间结构信息,提出了基于空谱联合的异常检测(SSAD)算法,该算法通过衡量待测像素相对背景的光谱异常程度和空间结构异常程度来判断像素是否属于异常目标。
2 SSAD算法描述
高光谱数据在普通的二维图像中增加了一维光谱信息,使得数据包含了丰富的地物空间分布、光谱辐射以及波段特征等信息,高光谱数据的描述模型也因此而丰富多样,如图像模型、光谱模型以及特征模型[14],这些都使得高光谱数据的分析和处理更加灵活、方便。由于现有的高光谱异常检测方法大多利用图像的光谱信息,因此通常采用光谱模型来描述数据,将三维的立方体数据沿着图像的光谱维重新排列成二维矩阵进行计算与处理。经过重新排列的数据不仅增加了数据的维数,还破坏了原有数据的结构信息,极大地限制了对图像信息的挖掘。为了充分利用高光谱数据所提供的空间信息和光谱信息,同时降低数据处理的难度,SSAD算法采用基本的图像模型来描述高光谱数据,在各个波段图像上分别进行异常检测,将各个波段检测结果对应相加作为最终的检测结果。
在对各个波段进行异常检测时,SSAD算法采用双窗策略,即以待测像素为中心设立2个大小不同的方形窗口,内窗作为目标区域,内窗和外窗之间的区域视为背景,通过计算待测像素相对背景的异常程度来判定像素是否属于异常目标。其中内窗的大小为
图 1. 计算像素光谱异常指数和空间异常指数示意图
Fig. 1. Illustration of calculating pixel's spectral anomaly index and spatial structure anomaly index
2.1 光谱异常指数
设
式中:
2.2 空间结构异常指数
图像中的每个像素点都不是孤立存在的,而是与其周围的像素一起构成图像的几何结构。以像素点为中心的邻域,可以体现像素点的空间结构[15]。为了定量衡量像素间空间结构的相似程度,做出如下定义:
1) 以像素(
2)
2.3 异常指数
像素(
按照上述方式遍历
以下是关于SSAD算法的几点说明。
1) 外窗的大小。该算法将内窗作为待测像素的空间结构窗,将内窗和外窗之间的区域作为待测像素的背景。外窗既要能反映像素的局部信息,又要能体现背景的结构信息,因此不能太大也不能太小。综合考虑,令
2) 数据归一化。在对各个波段进行异常检测时,要先归一化每个波段的数据。这是由于在400~2500 nm波段范围内,太阳的光谱辐射强度是变化的[17]。这就意味着有些波段的光谱亮度值整体上要高于其他波段,直接使用原始数据计算波段内各个像素的异常指数,就会导致不同波段对应像素的异常指数相差较大,不具有可加性。
本课题组所提SSAD算法的流程图如
3 实验验证
采用3组真实的高光谱数据对所提算法进行验证,并将其结果与3种典型或前沿的异常检测算法进行对比。这3种检测算法分别为RX[3]、CRD[5]以及LSMAD[6],它们分别代表基于统计模型、基于几何模型以及基于矩阵分解模型的异常检测算法。
3.1 实验数据
图 3. 实验数据1。(a)图像第130波段的灰度图;(b)目标的空间分布图
Fig. 3. Experimental data 1. (a) Grey-scale map of the 130th band image; (b) spatial distribution map of targets
实验数据1和实验数据2来自AVIRIS传感器获取的美国San Diego海军机场的高光谱图像。图像的光谱范围为370~2510 nm,共224波段。将低信噪比波段、传感器故障波段和水汽吸收波段剔除后,保留189个波段。图像的原始大小为400 pixel×400 pixel,从左上角截取大小为120 pixel×120 pixel的子图作为实验数据1,从左下角截取大小为100 pixel×100 pixel的子图作为实验数据2。实验数据1如
图 4. 实验数据2。(a)图像第30波段的灰度图;(b)目标的空间分布图
Fig. 4. Experimental data 2. (a) Grey-scale map of the 30th band image; (b) spatial distribution map of targets
图 5. 实验数据3。(a)图像第100波段的灰度图;(b)目标的空间分布图
Fig. 5. Experimental data 3. (a) Grey-scale map of the 100th band image; (b) spatial distribution map of targets
实验数据3来自ROSIS传感器获取的意大利Pavia城市的高光谱图像。图像的波段范围为430~860 nm,共115波段,将低信噪比波段去除后,保留102个波段。图像的原始大小为1096 pixel×715 pixel,从中截取大小为108 pixel×120 pixel的子图作为实验数据3。实验数据3如
3.2 算法参数选择
3.2.1 SSAD算法参数选择
算法需要确定内窗和外窗的尺寸。由于算法设定
表 1. 窗口大小对SSAD算法检测性能的影响
Table 1. Effect of inner window size on SSAD algorithm detection performance
|
图 6. 不同异常检测算法在实验数据1上的检测结果对比。(a) RX算法;(b) CRD算法;(c) LSMAD算法;(d) SSAD算法
Fig. 6. Comparison of detection results on data 1 with different anomaly detection algorithms. (a) RX algorithm; (b) CRD algorithm; (c) LSMAD algorithm; (d) SSAD algorithm
实验结果显示:对于实验数据1,当窗口大小为3 pixel×3 pixel时,算法的探测性能最差;当窗口大小为5 pixel×5 pixel或7 pixel×7 pixel,算法的探测效果最佳;当窗口继续增大时,算法的探测性能逐渐降低。对于实验数据2和实验数据3,当内窗大小为3 pixel×3 pixel时,算法的探测性能最优;当窗口逐渐变大时,算法的探测效果随之下降。这是由于实验数据1中的目标尺寸较大,需要一个较大的空间结构窗来反映目标精细的空间结构,而实验数据2和实验数据3的目标尺寸较小,特别是实验数据2中部分目标属于亚像元像素,因而3 pixel×3 pixel大小的窗口就能体现目标的空间结构。实验结果表明,窗口大小的选择与目标的尺寸有关,当窗口大小与目标尺寸相近或稍大于目标尺寸时,算法的探测性能最好,窗口太大或太小都会降低算法的探测性能。考虑到窗口增大,算法的运行时间也会增加,因此,对于实验数据1,选择5 pixel×5 pixel的内窗,对于实验数据2和实验数据3,选择3 pixel×3 pixel的内窗。
3.2.2 CRD和LSMAD算法参数选择
CRD和LSMAD算法参数的选择秉持使探测效果最好的原则。CRD算法需要选择内窗大小
3.3 实验结果及分析
肉眼观察
为了定量比较
图 7. 不同异常检测算法在实验数据2上的检测结果对比。(a) RX算法;(b) CRD算法;(c) LSMAD算法;(d) SSAD算法
Fig. 7. Comparison of detection results on data 2 with different anomaly detection algorithms. (a) RX algorithm; (b) CRD algorithm; (c) LSMAD algorithm; (d) SSAD algorithm
图 8. 不同异常检测算法在实验数据3上的检测结果对比。(a) RX算法;(b) CRD算法;(c) LSMAD算法;(d) SSAD算法
Fig. 8. Comparison of detection results on data 3 with different anomaly detection algorithms. (a) RX algorithm; (b) CRD algorithm; (c) LSMAD algorithm; (d) SSAD algorithm
图 9. 各异常检测算法的ROC曲线对比。(a)实验数据1;(b)实验数据2;(c)实验数据3
Fig. 9. Comparison of ROC curves for different anomaly detection algorithms. (a) Data 1; (b) data 2; (c) data 3
表 2. 各异常检测算法的AUC值和运行时间
Table 2. AUC and execution time of different anomaly detection algorithms
|
从ROC曲线图中可以看出:SSAD算法能够在虚警率很低的情况下达到很高的探测率,表明该算法具有很强的背景抑制能力;SSAD算法在实验数据1和实验数据3上的ROC曲线特性明显优于RX、CRD和LSMAD算法;对于实验数据2,SSAD算法的探测性能虽然稍差于CRD算法,但其AUC值也达到0.9,且远远高于RX和LSMAD算法。从整体上看,SSAD算法的探测性能最好,而RX、CRD以及LSMAD这3种算法在不同实验数据上的探测性能差别较大。RX算法在实验数据1和实验数据2上的探测性能较差,但在实验数据3上的探测性能较好,说明当背景较为单一时,RX算法能够取得较好的探测结果,当背景分布复杂时,RX算法的检测性能就比较差。CRD算法在实验数据1和实验数据2上的探测性能较好,在实验数据3上的探测性能就不太理想,体现在检测结果中含有较多的杂波。LSMAD算法能够在虚警率较低的情况下达到较高的探测率,体现了LSMAD算法较好的背景抑制能力,但算法对复杂背景中目标的探测能力较差。
噪声和异常目标在图像中具有相似的特点,单纯考虑相邻像素光谱上的差异,就会把一些噪声点也视为异常目标,这一点在同是基于局部的CRD算法中表现得十分明显。SSAD算法考虑了图像的空间结构信息,使用图像块来衡量相邻像素的空间相似性,因此对噪声具有很好的稳定性。此外,SSAD算法在估计像素异常程度时不仅考虑了相邻像素光谱上的差异,还考虑了相邻像素空间结构上的差异,且其探测结果是各个波段探测结果相加得到的,如果像素在大部分波段上都是背景,相加将会使背景得到抑制;反之,如果像素在大部分波段都是目标,相加将会使目标更突出。这些都使得SSAD算法具有很强的背景抑制能力和目标探测能力。
从
4 结论
针对异常目标的“异常”不仅体现在光谱上还体现在空间结构上的问题,提出了一种基于空谱联合的局部异常检测算法。该算法充分挖掘和利用高光谱图像的空间结构信息,打破了传统的异常检测算法将三维高光谱数据转化为二维矩阵进行处理的模式,采用逐波段进行异常检测的策略,并且使用图像块来衡量目标和背景的相似度,不仅降低了数据处理的难度,还使得高光谱数据在目标探测领域的潜能得到进一步发挥。实验结果表明:将空间信息引入到异常检测中能够大幅降低检测的虚警率;采用图像块来衡量目标与背景的相似度,能够使算法对噪声具有很好的稳定性;逐波段进行异常检测,能够降低计算复杂度,缩短运算时间。
[1] 李佳逊, 董安国, 沈亚栋, 等. 基于邻域相似度的联合稀疏表示的高光谱图像分类算法[J]. 激光与光电子学进展, 2017, 54(12): 122803.
[2] 赵春晖, 邓伟伟, 姚淅峰. 基于逐行处理的高光谱实时异常目标检测[J]. 光学学报, 2017, 37(1): 0128002.
[9] 成宝芝, 赵春晖, 张丽丽, 等. 联合空间预处理与谱聚类的协同稀疏高光谱异常检测[J]. 光学学报, 2017, 37(4): 0428001.
[12] 李娜, 赵慧洁, 贾国瑞, 等. 基于扩展数学形态学的高光谱图像异常检测[J]. 光学学报, 2008, 28(8): 1480-1484.
[13] 廖建尚, 王立国. 两类空间信息融合的高光谱图像分类方法[J]. 激光与光电子学进展, 2017, 54(8): 081002.
[14] 麻永平, 张炜, 刘东旭. 高光谱侦察技术特点及其对地面军事目标威胁分析[J]. 上海航天, 2012, 29(1): 37-40.
[15] 孙伟峰. 基于非局部信息的信号与图像处理算法及其应用研究[D]. 济南: 山东大学, 2010: 51- 60.
Sun WF. Research on signal and image processing algorithms based on non-local information and their applications[D]. Jinan: Shandong University, 2010: 51- 60.
鞠荟荟, 刘志刚, 汪洋. 基于空谱联合的高光谱异常检测算法[J]. 激光与光电子学进展, 2018, 55(12): 122801. Huihui Ju, Zhigang Liu, Yang Wang. Hyperspectral Anomaly Detection Algorithm Based on Combination of Spectral and Spatial Information[J]. Laser & Optoelectronics Progress, 2018, 55(12): 122801.