波段选择方法综述

Hyperspectral Band Selection A review

当前的高光谱波段选择方法,该方法可以分为六个主要类别:基于排序,基于搜索,基于聚类,基于稀疏性,基于嵌入学习和基于混合方案。
基于排序的方法根据预定义的频段优先级标准量化每个频谱带的重要性,并按排序的顺序选择排名靠前的频段。 根据是否使用标记的训练样本,基于排名的方法可以进一步分为两种类型,即无监督的和有监督的。
无监督标准会考虑频段的信息,相异性或相关性。 例如,指标包括方差,一阶光谱导数,频谱比,对比度测量,信噪比(SNR),三阶统计量(偏度),四阶统计量(峰度),k阶统计量,负熵, 熵和信息散度通常被用来区分频段的优先级。
基于排序的方法(无监督)
高信息标准:
采用主成分分析(PCA)对波段图像的能量或方差进行排序,最小方差PCA (MVPCA) 和最大信噪比PCA (MSNRPCA)。
(1) PCA (MVPCA):基于方差的频带功率比对所有频带进行排序。MSNRPCA相对于MVPCA的优点是在PCA之前对噪声进行了白化处理,以消除噪声的影响。
(2) Kullback–Leibler distance(相对熵),基于Kullback-Leibler距离的发散带去关系方案去除冗余或不显著的波段。如果两个波段之间的分歧低于预先定义的阈值,低优先级的波段被删除。后来,互信息(MI)被用来衡量的波段差异。
(3) 基于协方差的方法通过匹配滤波器和自适应相干估计器对所有光谱波段进行优先排序,以最大限度地减少它们对目标检测的影响。

关联度很低的标准:
所选波段必须具有低的相互相关性。尽量减少相关的选择波段。
(1) 约束频带选择(CBS)方法采用约束能量最小化(CEM)来线性约束频带图像,同时最小化其他频带图像提供的频带相关性(BC)或依赖性。
(2) 使用四个不同的标准扩展了CEM-CBS问题的解决方案,即带相关最小化(BCM),带相关约束,带相关约束和带相关最小化。
(3) 由于从波段图像转换的向量维数巨大,因此需要大量的计算时间。因此,开发了线性约束MV (LCMV)-CBS,将带图像约束为不需要向量转换的图像矩阵,大大降低了计算复杂度。后来,受约束的多频带选择(CMBS)扩展了CEM-CBS并实现了LCMV以同时约束和选择多个频带
(4) 在[27]中,提出了基于分形维数的最优波段指数准则,量化各波段间光谱和空间信息的相关性,进行波段选择。
(5) 基于光谱冗余和带去关系,采用局部曲线拟合技术[28]对曲线拟合产生的平均反射率与平滑平均反射率的绝对差进行排序,选择最优波段。

极大不相似准则:
所选波段应该是彼此不相似的。
(1) 受[29]中基于快速密度峰值聚类(FDPC)算法的启发,提出了一种基于排序的样本成分分析算法,用于自动从所有频带中寻找聚类中心。该算法只需要测量所有成对波段之间的距离,不需要参数化概率密度函数。
(2) E-FDPC算法通过加权局部密度和内距离来计算各频带的等级分数,并引入指数学习规则来合理确定截止阈值。

基于排序的方法(监督)
分类目标标准:
(1) 最小错误分类规范分析(MMCA)来根据频段的分类能力对频段进行排名。 MMCA源自Fisher的判别函数,旨在通过解决广义特征值问题来最大程度地减少选定频段的误分类误差。可以通过定义频带功率比来衡量待分类频带的误分类率。
(2) 基于可分性准则和矩阵系数分析的特征加权频带选择算法。该算法通过主成分去相关,通过评价对应的主成分系数和判据值,对每个类进行带级排序。利用投票技术确定各波段的权重进行排序,并通过相关阈值去除冗余波段。之后采用相位相关[34]作为相关测量,去除冗余带。
(3) 在[35]中,训练了一个非齐次隐马尔可夫链模型,并将其应用于小波变换训练和测试样本。NHMC用每个波段的所有成对相关系数(CCs)的平均值来量化每个波段的重要性。
光谱解混目标标准:
(1) 基于线性混合模型的正交子空间投影(OSP)[23]利用子空间投影消除不需要的特征和抑制噪声,使信噪比最大化,
(2) 变数变波段选择算法[36],根据待处理的高光谱特征选择不同的波段。VNVBS利用OSP形成一个波段优先级标准,并为每个光谱波段分配不同的优先级分数,以捕获不同的特征。
(3) 在[38]中,提出了一种新的可分离性指数,以波段子集的解混分析为重点,最大限度地提高端元间的光谱可分离性,从而降低了选择波段的混合分析对植物的检测精度。

基于搜索的方法
基于搜索的方法将频带选择问题转化为给定准则函数的优化问题,并寻找最佳频带以形成最优解。关键点是:准则函数和搜索策略。标准函数可以是基于相似度的度量,例如欧氏距离(ED),Bhattacharyya距离,Jeffries–Matusita(JM)距离[39],光谱角制图(SAM)[40],结构相似性指数测量[41]或 基于信息的测量,例如光谱信息散度(SID),变换散度,MI [42]和基于空间熵的MI [43]。搜索策略决定了寻找最优或次优解的最佳方式。根据所采用的搜索策略,基于搜索的方法可以分为增量搜索、更新搜索和消除搜索三类。

基于增量搜索的方法:
而不是用尽测试所有的波段组合,这是计算上禁止的,增量搜索的方法顺序地添加新的波段,优化标准到当前的波段子集,直到一个期望的波段数被选择。通常采用顺序转发选择(SFS)策略。这些方法可以是无监督的,也可以是有监督的,这取决于搜索过程中是否需要标记的训练样本。
无监督的搜索:基于增量搜索的无监督方法不考虑HSI数据的先验知识;相反,它们迭代地添加不同的、有信息的波段。在[44]中,提出了一种带选择算法来搜索偏度或峰度值较大的带。在[45]中,采用线性预测(LP)和OSP联合评价单波段与多波段的相似度,期望所选波段在目标检测和分类方面取得满意的性能。在[46]中,使用光谱节奏来利用HSI数据的中间表示,迭代选择最不相似和信息最多的波段,采用基于二部图匹配的不相似度度量。基于几何的[47]算法利用凸集几何迭代搜索像素空间中最大单复数的新顶点,这些顶点所对应的选取波段之间相关性较低。
监督搜索:在[48]中,利用SAM的精确分解,提出了频带附加(BAO)算法来迭代选择能增加光谱库中两个光谱之间的角度间隔的频带。 为了解决区分两类光谱的实际问题,将BAO扩展到两种频带选择方法,即平均距离和最小距离方法(MDM),并且选定的频带增加了两类光谱的角度可分离性。 类似地,在[49]中,使用类谱签名,最小估计丰度协方差(MEAC)算法递增选择不相似频带,以通过将丰度协方差矩阵的迹线最小化来保留所需的信息以进行分类。[50]中的非线性简约特征选择算法使用快速的SFS搜索,迭代地选择光谱波段,最大限度地估计高斯混合模型分类器的分类率。
Cramer的V(CV)是最流行的名义关联,用于衡量变量之间关系的强度,而不管表的大小如何。基于CV测试理论,提出了最大最小关联索引(MMAIQ)[51],以逐步选择在目标标签/特征之间具有统计上最大关联以及在选定特征之间具有最小关联的频段。但是,MMAIQ存在离散问题,并且在计算CV测试值时不考虑类别标签。因此,在[52]中,提出了基于CV检验离散化的关联指数和基于类属性相互依赖最大化的关联指数,以完善MMAIQ的频带选择结果。两种导出的算法实现了CV测试离散化方案,并使用贪心算法递增选择了最佳光谱带。后来,在基于粗糙集的频带选择算法中实现了一种简单的等宽间隔合并方法[53],该算法基于粗糙集理论以及迭代选择的具有较高相关性和信息量的频带,量化了每个频带的相关性和重要性和显着性值。
基于变精度邻域粗糙集(VPNRS)的算法[54]也受到粗糙集理论的启发,利用依赖关系度量各频带的显著性,并实现了前向贪婪算法来选择信息频带。摘要在N-FINDER的启发下,提出了一种序贯频带子集选择算法[55]来选择合适的异常检测频带,利用平均最小二乘误差和三维接收机工作特征曲线,通过与所有频带的异常检测性能比较,迭代添加新频带。通过比较所有原始波段在检测图上的最大输出,提出了一种新的[56]波段目标检测指标。

基于更新的搜索方法:
更新的基于搜索的方法在搜索过程中根据需要迭代地将当前带子集的元素替换为新的元素,以确保预定义的评价标准得到优化。除了简单的搜索策略(例如顺序前向浮点搜索[21],分支和边界搜索[57],陡峭上升搜索和约束搜索[58] [59])外,采用带搜索进化算法,如粒子群优化(PSO)[21],[56],自适应模拟退火[60],[61],遗传算法(气)[62],萤火虫算法(FAs)[63],[64]微分进化算法,蚁群优化[65],[66]。与基于增量搜索的方法类似,相似度或信息度量可以用作目标函数。在[67]中,导出了最大信息和最小冗余(MIMR)准则作为最大联合mi准则的低阶近似。设计了人工免疫系统中的克隆选择算法来优化MIMR的目标函数。在[68]中,研究了信息熵与选择频带数之间的冲突关系,设计了多目标优化频带选择算法来寻找最佳折衷解决方案。一些目标函数利用HSI数据的先验知识(例如,标记的训练样本和类签名)来制定HSI分类的监督或半监督带选择方法。根据带搜索过程中是否涉及到分类器,这些方法可以分为独立分类器和依赖分类器的方法。
独立分类法
目标函数独立于真实分类器的分类精度和基于特定度量的类可分离性估计。在[69]中,克隆选择特征选择算法采用不同类间的平均JM距离作为准则函数,实现克隆选择策略,寻找最优准则函数的带子集。在[70]中,带的选择被转化为使用一定的准则来最大化类可分性的优化问题,即。, ED, SAM, spectral correlation mapper, BC,采用免疫克隆策略算法进行波段搜索。在[71]中,PSO算法用于搜索一个带子集,该带子集优化不同类之间MEAC或JM距离的准则函数。在[72]中,引入遗传算法来搜索最优频带组合,协调由类间信息熵和巴塔查雅距离构成的目标函数中潜在的冲突。在[73]中,提出了一种贪婪的基于聚格的带选择(GCBS)算法,用于在复制核希尔伯特空间中训练有监督的解混模型。基于相干准则,GCBS为非混合模型中表征所选波段的基核函数之间的相关性设置了最大允许的值。TMI还被扩展为半辅助版本STMI,通过添加一个图形正则化术语来使用未标记的样本。之后,为了同时测量标记训练样本和未标记训练样本的冗余度,STMI加入了高分辨、高信息和低冗余的半叠加标准。
分类相关方法
在[76]中,我们评估了五种受自然启发的算法,包括引力搜索算法、和声搜索、粒子群算法、FA和Bat算法,以选择最优路径森林分类器精度目标函数最大的最佳波段。在[77]中,提出了基于分数阶达尔文粒子群优化算法的二值优化方法来选择信息频带,并以支持向量机分类器的整体精度作为搜索准则。利用一种基于随机森林的可能的特征选择评分来构造准则函数,并用遗传算法进行频带选择。以分类误差和所选频带数的线性组合为搜索准则,采用概率模因算法优化目标函数,识别信息最丰富的频带。
同样,将[80]中的频带选择问题转化为选择频带数量与分类精度的组合优化问题,采用混沌二值编码引力搜索算法寻找最优解。
消除基于搜索的方法
通常采用顺序向后选择(SBS)。在[81]中,BS用于CEM算法实现了权重和波段规范的乘积,以构造一个评估标准,并使用SBS迭代地去除不重要的波段。在[82]中,基于体积梯度的频带选择算法基于单形对HSI数据的体积梯度迭代地删除了最冗余的频带。这里假设冗余带与其他带张成的超平面的距离最短,并定义了一个准则函数以使所选带形成的次单纯形体积最大。基于自相关矩阵的带选择算法[83]采用最小相对LP误差作为准则,利用SBS搜索带的次优子集。在[84]中,最小噪声波段选择算法考虑了波段的质量,设计了一种结合噪声调整主成分和协方差矩阵的最大行列式的指数,并采用SBS来寻找高信噪比和低相关的最佳波段。为了更好地描述HSI数据的非高斯性,文献[85]中的联合偏态带选择算法定义了一个结合三阶(二阶张量)和二阶(相关)统计量的准则函数,并采用SBS去冗余带进行小目标检测。在[86]中,提出的频带选择算法根据其鉴别能力从最相关的相邻频带对中迭代地消除一个频带。

基于聚类的方法
基于聚类的方法将原始频带分组成簇,并从每个簇中选择具有代表性的频带组成最终的频带子集。HSI带聚类的第一篇论文描述了基于Ward s链接的[20]层次聚类算法,该算法能同时最小化簇内方差和最大化簇间方差。可以使用信息测量来确定代表性带,例如MI或Kullback Leibler散度,以去除冗余带。此后,文献中又提出了其他基于聚类的频带选择算法。除了BandClust[87]、模糊聚类[88]和自动波段选择算法[89]之外,大多数基于聚类的方法都是从k-means、亲和力传播(AP)和图聚类中派生出来的,这些将在下面的章节中进行讨论。
基于K均值的聚类方法:
k-means算法是一种应用广泛的聚类技术。初始化一组随机选择的频带,然后迭代优化目标函数,量化到一组假定候选中心的距离总和,直到找到最优的聚类中心。在[90]中,k均值算法使用HSI数据的不同特征进行聚类,即四分位间距,几何平均值,中位数绝对偏差,中位数,CC,协方差和众数。在[91]中,提出了一种代表性的频带挖掘算法,用于k-均值聚类方案中的频带选择,其中采用不相交的信息来测量成对的频带差异。与传统的基于聚类的方法分别从每个波段簇中选择波段不同,代表性波段挖掘通过探索所有频谱波段簇来同时选择代表波段。使用非线性核函数,设计了核k均值算法[92]来识别非线性解混问题的再生核Hilbert空间中光谱带的非线性可分离簇。 k-means算法也扩展到双重聚类算法[93],其中通过上下文分析提出的基于双重聚类的频带选择提出了成对的高光谱角度描述符,以利用特定像素的上下文信息并实现了分组策略。选择代表性波段的代表。
在k-means算法的基础上,提出了具体的监督或半监督带选择方法。原型空间波段选择算法[94]仅使用类光谱对原型空间中的波段进行聚类,其中所有波段都根据类签名进行表征,以表示类对波段的光谱特性;选择每个聚类中能够带来最佳分类精度的代表性波段组合作为最终波段子集。在[95]中,类签名也作为半叠加的形式输入到k-means算法中,在最终将聚类中心作为代表性频带之前,通过去除每个聚类中的离群值频带来净化由半叠加k-means算法产生的聚类。改进的半附加k均值算法提高了带宽选择性能,降低了计算量。
基于亲和力传播的聚类方法
k-means算法的聚类对初始条件很敏感。因此,我们提出了基于样本的AP聚类算法[96]来寻找合适的样本集作为代表性带。AP算法考虑了各频带之间的相关性或相似性以及各频带的识别能力,通过函数的最大化来获得样本。在[97]中,提出了两个特征测量,即频带相关度量(BCM)和频带可分离性度量,以分别评估所有频带的频谱相关性和单个频带的类别辨别能力,以及无监督版本。 制定了AP。 后来,判别特征量度(DFM)[98]与判别约束条件一起使用,该约束条件涉及块的小块和判别信息。 提出的DFM-AP可以选择具有低冗余度的高判别频段。
AP聚类算法也被制定为有监督或半监督版本。 在[99]中,AP与判别式内核比对(DKA)组合在一起,形成了辨别性的内核聚类算法,用于频带选择。 DKA测量比较了内核之间的类内和类间相似性,并为AP群集提供了准确的内核相似性。 在[100]中,提出了一种半监督自适应AP算法,其中在距离测量中使用类签名来提高频带选择性能。 此外,针对AP群集设计了一种称为归一化TMI [101]的度量; 它不仅考虑了频带冗余和频带协同作用,而且还使用标记和未标记的样本量化了频带的判别能力。
基于图的聚类方法
图论将频带选择表述为一个图问题,图中节点表示HSI频带,连接两个节点的边对应于两个频带之间的相似性。基于图的聚类方法通过构造与频带相似度相关的亲和矩阵A,将图聚类为子图,从而找到具有代表性的频带。具体来说,A是一个描述带亲和性的矩阵,每对带之间的亲和性计算为A =- v2ij, i exp(ffj/), v2表示一个比例因子。基于图的聚类算法的一个典型例子是光谱聚类[102],[103],它对关联矩阵的特征向量进行堆叠聚类。在[104]中,多图确定性点过程DPP实现了光谱聚类算法来发现高维带空间中的子图结构,发展了DPP的搜索策略,利用每个子空间的亲和矩阵来选择最重要的带子集。在[105]中,图的聚类利用Bhattacharyya距离构造带邻接图,采用Markov聚类算法将带邻接图聚类到不同的聚类中。以与各簇内其他频带总距离最小的频带为代表频带。
在[106]中,结构感知测度利用HSI数据的结构信息,通过空间光谱一致性分析,构造无向加权图,并采用优势集提取对图表示进行聚类,选择优势顶点作为代表带。在[107]中,将HSI数据转化为复杂网络图,通过分析每个频带对应的网络拓扑特征进行频带选择,选择最适合识别网络划分单元的频带。

基于稀疏性的方法
根据稀疏理论,每个波段可以稀疏表示,仅使用几个与原子有关的非零系数在一个合适的基或字典。基于稀疏的频带选择方法利用稀疏表示或回归来揭示HSI数据中的某些底层结构。通过求解具有稀疏约束的优化问题,可以得到具有代表性的带。目前的稀疏约束方法可以分为基于稀疏非负矩阵分解(SNMF)的方法、基于稀疏表示的方法和基于稀疏回归的方法。
基于稀疏非负矩阵分解的方法
SNMF将一个原始的HSI数据矩阵分解为一组基的乘积。和编码(即基矩阵)。,系数矩阵),其中基是非负的,编码是负的和稀疏的。由于碱基和编码的非负约束导致了SNMF的基于部分的特性,因为只允许添加组合。在[108]中,引入了SNMF来解决HSI波段选择问题,其中代表性波段通过聚类稀疏系数来选择。具体来说,它旨在将HSI带矩阵B分解成一个未知字典矩阵W RDr trix H RrN的乘积!!和一个未知稀疏系数,对目标函数进行优化。遗憾的是,(12)中采用的ED距离测量并不能很好地代表X与其近似值WH之间的近似误差。这是因为ED测量背后的高斯分布假设与HSI数据的本质相矛盾。因此,采用EMD (Earth s mover distance, EMD)测量近似误差,改进SNMF的波段选择[109]。EMD是一种跨库距离,主要解决直方图或图像匹配问题,目的是最小化在转换一个特征分布(即,柱状图)到另一个。设Xl为源直方图,对应于第lth波段像素的光谱响应,设列向量Xl u为目标归一化直方图,对应于另一个波段。两个直方图bl和b之间的EMD距离被表述为一个线性规划问题,其目标是将源bl转化为目标b的总成本最小化。
基于稀疏表示的方法
与基于snmf的方法不同,基于稀疏表示的方法预先学习或手动定义字典。他们通常根据稀疏系数来选择信息频带。在[110]中,利用k - svd学习字典对HSI波段进行稀疏表示,基于稀疏表示的波段选择算法采用多数投票的方法,根据稀疏系数对波段进行排序,选择稀疏系数直方图中出现频率高的波段。将频带选择[111]化为多任务稀疏学习问题,采用免疫克隆策略基于稀疏系数搜索最佳频带组合。协同稀疏表示模型可以强制所有波段共享相同的活动原子。在[112]中,采用协同稀疏模型对预选频带进行细化,使选择频带数量最小化。当一个稀疏表示模型中的字典被设置为等于HSI数据本身时,所有的带向量都假设是从几个独立的子空间中采样的。将改进的稀疏子空间聚类(ISSC)模型[113]化为优化问题。在这里,约束diag z0 =^h消除了平凡解,它表明每个带只是由它自己表示。ISSC算法在稀疏矩阵Z构成的相似矩阵上利用光谱聚类估计有代表性的波段。在[114]中,添加成对像素之间的空间光谱信息来衡量系数矩阵Z中的项,提高了波段选择性能。采用平方加权策略构造系数稀疏的强连通邻接矩阵,ISSC算法成为平方加权低秩子空间聚类带选择算法[114]。考虑到所有带的可分离性,将可分离非负矩阵分解的带选择转化为快速鲁棒自表示(FRSR)模型[115],约束Z 0$将保证从期望的频带子集构造每个频带的正权值。约束ZZ ^^# ii,, ijhh来自于这样一个事实:重构权值对于任何带点(即。)在凸壳内不能超过该频带的L1范数与每个选择频带的比值。结构随机投影实现加快(15),和代表乐队与最大的对角线项估计分解本地化矩阵c中的稀疏发作模型ISSC算法可以选择的乐队,但它没有考虑贡献个人的乐队与稀疏系数编码其他的乐队,这可能会导致类似的乐队被选中。因此,在稀疏自表示模型中加入一个不同正则化项,其中两个波段之间的不同信息通过融合SID和CC的复合距离度量量化,不同权重稀疏表示模型[116]的目标函数为。
带的稀疏自表示也被扩展为对称稀疏表示(SSR)模型[117],其中选择的和原始的带可以对称稀疏表示。SSR算法将频带选择公式化为原型分析的著名问题: 原型分析假设原型是所有带点的凸组合,而所有带点近似为原型的凸组合。因此,代表性带的选择可以看作是在包含所有高维带点的最小凸包中寻找原型。
基于稀疏回归的方法
基于稀疏回归的方法利用训练样本及其类标签将带选择问题表示为一个稀疏线性回归问题。从最优解中提取的稀疏系数有助于选择具有更好类可分性的带。在[118]中,对训练样本与其类标签之间的线性回归施加稀疏约束,将最小收缩选择算子(LASSO)表示为。通过对各班的频带系数进行排序来选择频带。LASSO模型和基于Hilbert Schmidt独立性准则的新的可分离性测量[119]被耦合成一个用于波段选择的统一框架。该组合选择了合适的频带,提高了类的可分性,避免了计算密集型的搜索策略。在[120]中,利用CEM进行目标检测的波段选择问题转化为LASSO的连续优化问题,提出的LASSO波段选择算法同时评估所有波段的重要性,避免了复杂子集的选择。
此外,在[121]中,基于群稀疏的算法通过对回归系数施加群稀疏约束来完成波段选择任务,并选择了分类误差最低的波段。[122],组稀疏被纳入线性回归分类制定semisupervised波段选择方法,标签传播是用来传播类标签未标记样本使用超图模型和选择合适的乐队排名得分系数矩阵的选择。

基于嵌入学习方法
基于学习的嵌入方法将波段选择纳入特定应用模型的优化(如分类、目标检测和光谱分离)。
基于分类器学习方法
由于SVM分类器对不平衡训练样本的敏感性较低,因此在高光谱图像分析中得到了广泛的应用。递归特征消除svm在高光谱波段选择中具有良好的性能;这里使用SVM训练阶段计算出的权重值作为排序准则,去除冗余带,优化SVM分类器。RFE的重点是通过消除最大限度的边界特征来最小化泛化误差。预测能力的度量与边际成正比,在[123]中,嵌入的特征选择算法采用logistic投票来提高RFE的收敛速度,并且在不事先知道固定频带数的情况下自动去除冗余频带。在[124]中,改进的递归SVM在RFE-SVM训练过程中实现了一种新的排序准则,以获得更高的分类精度,减少处理时间。在[125]中,将RFE-SVM改进为基于核的特征选择算法,以支持向量机系数的大小作为选择重要波段的排序准则,更好地训练支持向量机分类器。利用卷积神经网络(CNN)挖掘HSI分类的深层特征,结合AdaBoost SVM分类器选择判别互补的光谱波段[126]。
在基于分类学习的方法中广泛使用的另一个典型模型是多项式线性回归(MLR)分类器[127],该分类器报告给定样本x属于类c的概率p,为了达到一个可接受的稀疏程度,一个Laplacian先验被纳入估计权w使用最大后验(MAP)准则。稀疏MLR (SMLR)[128]的目标函数定义为。SMLR采用动态训练方案,将频带选择和SMLR训练集成到一个统一的框架中,所选频带对应非零logistic回归系数。随后,对SMLR进行了测试,以提高某北方森林高光谱数据中松树、云杉和桦树物种分类的准确性[129]。
基于其他的学习方法
波段选择模型也可以嵌入到目标检测和端元提取的学习模型中。在[130]中,引入了带稀疏项和稀疏促进先验,将稀疏促进迭代约束的端成员扩展到目标函数中。其中RSSB为基于凸几何模型的残差平方和,SSDB为描述距离平方和的项,SPT为促进波段稀疏项,BST为描述波段权值的加权和。其中h和b为目标函数中平衡RSSB和SSDB的正则化参数。迭代更新方案用于自主确定所需的光谱频带数目,并在进行端元确定和解混时选择频带。利用类似的思想,通过在CEM检测器中添加稀疏正则化项,将频带选择嵌入到目标检测模型中。通过优化一个连续凸二次规划问题来求解公式化的稀疏CBS[131],同时得到合适的带和稀疏CEM检测器。
在[132]中,提出了一种距离密度的子空间划分频带选择来优化预训练的CNN模型。然后使用自编码器神经网络代替cnn,提出分段自编码器方法[133]来选择最显著波段。基于注意力的cnn[134]使用训练过的深度网络选择了信息量最大的波段。文献[135]中的贡献图(contribution map, CM)记录了每个类别的鉴别波段位置,并将其纳入到cnn中,制定的CM-CNNs选择了更多的鉴别波段。

基于混合方案的方法

其中,聚类方案与排序方案更广泛地结合,形成混合算法。在[136]中,光谱可分性指数(spectral separability index, SSI)算法综合聚类、排序和搜索方案,选择最佳波段组合进行分类。首先基于光谱CCs将原始波段分组为若干簇,然后通过对各波段在同一子空间内的熵进行排序,选出具有代表性的波段。最后,通过最大化SSI可分离性来寻找最佳带组合。乐队选择框架[137]提出了整合集群化—和排名技术中,在集群上执行乐队属性使用density-based空间聚类的应用程序与噪声去除冗余的乐队,乐队和代表所有集群的排名根据他们的辨别能力。在[138]中,使用粒子群算法将所有频带分组为不同的聚类,并采用最大功能频带优先化算法选择最重要的频带。在[139]中,流形排序算法结合聚类和排序方案来选择不同的频带,这里采用k-means算法对所有频带进行聚类,通过克隆选择选择每个簇的代表性频带,并将其作为查询处理。同时,根据HSI数据的数据流形结构对其他频带进行排序,期望查询集选择不同的频带。
此外,该聚类方案还可以与搜索方案相结合。一种混合频带选择策略[140]综合聚类和搜索方案,寻找分类精度较高的最佳频带组合。在相邻频带间的条件MI上进行频带分组,然后采用遗传算法在不相连的组中搜索最优组合,最大限度提高分类精度。此外,分枝定界搜索算法删除了上述结果中不相关的带,最终得到相关带的最小集。该聚类方案与进化搜索方案相结合[141],空间聚类产生整体签名变异,确定代表图像中不同签名模式的聚类平均值。然后将遗传算法应用于聚类特征,提取出具有最优识别信息的频带。
例如,在[142]中,结合排序和消除搜索方案,选择最优波段进行异物分类,所有波段首先按照冗余最小和相关性最大进行排序。然后采用顺序的反向消除法去除对分类贡献最小的条带。

热门文章

暂无图片
编程学习 ·

python学习记录

变量和简单数据类型 message="Hello Python world!" print(message)message就是一个变量,绿色部分用双引号括起来的(也可以用单引号)就是一个字符串。变量的命名和使用: 1.变量名只能包含字母、数字和下划线。字母下划线可以打头数字不可以。 2.变量名不能包含空…
暂无图片
编程学习 ·

C++核心准则ES.40:避免复杂的表达式

ES.40: Avoid complicated expressionsES.40:避免复杂的表达式Reason(原因)Complicated expressions are error-prone.复杂的表达式容易引发错误。Example(示例)// bad: assignment hidden in subexpression while ((c = getc()) != -1)// bad: two non-local variables as…
暂无图片
编程学习 ·

Unity性能优化之 Profiler

Profiler主界面 打开方法为上方工具条 Windows-Analysis-Profiler(我也正在学习此功能使用,如有那部分错了还请指出QVQ)左上角可以勾选我们要查看的部分 这里以内存和CPU做演示,选中左边的Memory后下方的内容框就会变化如图 unity会在运行时自动获取每一帧的内存占用数据项…
暂无图片
编程学习 ·

Leetcode 题解 - 栈和队列

用栈实现队列 232. Implement Queue using Stacks (Easy) 栈的顺序为后进先出,而队列的顺序为先进先出。使用两个栈实现队列,一个元素需要经过两个栈才能出队列,在经过第一个栈时元素顺序被反转,经过第二个栈时再次被反转,此时就是先进先出顺序。 class MyQueue {private …
暂无图片
编程学习 ·

dnf强化系统实测 java代码

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;/*** dnf强化系统实测*/ public class Qianghua {public static void main(String[] args) throws IOException {//手动强化//manualQianghua();//自动强化autoQianghua(0,16);}…
暂无图片
编程学习 ·

Qt编写安防视频监控系统30-GPS运动轨迹

一、前言 此功能是一个客户定制的,主要是需要在地图上动态显示GPS的运动轨迹,有个应用场景就是一个带有监控的车子,实时在运动中,后台可以接收到经纬度信息,需要绘制对应的轨迹,相当于这些摄像机点位是动态移动的,这样就可以观测到摄像机的实时位置信息,双击摄像机还可…
暂无图片
编程学习 ·

Plotly+Cufflinks,交互式图表神器,一行代码GET!

前言本文将介绍如何使用Plotly+Cufflinks更简便地制作出更好的图表。 这是Github上一个大神发布的资料,本人学习之后觉得非常实用,所以和大家分享。需要查看代码的童鞋指路Github:https://github.com/WillKoehrsen/Data-Analysis 本文中的所有代码都是使用Jupyter notebook完…
暂无图片
编程学习 ·

Spark1.x升级Spark2.x常见异常Kafka篇【TopicMetadataRequest】

一.原因分析 当Spark从1.x升级到2.x时,如果使用SparkStreaming加载Kafka的数据,即使Kafka版本没有变化【一般会有所升级】,对应的spark-streaming-kafka也必须升级到对应版本,访问方式也会有所变化。 此处是从Spark1.6.0升级到Spark2.4.3,Kafka略有升级【从2.1.0升级到2.2…
暂无图片
编程学习 ·

ngrok内网穿透的使用

**有时候项目没有部署到服务器,需要给用户展示效果,就可以用ngrok做内网穿透来解决这个问题** **ngrok的用法:**进入ngrok官网 http://www.ngrok.cc/,注册登录进入 在隧道管理中,进行开通隧道(即购买免费的服务器)3.开通隧道,配置端口ip,进行添加开通。4.开通后,在隧道管…
暂无图片
编程学习 ·

sso单点登录

无状态登录 微服务集群中的每个服务,对外提供的都是Rest风格的接口。而Rest风格的一个最重要的规范就是:服务的无状态性,即:服务端不保存任何客户端请求者信息 客户端的每次请求必须具备自描述信息,通过这些信息识别客户端身份带来的好处是什么呢?客户端请求不依赖服务端…
暂无图片
编程学习 ·

LeetCode 718. 最长重复子数组

1 题目描述LeetCode2 解题思路一道非常简单的基础dp题目,就是用dp[i][j] 表示数组A元素以i结尾, 数组B以j结尾的长度,(即选i和j位置的元素,不是到索引i和索引j为止),那么转移方程是显而易见的:那么代码随便写写就好了class Solution { public:int findLength(vector<…
暂无图片
编程学习 ·

C#中String字符串去空格的问题

1.Trim() 最常见的就是trim,trim是清除字符串前,后的空格. " A BC “被TRIM之后是"A BC” 2.LTrim(),RTrim() 分别是清除字符串前面的空格,和清除字符串后面的空格. L = Left左边 R = Right右边 3.replace() s=s.replace(" “,”") 第三种方…
暂无图片
编程学习 ·

vue中实现一个搜索框的组件

在前端开发中有些东西就会经常反复使用,这样的东西抽取成组件比较合适,最近工作中遇到一个搜索楼盘的页面需要反复多次使用,抽取成了组件,现在记录一下1.创建一个searchcom.vue文件2.文件中填入一下代码,具体内容在代码后边进行解释<template> <div><heade…
暂无图片
编程学习 ·

git学习日志-标签

git也可以像svn一样打标签,以此来标记发布节点,以示重要性。 对标签的操作,一般包括: 1. 列出标签 2. 创建标签 3. 删除标签 4. 检出标签 一、列出标签 执行git tag命令,就可以看到当前仓库中已经打过的标签。注意: 这个命令会以字母顺序列出标签。 也可以加上-l或--list…
暂无图片
编程学习 ·

加速推进新基建,中国联通软件研究院助力广东智造云升级为全国工业平台

加速推进新基建,中国联通软件研究院助力广东智造云升级为全国工业平台发稿时间:2020-07-01 11:260【字体: 大 中 小】6月23日,中国联通智造云全国级工业市场顺利完成上线,6月28日,智造云产品成功在湖北省签约下单,打破了省内地域的限制,实现了省分政企创新业务迈向全国…
暂无图片
编程学习 ·

前端学习-javascript-(1)预览

组成 DOM—Document Object Model 文档对象模型—操作返回到文档(界面) doucument对象 ———————————————— BOM—Browser Object Model 浏览器对象模型—操作浏览器本身 window对象 ———————————————— ECMAScript 解释器 ———————————…
暂无图片
编程学习 ·

python中变量前面加星号*

python中变量e前面加星号,即*elist或tuple前面加星号字典前面加星号 list或tuple前面加星号 列表或元组前面加星号作用是将列表解开成两个独立的参数,传入函数; def add(x,y):return x+y b = [1,4] e = (2,3) add(*e) add(*b) >>> 5 >>> 5字典前面加星号 字…
暂无图片
编程学习 ·

as 找不到调试设备(手机,虚拟机)

在flutter sdk 路径下执行命令flutter config --android-sdk D:\envi\android\android-sdk(你的android sdk路径)我在git bash 中执行之后没反应,应该是git bash环境语法设置有问题,于是改成 flutter config --android-sdk D:\\envi\\android\\android-sdk可以鸟