郑恺雯 李慧 范仙如 梁锋娜 陈小玲
摘 要:高光谱遥感技术是一门致力于区分同一地物不同类别并进行相关分析的新兴技术。其中端元提取是混合像元分解中关键的第一步。本文对端元提取算法进行了分类阐述,分别介绍了穷举法、投影法、迭代法的典型算法,并比较了3种算法之间的优缺点,以期为高光谱遥感应用提供参考。
关键词:穷举法;投影法;迭代法;端元提取
中图分类号:TP79 文献标识码:A 文章编号:1671-2064(2019)09-0198-02
0 引言
高光谱遥感技术是利用很窄而又连续的光谱通道对地物持续遥感成像的技术,包含了地物丰富的地表特征[1]。与传统遥感技术相比,高光谱遥感可以区别同一地物的不同类别,如水稻与小麦等[2]。
高光谱遥感具有光谱分辨率高的特点,在空间分辨率的限制与复杂地物的影响下,导致高光谱影像中普遍存在混合像元[3]。在基于高光谱影像识别与分类时,首先要对影像进行混合像元分解[4]。端元提取算法较多,传统的方法是以监督分类为主导,随着科学技术的进步,当代学者采用一系列自动的非监督分类算法进行端元光谱的自动提取[5]。
自动提取端元的算法,总体可以分为3类:穷举算法、投影算法和迭代算法[6]。本文就端元提取算法参考大量文献,对现当代常用的算法进行归类分析,综合讨论各算法的运用原理以及优缺点。
1 穷举算法
穷举算法利用已知的部分条件如端元的个数信息对高光谱数据进行逐一验证,直到全部结果毫无遗漏验证完毕为止[7]。由于高光谱遥感的光谱分辨率高,导致高光谱遥感在运用穷举算法进行端元提取时,速度较为缓慢,严重影响运行速率。
1.1 N-FINDR算法
据郑丽等人介绍,N-FINDR算法将高光谱遥感影像的全部数据归放至多维空间中,构成的凸集的顶点位置就是所要提取的端元位置[8]。
以两个波段组成的二维空间平面为例,如图1所示,三个端元在二维空间中的散点图以三角形的形式存在,而端元的位置则位于三角形的三个顶点处,三角形所围成的平面内则是三个端元的混合像元。以此类推,N-FINDR算法的主要目的就是在多维空间中寻找能够构成最大单形体的顶点位置。由于高光谱遥感影像的波段数众多,所以首先要对影像进行降维处理。
N-FINDR算法是基于“纯像元存在于高光谱遥感影像中”的假设提出来的,受初始化端元性质的影响极大。据李志飞等学者介绍,原始N-FINDR算法采用全局搜索的方式,对影像数据进行多次遍历,严重影响了影像的处理效率,不利于大批量处理光谱数据[9]。针对N-FINDR算法的一系列缺陷,SGA算法逐步发展成熟。
1.2 SGA算法
单体增长(SGA)算法是在多维空间中寻找一系列顶点数不同且体积最大的单形体,并逐一提取单形体的顶点作为端元。SGA算法是N-FINDR算法的改进,王茂之等表示,SGA算法先找到“体积”最大的单体的两个端点,再遍历其他像元,寻找其他端元的所在位置,直到找到指定数量的端元为止。SGA的实现步骤可参考文献[10]。
与N-FINDR算法相比,该算法不存在“纯像元”的限制,且运算速度会略有提高。但通过上述步骤的介绍可以得知,该算法的运算速度取决于循环的次数,即初始化设置的端元个数。
2 投影算法
投影算法主要基于端元是凸面单形体的顶点,位于单形体边界这一事实[3]。与穷举算法不同的是,投影算法通过找寻点与点之间的距离、点与超平面之间的距離、点与凸面单形体间的距离等最大距离方式来判定端元位置。
2.1 PPI算法
郑丽指出,PPI以凸面几何学为基础,将N维空间中的光谱特征作为像元纯度指数的载体[8]。对高光谱数据降维后的主要成分组成的特征空间中进行像元投影测试,对每个像元叠加位于测试向量两端的次数。根据所有像元由纯像元为顶点的凸面几何体包围的特点,投影在测试向量两端越多次数的像元越有较大的端元可能性[11],被记录的测试向量两端的次数即为PPI。以两测试向量为例,如图2,在测试向量X,Y所组成的二维平面空间内,所有像元均投影在测试向量上时,被投影到向量两端的点被记录下来,像元A、B、C的PPI指数分别为2,1,1。以此类推,被投影到测试向量两端的次数越多,其PPI越大,越容易被认为是纯像元的可能性越大。
PPI指数的工作原理十分简单,但也存在明显的缺陷。该指数只能简单地确定纯像元的位置,而且通过以上算法过程分析,PPI指数确定的端元位置仍然充满不确定性,这与测试向量的选择、特征空间的分布状况等有极大的关系。
2.2 VCA算法
顶点成分分析(VCA)算法具有良好的理论基础,并取得了相对较好的效果,是提取端元的一种较为重要与常用的手段之一[12]。VCA算法的基本思想为,在线性混合模型下,观测向量集合组成一个凸面单形体,将凸面单形体内的数据反复正交投影到超平面上,最大的投影向量即为端元。该算法的具体实现步骤可参考文献[12]。
与PPI算法一样,VCA算法也是一种端元逐次提取算法,前面所提取的端元不会影响后续端元的提取。该算法可以有效的避免在端元数目估计不正确的情况下,端元之间的相互干扰,提高了计算算法较为简单,大大提高了算法的计算速度。
3 迭代算法
迭代法是一种重复计算的算法。迭代法运用了计算机运算速度快、适合重复工作的特点,使计算机对一组指令不断重复,在旧值的基础上推算出新值[4]。该算法适用于处理数据量大的高光谱数据。
3.1 SMACC算法
逐次最大角凸锥分析(SMACC)算法是一种基于迭代算法自动寻找最大凸面单形体顶点,自动获取端元,并提供端元丰度图像的方法[13]。该方法的最终目的是寻找最大凸椎体的顶点,获得端元,并对遥感影像进行分解和分类。
凸锥的一个基本性质是:一个b维向量,如果拥有c-1(c为组分数)个分量为0,其他分量均为非负值,则该向量为凸锥的角点[13]。关于SMACC的工作原理,具体可看考文献[13]。
与传统的CCA算法相比,SMACC算法在选择最佳顶点时,添加了一定的规则限制,利用计算机技术自动提取出符合条件的最佳角点,比CCA算法更加有说服力。但SMACC算法作为CCA算法的改进。
3.2 IEA算法
据吴波等人介绍,误差迭代分析(IEA)算法的本质是根据分块矩阵的原理,对混合像元线性分解后得到的残存误差进行分析归类,并定位到端元所在的光谱位置,并按照一定的阈值范围来确定最终端元的光谱特征[14]。与上述方法不同的是,此方法不需要降维,而是直接给定一个初试化向量,根据初始化向量得到的残差图像选择端元,再进行重复循环,以此类推,直到求出所有端元为止[8]。
该算法从纯数学的理论出发,最大的缺点就是没有考虑端元的空间关系与端元间的相互独立[14]。端元的空间分布情况不是均匀的,實际上具有一定的形状和积聚性,空间分布的不均匀性对迭代误差算法的精度有很大的影响作用。
4 结论与展望
(1)穷举法:侧重于遍历寻找降维后各光谱数据间使凸面单形体体积最大的顶点作为像元。虽然用该方法提取的端元信息精度较高,但是运算量大,且运用的降维算法对选取的端元有一定的影响。(2)投影法:侧重数据在波段所组成的特征空间中的投影。投影方式的不同,端元提取的效果也不尽相同。该算法相对而言,大多数的投影算法以寻找投影后在特征向量上的两端点或距离远近关系等特点来确定端元所在位置,其运算量较小,是一种快速提取像元的方法。(3)迭代法:根据给定的初始值,不断进行迭代分析,直到找到所需的全部端元为止,是迭代算法的一大特点。该算法可以解决穷举法的降维问题,但初始值对后续端元的提取有很大的影响。
参考文献
[1] 汤毅,万建伟,许可,等.地物空间分布特性的高光谱遥感图像解混算法[J].红外与毫米波学报,2014,33(05):560-570.
[2] 杜培军,夏俊士,薛朝辉,等.高光谱遥感影像分类研究进展[J].遥感学报,2016,20(02):236-256.
[3] 田珊珊,杨敏华.高光谱影像端元提取算法研究与分析[J].山东农业大学学报(自然科学版),2018,49(05):847-851.
[4] 董安国,韩雪,龚文娟.基于单体扩张的端元提取算法[J].红外技术,2016,38(11):947-952.
[5] A I, Chang. C. Unsupervised Hyperspectral Image Analysis with Projection Pursuit[J]. IEEE Trans. Geoscience and Remote Sensing,2000,38(6):2529-2538.
[6] 郭山,袁路,孙卫东.基于特征端元提取的像元分解方法[J].高技术通讯,2008,18(10):1035-1040.
[7] 徐元进,胡光道.穷举法在高光谱遥感图像地物识别中的应用[J].四川大学学报(工程科学版),2007(S1):168-173.
[8] 郑丽.端元提取算法的研究综述[J]. 湖北第二师范学院学报,2015,32(02):20-23.
[9] 李志飞,杨敏华.一种基于N-FINDR的优化端元提取算法[J].测绘地理信息,2017,42(05):70-73.
[10] 齐建成,朱述龙,朱宝山,等.图像端元全自动提取方法研究[J].海洋测绘,2009,29(02):16-19.
[11] 王茂芝,徐文皙,王璐,等.高光谱遥感影像端元提取算法研究进展及分类[J].遥感技术与应用,2015,30(04):616-625.
[12] 何晓宁,曹建农,高坡,等.基于顶点成分分析法的端元提取改进算法[J].测绘通报,2013(07):30-34.
[13] 褚海峰,翟中敏,赵银娣,等.一种多/高光谱遥感图像端元提取的凸锥分析算法[J].遥感学报,2007(04):460-467.
[14] 吴波,张良培,李平湘.高光谱端元自动提取的迭代分解方法[J].遥感学报,2005(03):286-293.