本發(fā)明屬圖像處理技術(shù)領(lǐng)域,具體涉及一種基于全局最優(yōu)聚類的高光譜圖像波段選擇方法。
背景技術(shù):
高光譜圖像含有豐富的光譜信息,在地物目標(biāo)只具有微小差異時(shí)仍然能夠?qū)ζ溆休^好的識(shí)別效果。然而對(duì)于高光譜圖像,大量的光譜信息常常帶來信息的冗余以及過大的計(jì)算量。波段選擇,作為一種高光譜圖像的降維方法,在近年來得到廣泛的應(yīng)用。文獻(xiàn)“a.
技術(shù)實(shí)現(xiàn)要素:
為了克服現(xiàn)有方法的不足,本發(fā)明提出了一種基于全局最優(yōu)聚類的高光譜圖像波段選擇方法。該方法的主要思想是:使用聚類間差距和聚類內(nèi)差距的比值作為優(yōu)化的目標(biāo)函數(shù),并用二分法和動(dòng)態(tài)規(guī)劃的方法取得全局最優(yōu)解,然后通過最小化波段線性重構(gòu)誤差的方法,在每個(gè)聚類內(nèi)選取具有代表性的波段,降低噪聲波段被選擇的概率。
一種基于全局最優(yōu)聚類的高光譜圖像波段選擇方法,其特征在于包括以下步驟:
步驟1:按照pn=(po-m2)/(m1-m2)對(duì)高光譜圖像進(jìn)行歸一化處理,其中,pn為歸一化處理后圖像的像素值,po為原高光譜圖像的像素值,m1為原高光譜圖像中像素值的最大值,m2為原高光譜圖像中像素值的最小值;
步驟2:以聚類間差距和聚類內(nèi)差距的比值為目標(biāo)函數(shù),使用二分法和動(dòng)態(tài)規(guī)劃方法優(yōu)化該目標(biāo)函數(shù),得到一個(gè)全局最優(yōu)的臨界波段向量,以這些臨界波段為邊界將高光譜圖像劃分為c個(gè)連續(xù)波段的聚類;
其中,聚類內(nèi)差距為
步驟3:對(duì)每個(gè)聚類,選擇一個(gè)與類中心歐式距離最近的一個(gè)波段為該聚類的一個(gè)代表波段,所有代表波段構(gòu)成已選波段集合;所述的類中心是指該聚類內(nèi)所有波段的平均波段;
步驟4:在每個(gè)聚類內(nèi)迭代地對(duì)剩余波段進(jìn)行選擇,直到所選擇波段數(shù)量滿足要求;
所述的迭代地對(duì)剩余波段進(jìn)行選擇的具體過程為:在第k次迭代中,k>0,對(duì)任一個(gè)尚未被選擇的波段向量xi,設(shè)其所在的波段聚類為j,bj,k為第k次迭代中波段聚類j內(nèi)已經(jīng)被選擇的波段向量構(gòu)成的矩陣,
本發(fā)明的有益效果是:首先,利用了高光譜圖像所具有的物理意義,即相鄰波段具有較大的相似性,設(shè)計(jì)了聚類間差距和聚類內(nèi)差距比值的目標(biāo)函數(shù),縮小了聚類算法的解空間,可以得到為全局最優(yōu)的聚類結(jié)果;其次,通過最小化波段線性重構(gòu)誤差的方法,在每個(gè)聚類內(nèi)選取具有代表性的波段,可以降低噪聲波段被選擇的概率,獲得更高的分類精度。
附圖說明
圖1是本發(fā)明的一種基于全局最優(yōu)聚類的高光譜圖像波段選擇方法流程圖
圖2是采用不同方法進(jìn)行高光譜圖像波段選擇后的分類精度結(jié)果圖
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明進(jìn)一步說明,本發(fā)明包括但不僅限于下述實(shí)施例。
如圖1所示,本發(fā)明的一種基于全局最優(yōu)聚類的高光譜圖像波段選擇方法,其實(shí)現(xiàn)步驟如下:
步驟1:歸一化處理,即按照pn=(po-m2)/(m1-m2)對(duì)高光譜圖像進(jìn)行歸一化處理,其中,pn為歸一化處理后圖像的像素值,po為原高光譜圖像的像素值,m1為原高光譜圖像中像素值的最大值,m2為原高光譜圖像中像素值的最小值;
步驟2:根據(jù)高光譜圖像的物理意義,即相鄰波段具有較大的相似性,一個(gè)聚類內(nèi)的波段應(yīng)該連續(xù),據(jù)此,本發(fā)明方法定義一個(gè)待優(yōu)化目標(biāo)函數(shù),以縮小聚類算法的解空間,得到全局最優(yōu)聚類。具體為:
以聚類間差距和聚類內(nèi)差距的比值為目標(biāo)函數(shù),則待優(yōu)化問題為:
其中,
本發(fā)明采用二分法和動(dòng)態(tài)規(guī)劃方法求解待優(yōu)化問題。先構(gòu)造函數(shù)g(λ)如下:
可以證明,該函數(shù)的零點(diǎn)即為原問題的解,并且該函數(shù)為單調(diào)遞減函數(shù),于是可以用二分法來求得最優(yōu)解λ*。
使用動(dòng)態(tài)規(guī)劃的方法求解g(λ):
定義p(i,j)表示將前i個(gè)波段劃分為j個(gè)聚類能得到的dinter(s)-λ·dintra(s)的最大值,即:
那么有如下狀態(tài)轉(zhuǎn)移方程:
其中,
所有的p(i,j)求解完畢后,p(l,c)就是g(λ)的函數(shù)值,l為高光譜圖像波段數(shù),c為待生成的聚類個(gè)數(shù)。在狀態(tài)轉(zhuǎn)移的過程中,以f(i,j)記錄最優(yōu)解對(duì)應(yīng)的波段劃分方案:
根據(jù)f(i,j)的定義可知:f(l,c)=sc-1,f(sc-1,c-1)=sc-2…,f(s2,2)=s1,由此可以計(jì)算得到臨界波段向量s=(s0,s1,…,sc)t。
以臨界波段為邊界將高光譜圖像劃分為c個(gè)連續(xù)波段的聚類。c為大于0的正整數(shù),一般小于最終所要求選擇的波段數(shù)。
步驟3:根據(jù)得到的聚類結(jié)果,在每個(gè)波段聚類中,首先計(jì)算該波段聚類所有波段向量的平均向量,即平均波段,再選擇出該波段聚類中與平均波段的歐式距離最近的波段,加入已選波段集合。
步驟4:迭代地在每個(gè)波段聚類內(nèi)對(duì)尚未被選擇的波段進(jìn)行選擇,其過程如下:
步驟a:在第k次迭代過程中,對(duì)任一個(gè)尚未被選擇的波段向量xi,設(shè)其所在的聚類為編號(hào)為j,設(shè)bj,k為第k次迭代下,聚類j內(nèi)已經(jīng)被選擇的波段向量構(gòu)成的矩陣。設(shè)
步驟b:分別用矩陣bj,k和
步驟c:對(duì)所有尚未選擇的波段i,計(jì)算兩個(gè)重構(gòu)誤差的比值
當(dāng)已選波段數(shù)量達(dá)到算法設(shè)定的數(shù)量時(shí),停止上述迭代過程,完成高光譜圖像波段選擇。
本實(shí)施例是在中央處理器為
圖2為采用不同方法進(jìn)行高光譜圖像波段選擇后,再利用svm(支持向量機(jī))分類器進(jìn)行分類的分類精度結(jié)果圖。其中,cbbs-kl(clusteringbasedbandselection–kl)為基于聚類的波段選擇-kl散度方法,cbbs-mi(clusteringbasedbandselection–mi)為基于聚類的波段選擇-互信息方法,goc(globaloptimalclustering)為全局最優(yōu)聚類方法,即本發(fā)明方法,vgbs(volumegradientbandselection)為體積梯度波段選擇方法,ubs(uniformedbandselection)為等距波段選擇方法,mtsp(multi-tasksparsitypursuit)為多任務(wù)稀疏追蹤方法,totalbands為全波段。
可以看出,大部分情況下,利用本發(fā)明的方法進(jìn)行波段選擇后都比其他方法具有更高的分類精度。