1.本发明属于图像处理技术领域,具体涉及一种基于多数据集协同分析的高光谱波段选择方法及存储介质。
背景技术:2.高光谱图像被广泛应用于农田检测、城市规划、大气科学和军事侦察等多方面。相较于其他遥感影像,高光谱实现了地物空间信息、辐射信息和光谱信息的同步获取,因此被广泛研究。然而高光谱图像的高维数据在提供丰富的光谱信息的同时也带来了挑战,首先,高光谱图像的相邻谱带之间存在相关性,信息冗余度增加。其次,光谱信息的细节化导致分类上的“休斯现象”。最后,高维的数据具有高时空复杂度,给图像的计算和存储带来了困难。基于上述问题,降低数据维度是高光谱图像处理中的一项重要内容。波段选择是处理高光谱遥感图像的一种直接而有效的降维方法,它在减少高光谱数据的存储和计算成本的同时极大限度地保留了图像原始的空间和光谱信息。
3.高光谱图像类标通常由人工标注或地面测量生成,耗费大量的时间及精力,因此无监督波段选择方法的研究是高光谱图像波段选择的热点问题。无监督波段选择方法包括基于排序、基于逐点式搜索和基于分组式搜索等方法。基于排序的方法通过对每个波段进行重要性评估,直接选取排序靠前的若干波段作为所选波段集,如chang等人提出了一种基于自互信息的波段选择(self-mutual information-based band selection,smi-bs)方法。基于逐点式搜索的方法是通过逐个获取重要波段或逐个移除冗余波段来获得最终所选波段集。如du等人提出的基于线性预测的波段选择(linear-prediction-based band selection,lpbs)方法。基于分组式搜索的方法将波段选择视为一个组合优化问题,通过遗传策略或模拟退火策略等不断的调整波段集,直到满足终止条件,如gao等人提出的基于蚁群优化(ant colony optimization,aco)的波段选择方法。
4.传统的波段选择算法每次只针对一个数据集进行分析,从知识零点开始搜索波段子集,不能有效地从高维高光谱图像中挖掘光谱信息来指导波段选择。然而,同一传感器获取的遥感影像具有相同的光谱范围及相似的光谱-空间结构。
5.因此,如何建立多个数据集之间的关系,有效地共享高光谱图像的光谱信息是一个值得研究的问题。
技术实现要素:6.为了解决现有技术中存在的上述问题,本发明提供了一种基于多数据集协同分析的高光谱波段选择方法及存储介质。本发明要解决的技术问题通过以下技术方案实现:
7.一种基于多数据集协同分析的高光谱波段选择方法,包括:
8.s1、获取k个高光谱数据集,其中,每个所述高光谱数据集对应一个波段选择任务,基于每个所述波段选择任务产生一个包括pop个个体的初始种群;
9.s2、令初始化迭代次数g=1,基于目标函数,计算每个所述初始种群中的每个个体
的适应度值;
10.s3、基于随机数与交叉概率的关系,对当前种群内的父代个体执行交叉或变异操作,得到第一子代个体;
11.s4、基于跨数据集迁移概率,对当前种群之间的父代个体执行交叉操作,得到第二子代个体;
12.s5、分别将所述第一子代个体和所述第二子代个体并入对应的当前种群中,并基于所述目标函数,计算所述第一子代个体和所述第二子代个体的适应度值,以根据适应度值更新当前种群并根据迁移概率函数更新所述跨数据集迁移概率;
13.s6、令迭代次数g=g+1,若g未达到最大迭代次数,重复s3-s6,否则,选择适应度值最高的个体作为当前种群的最优波段进行输出。
14.在本发明的一个实施例中,基于每个所述波段选择任务产生一个包括pop个个体的初始种群,包括:
15.基于每个所述波段选择任务,从原始n维波段中随机选出m个不重复的波段的位置组成波段序列作为所述个体,由pop个所述个体组成所述初始种群。
16.在本发明的一个实施例中,步骤s3包括:
17.比较所述当前种群的随机数与交叉概率的关系,若所述随机数小于或者等于所述交叉概率,则对所述当前种群内的两个父代个体执行交叉操作,以得到所述第一子代个体,若所述随机数大于所述交叉概率,则对所述当前种群内的两个父代个体执行变异操作,以得到所述第一子代个体。
18.在本发明的一个实施例中,对所述当前种群内的两个父代个体执行交叉操作,以得到所述第一子代个体,包括:
19.判断是否有同时存在于所述当前种群内的两个父代个体的波段,若存在,则该波段作为优势基因;
20.在所述当前种群内的两个父代个体上分别随机选取除所述优势基因以外的d个波段;
21.将所述当前种群内的两个父代个体所选取的d个波段进行互换,以得到所述第一子代个体。
22.在本发明的一个实施例中,对所述当前种群内的两个父代个体执行变异操作,以得到所述第一子代个体,包括:
23.判断是否有同时存在于所述当前种群内的两个父代个体的波段,若存在,则该波段作为优势基因;
24.从第二波段序列和所述父代个体的第一波段序列上分别随机选取除所述优势基因以外的d个波段,所述第二波段序列表示在所述高光谱数据集的所有波段中除所述第一波段序列以外的其余波段序列;
25.将从所述第一波段序列中选取的d个波段变异成所述第二波段序列中所选取的d个波段,以得到所述第一子代个体。
26.在本发明的一个实施例中,步骤s4包括:
27.s4.1、根据所述跨数据集迁移概率在所述当前种群和与其进行交流的另一种群中分别挑选出较优的tpop个个体产生跨种群交流的第一种群和第二种群;
28.s4.2、从所述第一种群和所述第二种群中分别选取第一个体和第二个体;
29.s4.3、判断是否有同时存在于所述第一个体和所述第二个体中的波段,若存在,则该波段作为优势基因;
30.s4.4、在所述第一个体和所述第二个体上分别随机选取除所述优势基因以外的d个波段;
31.s4.5、将所述第一个体和所述第二个体所选取的d个波段进行互换,以得到所述第二子代个体。
32.在本发明的一个实施例中,根据适应度值更新当前种群,包括:
33.分别选择并入子代个体后的当前种群中适应度值较大的pop个个体作为所述当前种群的新个体,以更新所述当前种群。
34.在本发明的一个实施例中,所述目标函数为:
[0035][0036][0037][0038]
其中,x表示被选择波段的集合x={x1,x2,
…
,xm},xi表示被选择的第i个波段,m表示被选择的波段总数,h(
·
)表示信息熵,d
kls
(
·
)表示对称kl散度。
[0039]
在本发明的一个实施例中,所述迁移概率函数为:
[0040]
ktp=1-min{rank1,rank2,
…
,rank
t
}/pop
[0041]
其中,{rank1,rank2,
…
,rank
t
}表示生成的跨种群子代的等级,t表示生成的跨种群子代的个体总数,pop表示种群的大小,min{
·
}表示选择最小的数。
[0042]
本发明一个实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所述的方法步骤。
[0043]
本发明的有益效果:
[0044]
本发明构建了一个高光谱多数据集波段选择协同分析框架,利用数据集相同的光谱范围及相似的光谱-空间结构,从而提高每个数据集的波段选择性能。多任务协同波段选择方法旨在促进不同波段选择任务的知识共享,从而促进最佳波段子集搜索过程。数据集之间交互机制的动态调整提高了协作框架的协作能力,提升了各自波段选择任务的效果。
[0045]
本发明设计了优势基因保留交叉和重复消除突变,以保留有希望的波段,避免重复波段的选择。
[0046]
以下将结合附图及实施例对本发明做进一步详细说明。
附图说明
[0047]
图1是本发明实施例提供的一种基于多数据集协同分析的高光谱波段选择方法的流程示意图;
[0048]
图2是本发明实施例提供的一种基于多数据集协同分析的高光谱波段选择方法的过程示意图;
[0049]
图3是本发明实施例提供的一种基于优势基因保留的交叉操作的示意图;
[0050]
图4是本发明实施例提供的一种基于数据去重的变异操作的示意图;
[0051]
图5是本发明实施例提供的一种多个数据集间相互交流的具体过程的示意图;
[0052]
图6是本发明实施例提供的一种更新跨数据集迁移概率ktp的过程的示意图;
[0053]
图7是本发明实施例提供的一种基于洪湖数据的实验测试数据集的示意图;
[0054]
图8是本发明实施例提供的一种基于龙口数据的实验测试数据集的示意图;
[0055]
图9是本发明实施例提供的一种六种波段选择算法加上分类算法在洪湖数据集和龙口数据集分类结果量化指标aa的直方图;
[0056]
图10是本发明实施例提供的一种六种波段选择方法在洪湖数据集上选择波段数与整体精度的折线图;
[0057]
图11是本发明实施例提供的一种六种波段选择方法在龙口数据集上选择波段数与整体精度的折线图;
[0058]
图12是本发明实施例提供的一种在洪湖数据集和龙口数据集上对比基于单数据集非协同进化的波段选择和基于多数据集协同进化的波段选择算法的分类结果图。
具体实施方式
[0059]
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
[0060]
实施例一
[0061]
请参见图1和图2,图1是本发明实施例提供的一种基于多数据集协同分析的高光谱波段选择方法的流程示意图,图2是本发明实施例提供的一种基于多数据集协同分析的高光谱波段选择方法的过程示意图。本实施例提供一种基于多数据集协同分析的高光谱波段选择方法,该高光谱波段选择方法包括步骤s1至s6,其中:
[0062]
s1、获取k个高光谱数据集,其中,每个高光谱数据集对应一个波段选择任务,基于每个波段选择任务产生一个包括pop个个体的初始种群。
[0063]
具体地,给定多个由同一传感器获取的高光谱数据集{d1,d2,
…
,dk},每个高光谱数据集即为一个高光谱图片,建立k个波段选择任务,每个波段选择任务随机产生pop个个体组成初始种群,其中,高光谱数据集dk对应的波段选择任务为tk,对应的种群为pk={p
1_k
,p
2_k
,
…
,p
pop_k
}。
[0064]
在一个具体实施例中,基于每个波段选择任务产生一个包括pop个个体的初始种群,包括:
[0065]
基于每个波段选择任务,从原始n维波段中随机选出m个不重复的波段的位置组成波段序列作为个体,由pop个个体组成初始种群。
[0066]
具体地,高光谱数据集的波段数为n,目标选择波段数为m(m<n)。随机产生的个体是指从原始n维波段中随机选出m个不重复的波段的位置组成波段序列x={x1,x2,
…
,xm}。例如,实数向量[5,10,15]
τ
表示选择第5、10、第15波段。
[0067]
s2、令初始化迭代次数g=1,基于目标函数,计算每个初始种群中的每个个体的适
应度值。
[0068]
在本实施例中,波段选择任务通过多目标优化操作尽可能地平衡了有用信息的保留和冗余信息的去除问题。波段选择任务的目标函数为:
[0069][0070][0071][0072]
其中,x表示被选择波段的集合x={x1,x2,
…
,xm},xi表示被选择的第i个波段,m表示被选择的波段总数,h(
·
)表示信息熵,d
kls
(
·
)表示对称kl散度。信息熵用于衡量被选择波段含有的信息量,信息熵越大,表示被选择波段所含的信息量越大。对称kl散度d
kls
(xi||xj)表示不同波段xi和xj之间的差异性,对称kl散度越大,表示xi和xj之间的差异性越大。当个体所含波段数越多,信息熵就越大,同时也增加了信息冗余度;当个体所含波段数越少,信息冗余度减少,同时信息熵也会变小。在本实施例中,同时最小化这两个目标函数,便可以保证高光谱图像关键信息的保留和冗余信息的去除。
[0073]
s3、基于随机数与交叉概率的关系,对当前种群内的父代个体执行交叉或变异操作,得到第一子代个体。
[0074]
在一个具体实施例中,步骤s3包括:
[0075]
比较当前种群的随机数与交叉概率的关系,若随机数小于或者等于交叉概率,则对当前种群内的两个父代个体执行交叉操作,以得到第一子代个体,若随机数大于交叉概率,则对当前种群内的两个父代个体执行变异操作,以得到第一子代个体。
[0076]
也就是说,取某一种群作为当前种群进行分析,其包含的所有个体{p1,p2,
…
,p
pop
}作为父代个体,随机选取两个父代个体配对,两个父代个体为(pi,pj)(i≠j),当r≤rmp时,两个父代个体执行交叉操作,否则,两个父代两个执行变异操作,其中,r为随机生成的随机数,其范围为r∈(0,1),rmp为交叉概率,如rmp=0.6。父代个体(pi,pj)中表示被选择波段的波段序列为(xi,xj|xi={x
i1
,x
i2
,
…
,x
im
},xj={x
j1
,x
j2
,
…
,x
jm
})。
[0077]
在本实施例中,对当前种群内的两个父代个体执行交叉操作,以得到第一子代个体,包括:
[0078]
判断是否有同时存在于当前种群内的两个父代个体的波段,若存在,则该波段作为优势基因;
[0079]
在当前种群内的两个父代个体上分别随机选取除优势基因以外的d个波段;
[0080]
将当前种群内的两个父代个体所选取的d个波段进行互换,以得到第一子代个体。
[0081]
具体地,当r≤rmp时,父代个体(pi,pj)执行基于优势基因保留的交叉策略,具体分为以下3个步骤:(1)遍历两个父代个体(pi,pj)的波段序列(xi,xj|xi={x
i1
,x
i2
,
…
,x
im
},xj={x
j1
,x
j2
,
…
,x
jm
}),同时存在于波段序列xi和xj的波段为优势基因,则优势基因序列为xc={x
c_1
,x
c_2
,
…
,x
c_l
},l为优势基因的个数。其中,优势基因xc将被保留,不会选为进行交叉操作的基因。(2)在波段序列xi和xj上分别随机选取除优势基因以外的d(0<d<m-l)个基因
作为进行交叉操作的基因。(3)将波段序列xi和xj上所选取的d个基因进行互换,便可以得到两个子代个体(ci,cj)的波段序列,这两个子代个体(ci,cj)便为第一子代个体,如图3所示,图3是一种基于优势基因保留的交叉操作的示意图。
[0082]
在本实施例中,对当前种群内的两个父代个体执行变异操作,以得到第一子代个体,包括:
[0083]
判断是否有同时存在于当前种群内的两个父代个体的波段,若存在,则该波段作为优势基因;
[0084]
从第二波段序列和父代个体的第一波段序列上分别随机选取除优势基因以外的d个波段,所述第二波段序列表示在所述高光谱数据集的所有波段中除所述第一波段序列以外的其余波段序列;
[0085]
将从第一波段序列中选取的d个波段变异成第二波段序列中所选取的d个波段,以得到第一子代个体。
[0086]
具体地,若父代个体执行基于数据去重的变异策略,具体分为以下3个步骤:(1)遍历两个父代个体(pi,pj)的波段序列(xi,xj|xi={x
i1
,x
i2
,
…
,x
im
},xj={x
j1
,x
j2
,
…
,x
jm
}),同时存在于波段序列xi和xj的波段为优势基因,则优势基因序列为xc={x
c_1
,x
c_2
,
…
,x
c_l
},l为优势基因的个数。优势基因xc将被保留,不会选为进行变异操作的基因。(2)对于父代个体pi而言,第二波段序列ωi\ri表示在高光谱数据集的所有波段ωi中除父代个体的第一波段序列ri的其余所有波段的序列,从第一波段序列ri和第二波段序列ωi\ri上分别随机选取除优势基因以外的d(0<d<m-l)个基因作为进行变异操作的基因;(3)将第一波段序列ri所选取的d个基因变异成第二波段序列ωi\ri所选取的d个基因得到第一子代个体ci的波段序列。同理,可得到父代个体pj对应的第一子代个体cj的波段序列。如图4所示,图4是一种基于数据去重的变异操作的示意图。
[0087]
此步骤是为了充分保留波段选择任务中优势波段并且避免重复的波段在同一个个体中出现。
[0088]
s4、基于跨数据集迁移概率,对当前种群之间的父代个体执行交叉操作,得到第二子代个体。
[0089]
其中,协同分析技术是可以利用不同的波段选择任务来探索多个高光谱数据集之间共享的固有光谱特征,克服了传统的波段选择方法一次只分析一个数据集,从知识零点开始搜索波段子集,不能有效地挖掘光谱信息来指导波段选择的问题。其具体公式如下:
[0090]
{x1,x2,
…
,xk}=argmin{t1(x),t2(x),
…
,tk(x)}
[0091]
s.t.xi∈ωi,i=1,2,
…
,k
[0092]
其中,x是统一搜索空间ω中的可行波段选择解,ti表示对应高光谱数据集di的波段选择优化任务。在合作过程中,可以建立一个“知识桥梁”,允许跨数据集的知识交流,从而提高每个数据集的波段选择性能。此外,可同时得到多个高光谱数据集的最优波段选择组合。在本实施例中,初始化各个种群的跨数据集迁移概率{ktp1,ktp2,
…
,ktpk}=0.9。
[0093]
在一个具体实施例中,步骤s4包括:
[0094]
s4.1、根据跨数据集迁移概率在当前种群和与其进行交流的另一种群中分别挑选出较优的tpop个个体产生跨种群交流的第一种群和第二种群;
[0095]
s4.2、从第一种群和所述第二种群中分别选取第一个体和第二个体;
[0096]
s4.3、判断是否有同时存在于第一个体和第二个体中的波段,若存在,则该波段作为优势基因;
[0097]
s4.4、在第一个体和第二个体上分别随机选取除优势基因以外的d个波段;
[0098]
s4.5、将第一个体和第二个体所选取的d个波段进行互换,以得到第二子代个体。
[0099]
也就是说,将种群pk作为当前种群,与种群pk进行交流的种群记为p
l
,ktpk为种群pk对应的跨数据集迁移概率,以种群pk为例做协同分析,具体分为3个步骤:(1)根据跨数据集迁移概率在种群pk和与其进行交流的种群p
l
中分别挑选出最优的tpop个个体组成跨种群交流的第一种群p
′k和第二种群p
′
l
。(2)分别随机从第一种群p
′k和第二种群p
′
l
中选择一个个体作为跨种群交流的个体,从第一种群p
′k中选择的个体记为第一个体p
′
i_k
,从第二种群p
′
l
中选择的个体记为第二个体p
′
j_l
,第一个体p
′
i_k
和第二个体p
′
j_l
的波段序列为(x
′i,x
′j|x
′i={x
′
i_1
,x
′
i_2
,
…
,x
′
i_m
},x
′j={x
′
j_1
,x
′
j_2
,
…
,x
′
j_m
})。(3)遍历第一个体和第二个体的波段序列(x
′i,x
′j|x
′i={x
′
i_1
,x
′
i_2
,
…
,x
′
i_m
},x
′j={x
′
j_1
,x
′
j_2
,
…
,x
′
j_m
}),同时存在于波段序列x
′i和x
′j的波段为优势基因,优势基因的个数记为l。其中,优势基因将被保留,不会选为进行交叉操作的基因。(4)在波段序列x
′i和x
′j上分别随机选取除优势基因以外的d(0<d<m-l)个基因作为进行交叉操作的基因。(5)将波段序列x
′i和x
′j上所选取的d个基因进行互换,便可以得到两个子代个体的波段序列,这两个子代个体作为第二子代个体纳入种群pk中。如图5所示,图5是一种多个数据集间相互交流的具体过程的示意图。
[0100]
其中,用于信息交流的个体需要从最优的tpop个个体中进行选择,tpop的具体公式为:
[0101]
tpop=[(1-ktp)*pop]
[0102]
其中,ktp表示跨数据集迁移概率,pop表示所在种群的种群大小,[
·
]表示取整,[x]表示取比x小的最大整数。
[0103]
s5、分别将第一子代个体和第二子代个体并入对应的当前种群中,并基于目标函数,计算第一子代个体和第二子代个体的适应度值,以根据适应度值更新当前种群并根据迁移概率函数更新跨数据集迁移概率。
[0104]
具体地,将步骤s3所得到的第一子代个体ci和第一子代个体cj均并入种群pk中,将步骤s4所得到的两个第二子代个体纳入作为协同分析的种群中。根据目标函数,计算第一子代个体和第二子代个体的适应度值,将并入子代个体的种群进行排序,以从该并入子代个体后的种群中选取最优的前pop个个体作为新的种群,以完成种群的更新,如图6所示,然后还需根据迁移概率函数更新跨数据集迁移概率。
[0105]
在本实施例中,个体的适应度值评估排序采用带精英策略的非支配排序法。跨数据集迁移概率ktp表示不同种群的个体间信息交流的概率。跨数据集迁移概率ktp随着跨种群交流对种群进化影响的变化而变化。迁移概率函数的具体公式为:
[0106]
ktp=1-min{rank1,rank2,
…
,rank
t
}/pop
[0107]
其中,{rank1,rank2,
…
,rank
t
}表示生成的跨种群子代的等级,t表示生成的跨种群子代的个体总数,pop表示种群的大小,min{
·
}表示选择最小的数。跨种群子代的等级根据新生成的种群的适应度值评估的排序获取,排序越靠前,等级越小。跨种群子代个体pi的适应度值评估排在第n位,则pi的等级ranki=n。
[0108]
s6、令迭代次数g=g+1,若g未达到最大迭代次数,重复s3-s6,否则,选择适应度值
最高的个体作为当前种群的最优波段进行输出。
[0109]
也就是说,令迭代次数g=g+1,如果迭代次数g未达到最大迭代次数,则重复步骤s3-s6,反之,将适应度值评估最好的个体从编码状态解码为真实波段选择组合,作为最适合高光谱数据集的当前波段选择任务的波段进行选择组合。k个初始种群经过迭代优化后,便可以同时得到k个数据集的最优波段子集。
[0110]
为了验证所提方法的有效性,本实施例通过与其他五种波段选择算法—基于最大方差的主成分分析算法(maximum-variance principal components analysis,mvpca)、改进的稀疏子空间聚类算法(improved sparse subspace clustering,issc)、基于层次聚类的waludi算法、基于多目标优化的波段选择算法(multiobjective optimization band selection,mobs)、以及结合基于秩的多目标波段选择算法(incorporated rank-based multiobjective band selection,irmobs)相比较,对比所提算法(em_cbs)与上述五种其他波段选择算法在洪湖数据集和龙口数据集上的检测结果图像和检测量化指标,进一步验证所提算法的实用性。
[0111]
如图7所示,洪湖数据集于2017年11月20日,在中国湖北省洪湖市由具有17毫米焦距的headwall nano-hyperspec成像传感器获取的高光谱数据集。图像大小为940
×
475像素,从400到1000nm有270个波段,从左到右依次为图像立方体和参考图。如图8所示,龙口数据集于2018年7月17日,在中国湖北省龙口镇由具有8毫米焦距的headwall nano-hyperspec成像传感器获得的高光谱数据集。图像大小为550
×
400像素,从400到1000nm有270个波段,从左到右依次为图像立方体和参考图。
[0112]
在本实施例中,所提算法对同一传感器获得的不同高光谱遥感影像数据集进行波段选择,通过对波段选择后的图像分类体现波段选择算法的优劣。为了体现实践的公平性与凸显所提算法的有效性,其它算法均按其相关论文中的最优实验参数设置安排,所有算法采用同一种分类算法对图像分类。
[0113]
实验选择评估算法性能的量化指标为总体分类精度(overall accuracy,oa)、平均分类精度(average accuracy,aa)和kappa系数。具体的:
[0114][0115][0116][0117]
其中,n表示所有的测试样本的数量,c表示类别数,mi表示每一类正确分类的样本数,ni表示每一类的测试样本数量,po表示总体分类精度。
[0118]
oa说明分类结果与参考图的一致性,aa弥补了oa对样本少类别的错分不敏感的问题,kappa系数用于衡量分类精度系数,这三个量化指标的数值越大表征了分类精度越高。表1展示了在洪湖数据集和龙口数据集上所提算法与其它五种算法加上分类算法后的分类结果的量化指标oa和kappa系数的数值。
[0119]
表1
[0120][0121][0122]
从表1可以看出,em_cbs在oa和kappa系数方面获得了最好的数据结果。与mvpca、issc和基于分层聚类的waludi算法相比,基于优化的算法mobs、irmobs和em_cbs取得了更好的分类结果。em_cbs优于mobs和irmobs,主要有两个原因。首先,所提算法em_cbs目标函数同时考虑了包含的关键信息和冗余信息。其次,所提出的协同波段选择框架可以在其他相似图像的帮助下获得额外信息。
[0123]
从图9、图10和图11可以看出,六种方法针对洪湖数据集和龙口数据集的分类结果的对比可以看出,很少有波段不能为原始hsi数据提供理想的表示,在这种情况下,精度比较是没有意义的。因此,图10和图11中oa曲线的后面部分更有说服力。em_cbs的oa曲线在[15,30]范围内具有明显优势。因此,当所选频段的数量有限时,em_cbs是更好的选择。
[0124]
此外,为了进一步证明协同分析对波段选择任务的提升,本实施例做了基于单数据集非协同进化的波段选择和基于多数据集协同进化的波段选择的对比试验。为了检验波段选择的效果,采用对波段选择后的图像进行分类体现波段选择的有效性。
[0125]
如表2和图12所示,其中,图(a)为在洪湖数据集上的参考图、图(b)为基于单数据集非协同进化的波段选择(em_bs)加上分类算法的结果图和图(c)为基于多数据集协同进化的波段选择(em_cbs)加上分类算法的结果图。图(d)为在龙口数据集上的参考图、图(e)为基于单数据集协同进化的波段选择加上分类算法的结果图和图(f)为基于多数据集协同进化的波段选择加上分类算法的结果图,与em_bs相比,协作波段选择em_cbs具有更高的准确度。然而,em_cbs在生成后代时实现了跨任务的知识转移,这会消耗一些额外的时间。
[0126]
表2
[0127][0128]
本发明构建了一个高光谱多数据集波段选择协同分析框架,利用数据集相同的光谱范围及相似的光谱-空间结构,从而提高每个数据集的波段选择性能。多任务协同波段选
择方法旨在促进不同波段选择任务的知识共享,从而促进最佳波段子集搜索过程。数据集之间交互机制的动态调整提高了协作框架的协作能力,提升了各自波段选择任务的效果。
[0129]
本发明设计了优势基因保留交叉和重复消除突变,以保留有希望的条带,避免重复条带的选择。
[0130]
实施例二
[0131]
本发明的又一个实施例提供了一种计算机可读存储介质,其上存储有计算机程序,上述计算机程序被处理器执行时实现以下步骤:
[0132]
s1、获取k个高光谱数据集,其中,每个所述高光谱数据集对应一个波段选择任务,基于每个所述波段选择任务产生一个包括pop个个体的初始种群;
[0133]
s2、令初始化迭代次数g=1,基于目标函数,计算每个所述初始种群中的每个个体的适应度值;
[0134]
s3、基于随机数与交叉概率的关系,对当前种群内的父代个体执行交叉或变异操作,得到第一子代个体;
[0135]
s4、基于跨数据集迁移概率,对当前种群之间的父代个体执行交叉操作,得到第二子代个体;
[0136]
s5、分别将所述第一子代个体和所述第二子代个体并入对应的当前种群中,并基于所述目标函数,计算所述第一子代个体和所述第二子代个体的适应度值,以根据适应度值更新当前种群并根据迁移概率函数更新所述跨数据集迁移概率;
[0137]
s6、令迭代次数g=g+1,若g未达到最大迭代次数,重复s3-s6,否则,选择适应度值最高的个体作为当前种群的最优波段进行输出。
[0138]
本发明实施例提供的计算机可读存储介质,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
[0139]
本领域技术人员应明白,本技术的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式,这里将它们都统称为“模块”或“系统”。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。计算机程序存储/分布在合适的介质中,与其它硬件一起提供或作为硬件的一部分,也可以采用其他分布形式,如通过internet或其它有线或无线电信系统。
[0140]
在本发明的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0141]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者数据点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者数据点可以在任何的一个或多个实施例或示例中以合适的方式结合。此外,本领域的技术人员可以将本说明书中描述的不同实施例或示例进行接合和组合。
[0142]
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。