張 伍,陳紅梅
(西南交通大學 信息科學與技術學院,成都 611756)
多光譜或高光譜圖像是20世紀80年代興起的遙感空間技術,通過搭載不同平臺的傳感器,能在連續緊密的光譜波波段上對目標同時成像。高光譜數據是一個圖像立方體,它的前兩個維度代表圖像的空間位置,第三個維度代表圖像的波段,所以它的每一個像元是一條連續的光譜曲線,通過分析光譜曲線的特點,可以得到像素點所代表的地物真值對象。也可以把像元看成一個模式,它的屬性值等于對應波段上的輻射亮度值。高光譜圖像因為含有很大的信息量,使其在多種應用(醫學、農作生產、礦物勘探等)方面具有很大的價值,但因波段之間具有較高的冗余,所以存在存儲空間消耗大、計算時間長、圖像分類時可能存在“HUGHES”問題[1];因而需要對高光譜圖像進行處理,降低它的維度并且同時保留較高的地物分類的能力。
高光譜降維技術分為特征選擇以及特征提取。在特征提取中,經過一系列數學的變換,可將原來的所有波段數據壓縮為新的數據以代替原來的數據集,如主成分分析[2]、獨立成分分析[3]、局部線性嵌入[4]等。基于變換的降維方式,其優點是可以經過若干變換直接將高維數據減少到幾維甚至一維,降維后會縮短數據進一步分析處理時間。缺點是對圖像進行了變換,改變了圖像原有的特性,使一個特征下的值無法還原成為對應的圖像中的值。高光譜波段選擇是指從原始數據集中挑選出一些未經變換過的波段圖像組成高光譜圖像子集,并盡可能反映原始高光譜圖像的特性。高光譜圖像波段選擇不會破壞原本圖像本身的物理屬性,其結果解釋性更強。
根據是否使用地物真值信息,高光譜圖像波段選擇算法又分為無監督波段選擇算法和有監督波段選擇算法。Liu等[5]基于鄰域粗糙集理論進行高光譜波段選擇,并分析了算法的穩定性;Patra等[6]用粗糙集理論計算每個光譜波段的相關性和重要度,定義了一個新的準則用來選擇有效的波段;Guo等[7]根據真實地物真值表與波段圖像間的互信息進行高光譜波段選擇。這些方法進行高光譜波段選擇時,需要依靠地物真值信息表,是有監督波段選擇方法。劉春紅等[8]提出了通過計算高光譜信息含量以及與前后波段相似度之和的比值,進行優先度排序的自適應波段選擇算法。學者們提出的使用相對熵作為衡量波段信息含量的最大信息量方法[9]、基于選取聚類中代表波段的方法[10-11]則屬于無監督波段選擇方法,它們不需要地物真值信息,直接進行波段圖像選取。
本文提出了一種基于核模糊粗糙集理論的有監督高光譜波段選擇算法。它考慮波段像素類分布,定義一種新的度量方式。算法同時考慮波段相似性及波段信息熵選擇波段,直至達到預先設定的波段個數。這種方式產生的波段子集波段間冗余小,且信息含量大。本文算法與相關波段選擇算法進行了比較,具有較好的效果。
經典粗糙集理論是一種分析不精確和不確定信息的數學范式,它能夠在不損失有效信息的情況下獲得數據核心知識,對數據進行約簡,實現數據的分類和預測;然而,在實際應用中,對象屬性值可能是模糊的或者是數值型的,它們間的關系不能如經典粗糙集中通過等價關系進行判斷。因而Dubois和Prade提出了模糊粗糙集理論,推廣了經典粗糙集。
定義1[12]設U是論域,A:U→ [0,1],則稱A是U上的一個模糊集合,A(x)稱為模糊集合A的隸屬函數。對?x∈U,A(x)表示x隸屬于模糊集合A的程度,簡稱為隸屬度。U上全體模糊集合的類稱為U的模糊冪集,用F(U)表示,A∈F(U)意指A是U上的一個模糊集合。
定義2[13]設U,V為兩個論域,當滿足R∈F(U×V)時,則稱R為U到V的一個模糊關系,隸屬度R(u,v)稱為(u,v)∈(U×V)關于R的相關程度。
定義3[12]設U是有限論域,U≠?,且R∈F(U×V),若x,y,z∈U滿足:
自反性:R(x,x)=1;
對稱性:R(x,y)=R(y,x);
min-max傳遞性:min(R(x,y),R(y,z))≤R(x,z);
則稱R是模糊等價關系。
定義4[13]設R為論域U上的一個模糊等價關系,A是U的一個模糊子集,模糊粗糙集的上近似集以及下近似集定義為:

定義5[15]給出一個非空有限論域U,如果一個實值函數k:U×U→R,是對稱且半正定的,稱它為核函數。

4)圓核:

5)球核:

‖x-y‖<δ


其中:


定義7[17]給定決策系統DIS=〈U,C∪D,V,f〉,RG是論域U上的高斯核模糊等價關系。U被決策屬性劃分為{d1,d2,…,dn},那么D對B?C的模糊正域定義如下:
定義8[17]給定決策系統DIS=〈U,C∪D,V,f〉,RG是論域U上的核模糊等價關系。U被決策屬性劃分為{d1,d2,…,dn},那么D對B?C的屬性依賴度定義如下:

本文提出了基于核模糊粗糙集(Fuzzy Rough Set, FRS)的高光譜波段選擇算法。它能在獲得有效地物信息時,確定波段間的相似性。算法采用最大相關性最大重要度的搜索策略對高光譜圖像進行波段選擇,這樣既考慮了波段間相似性又考慮了波段圖像信息含量。
皮爾遜系數是一種常用的相似性度量方式。皮爾遜系數計算波段i與波段j間的相似性公式如下:
(1)

根據去除水汽污染的Indian Pines數據集為例,計算它的波段相似度矩陣,并將其可視化,如圖1所示。

圖1 相關性矩陣Fig. 1 Correlation matrix
在高光譜圖像中,波段值表示場景對不同波長電磁的反射率。從物理角度來看,波長較近的電磁波產生相似的反射率。圖1是由圖像的灰度來畫出來的。根據灰度圖像的亮度特點可以知道,亮度越高相似性越大,亮度越暗相似度越低。從圖1中可以發現對角線區域的亮度一直很高,因此可以說明相鄰近的波段之間相似性較強,但是當有時候能獲得地物真值信息的情況下,皮爾遜系數并不能利用地物真值信息。粗糙集能有效地分析不確定信息,而高光譜圖像相鄰波段之間相似性較強,因此本文引入核模糊粗糙集定義了一種新的高光譜波段圖像間的相似性度量。
設U={x1,x2,…,xn}是高光譜圖像n個像元的集合,B={b1,b2,…,bm}為高光譜數據的m個波段的集合,這些像元以及波段組成了一個表T。T={wij|i=1,2,…,n,j=1,2,…,m},這里wij代表的是xi像元在波段bj下對應輻射亮度值。設D為一個決策屬性集,其包含像元xi∈U的類標簽,B為條件屬性集,因此,根據粗糙集理論,一個高光譜數據集可以用一個決策表T=(U,B∪D)表示。
根據定義8,可以求得波段bj與決策屬性D之間的屬性依賴度,以及波段bi與決策屬性D之間的依賴度,如果它們值大小接近,可以近似說明bi以及bj較為接近,但是這樣有可能不夠細化,因為雖然每個波段下像素的屬性下近似總和一致,但是分布情況有較大差異時,仍然具有較高的相似性。
故采用分別計算波段bi中每個像素與其決策屬性的下近似減去波段bj對應像素的下近似的差值取絕對值,把所有像素對應絕對值求和,代表波段bi以及波段bj之間的廣義距離。定義波段bi以及波段波段bj之間的距離公式如下:
(2)

故本文取式(2)的值的倒數作為相似性度量。
假設高光譜圖像數據集中有L個波段,可以計算出一個L×L的波段相關性矩陣。波段相關性矩陣可以被表示如下:
(3)
這里C表示所有波段之間的相關性,ci, j表示第i個波段以及第j個波段之間的相關性。ci, j值越大,波段i以及波段j之間的相關性越大。
高光譜波段選擇算法旨在選擇出信息量大且冗余小的波段子集。如果只考慮相關性則可能會忽略掉一些信息含量較大的波段。本文提出的核模糊粗糙集波段選擇算法把波段信息含量也納入了考量范圍。
根據香農的信息理論,信息熵被用來衡量不確定信息的信息含量。假設A是一個隨機變量,a是它每一種可能的值。a的分布概率用PA(a)表示。信息熵定義如下:
(4)
一些方法直接使用信息熵作為一個評價標準在波段選擇中。在這些方法中,信息熵被用來衡量各個波段的信息含量,然后根據大小進行排序,之后選擇信息熵大的那些波段,但是這樣會出現冗余的情況,可能兩個波段雖然信息量都很大,但是它們比較類似,對之后的分類精度并沒有很大提高。
圖2顯示了離散化之后計算的數據集Indian Pines中一個波段的信息熵變化曲線。

圖2 Indian Pines波段信息熵Fig. 2 Entropy of Indian Pines band
從圖2中可以看出每一個波段所對應的信息熵即信息含量的大小,相鄰波段之間的信息熵在大多數情況下非常接近。
Zhang等[18]提出的波段相關性分析(Band Correlation Analysis, BCA)算法采用了最大相關性的思路,每次只挑選一個波段。假設準備從全部波段L中選取n個波段,并且已經選擇了m個波段,正準備去選擇第m+1個波段。對于每一個待選擇的波段,當前波段可以分為兩個集合,一個是已經選擇了波段集合ΦS以及剩余未選選擇的波段集合ΦU,它們分別具有m,L-m-1個元素在集合內。波段i的代表能力可以用式(5)計算:
(5)
Su(i)表示波段i與其他剩余未選擇波段之間的平均相似性。它的值越大,它越能代表其他波段。對于波段i的冗余部分用式(6)表達:
(6)
它的值越小,冗余相對應地也越小。
因此,在剩余未選擇波段中,可以把上述兩者結合起來,并根據信息熵選取選擇第m+1個波段。如式(7)所示:
S(i)=(Su(i)-Ss(i))×H(i)
(7)
然后每一次在剩余波段中計算S(i),把值最大的波段添加進來,更新已選擇波段。
FRS算法流程如下所示。
1)
輸入s=?,B={b1,b2,…,bl},目標選擇的波段數n。
2)
根據式(2),計算每個波段與其他波段的相關性。生成相關性矩陣。
3)
重復下述3個步驟直至選擇好預定的波段數。
4)
使用式(7),計算每一個在B中剩余波段的排序值。
5)
選擇bj∈B產生最大值的那個波段。
6)
更新S={s,bj},B={B-bj}。
S即為波段選擇結果。
為了驗證本文提出的FRS波段選擇算法的可行性與有效性,本文下載了Indian Pines數據集。
數據集大概有一半的像素點為無法標記的地物,它的地物真值分布不均勻,從幾十個到兩千余個不等。Indian Pines數據集采用的是機載成像光譜儀AVIRIS于1992年6月于美國印第安納州所拍攝。該圖像大小為145×145像素,其空間分辨率為25 m,光譜分辨率為10 nm,波長范圍0.4~2.5 μm,對應的波段數為220個。目前,國內外高光譜遙感數據的降維以及分類實驗都廣泛采用此數據進行仿真實驗分析。美國普度大學曾針對該地區給出一份實地考察報告。區域主要位于印第安納州的西北方向。該區域內主要被各種蔬菜和天然植被覆蓋,蔬菜主要為玉米、大豆、小麥等,天然植被主要為干草、森林、草地等。除此之外,還有一些是高速公路和鐵路,以及一座無線電發射塔和房屋等人工用地。數據中還有一些無法區分的具體類別的像素點以編號0表示。
此外,移除了20個水汽污染波段以及15個噪聲波段,用剩余的[4-102],[113-147],[166-216]波段進行選擇。數據對應的真實地物情況如圖3所示,16種地物類型及數目由表1所示。

圖3 Indian Pines數據Fig. 3 Indian Pines data

表1 印第安農林數據地物類別 Tab. 1 Culture feature categories of Indian agriculture and forestry data
為了檢測本文算法分類精度的優劣程度,本文算法FRS將與基于歸一化互信息(Normalized Mutual Information, NMI)[7]、基于鄰域粗糙集(Dependency Measure of NRS theory,DMNRS)[5]、最大信息量(Max Information,MI)[9]以及BCA[18]波段選擇算法進行比較。
1)最大信息量高光譜波段選擇算法。
高光譜圖像波段的具體信息含量是很難衡量出來的,可以通過計算高光譜圖像波段之間信息量的差,來間接計算高光譜波段的信息含量。使用相對熵可以衡量波段之間的信息量差。通過計算兩個波段間最小的相對熵,迭代移除對整體高光譜圖像信息含量影響最小的波段,最后留下的即為信息量大的波段子集,即波段選擇的結果。相對熵的公式如下:
(8)
如果相對熵越小,說明兩個波段之間的信息差異越小。
2)基于互信息高光譜波段選擇算法。
通過計算波段圖像與采集獲得的地物真值信息,可以得到兩者之間的統計相關性,因此可以用來評估每個波段對分類的相對效用,但是如果根據互信息大小直接進行選取則會產生波段之間的冗余。通過設置鄰域寬度以及互補閾值的方式,避免將冗余的波段同時添加進波段選擇子集。如果互補閾值過低,在將把目標波段選入的同時,會把鄰接波段全部移除,這樣可以減少冗余。
3)基于鄰域粗糙集高光譜波段選擇算法。
鄰域粗糙集(Neighborhood Rough Set,NRS)是粗糙集理論的一種擴展,在特征選擇中得到了廣泛的應用。NRS具有處理連續型數據的優點。Liu等[5]提出的DMNRS算法鄰域依賴關系來評估波段的重要性。當添加一個新的波段進入已選擇子集時,能通過屬性依賴度的變化情況衡量波段的重要性。變化越大,屬性的重要性也就越大。
4)波段相關性分析波段選擇算法。
BCA算法即基于波段相關性分析的高光譜波段選擇算法。它首先根據皮爾遜系數計算高光譜波段圖像間的相關性。算法隨后計算每個波段與剩余未選擇的全部波段的平均相關性以及已選擇進波段子集的波段的平均相關性,根據兩者關系每次挑選一個當前最佳的波段進入子集。
實驗使用Java語言編寫實現NMI[7]波段選擇算法、MI[9]波段選擇算法、DMNRS[5]波段選擇算法、BCA[18]高光譜波段選擇算法以及本文的FRS波段選擇算法。通過上述算法獲得選取后的波段子集。由于單一的分類器可能不能很好地衡量波段選擇后的子集優劣,本文采用了J48、K最近鄰(K-Nearest Neighbors,KNN)分類器進行分類精度比較。在WEKA默認的十折交叉的方式下,本文分別選擇3~15個波段子集下的分類結果,進行實驗分析。在KNN分類器中,本文設置近鄰數為5。不同近鄰數對分類結果有少量的影響,但是隨著近鄰數增加,計算復雜度也會增加,波段選擇的有效性與近鄰數無關。因而綜合考慮,本文設置近鄰數為5。
1)J48分類結果。
在J48分類器下,本文分析選擇3~15個波段時候的分類精度變化情況。這里本文算法采用機器學習里最常用的高斯核,參數δ設置為0.32。實驗結果如圖4(a)所示。從圖中發現,DMNRS算法在挑選5~10個波段時具有較高的分類精度,但是仍然比不上本文的FRS算法。BCA算法的分類精度略高于NMI算法和MI算法。MI算法在波段個數較少時分類精度比不上同期其他幾個波段選擇算法。本文提出的FRS算法分類精度優于其他波段選擇算法。
2)KNN分類結果。
在KNN分類器下,本文分析選擇3~15個波段時候的分類精度變化情況,同樣采用高斯核,并將參數δ設置為0.32。實驗結果如圖4(b)所示。從圖中可知本文提出的FRS算法一直都有較高的分類精度,且隨著波段個數的增加,FRS算法的分類精度比其他算法有顯著提高。DMNRS算法分類精度有較大波動,在9個波段后分類精度有所降低。MI算法仍然分類精度較低。

圖4 不同波段選擇方法分類精度對比Fig. 4 Comparison of classification accuracy of different band selection methods
3)不同核函數的結果。
本文測試了高斯核函數、指數核函數、二次有理核函數等3種不同的核函數,在參數設置為0.32時,選取的3~15個波段時分類精度變化情況。采用J48和KNN分類器時的實驗結果分別如圖5(a)、圖5(b)所示。
從圖5(a)、5(b)中可見高斯核函數在兩個分類器下從挑選4個波段開始一直具有較高的分類精度。在J48分類器下,高斯核與二次有理核的分類精度大致趨同,比指數核普遍高一些。在KNN分類器下,二次有理核在挑選較多波段時分類精度不及另外兩個核函數的分類精度。

圖5 不同核函數分類精度對比Fig. 5 Comparison of classification accuracy of different kernel functions
不同核函數下FRS算法在包含3~15個波段的情況下的總平均分類精度如表2所示。

表2 不同核函數分類精度 單位:% Tab. 2 Classification accuracy of different kernel functions unit:%
從表2中可見高斯核的分類精度比指數核及二次有理核高。二次有理核在J48分類器下分類精度比指數核高,在KNN分類器下指數核比二次有理核分類精度高。
4)不同高斯核參數的影響。
由于不同的高斯核參數δ在計算波段之間相似性的時候會導致不同的結果,故可能選擇出不同的波段子集。本文測試不同高斯核參數δ下選擇的波段子集,并測試包含3~15個波段的情況下分類器J48和KNN的平均分類精度。這里設置高斯核參數為0.22,0.32,0.45,0.5,0.55,0.60。實驗結果如表3所示。

表3 Indian Pine平均分類精度 單位:% Tab. 3 Average classification accuracy of Indian Pine unit:%
從表3中可以發現,隨著高斯核參數δ的變化,本文提出的FRS算法在J48分類器以及KNN分類器中一直具有較高的分類精度,且平均分類精度變化不大。
由于本文算法要通過核模糊粗糙集的方式計算波段之間的相似性矩陣,故本文算法時間復雜度偏高。設圖像像素數為n,波段個數為f,目標波段數為T,像素量化階數x,類標個數y。本文算法首先計算每個波段圖像的信息熵,時間復雜度為O(f·n)。隨后計算波段圖像間的相似度矩陣。由于需要計算每個像素與最近異類點的距離,求相似度矩陣的時間復雜度為O(f2·n2),搜索部分的時間復雜度為O(T·f2),最后本文提出算法的時間復雜度為O(f2·(n2+T))。DMNRS算法的時間復雜度為O(n2·f·T),BCA算法的時間復雜度為O((T+n)·f2),MI算法的時間復雜度為O((f+n-T)·f2),NMI算法的時間復雜度為O((T+x·y·n)·f)。雖然本文算法分類精度高,但是通過比較上述算法的時間復雜度,本文提出算法的時間復雜度偏高。
本文根據模糊粗糙集理論,通過計算高光譜波段圖像像素類標的下近似分布情況來得到波段圖像間的相似性。隨后在計算波段間相似性時引入信息熵的概念,該方法可以使得最后選出的波段子集中各波段間的冗余度小且各波段的信息含量大。實驗結果表明,本文算法具有較好的效果。盡管本文工作產生了較好的效果,但是仍有一些可以改進的地方。比如目前大多數高光譜波段選擇算法包括本文算法在內需要人工給定選擇的波段個數,未來希望能自動計算出合適的波段數;同時,本文算法采用核模糊粗糙集的方式計算相似度,雖然效果較好,但是時間復雜度略高,如何快速計算是進一步的研究方向。