李 飛,盧 湖 川,薄 純 娟
( 1.大連理工大學(xué) 電子信息與電氣工程學(xué)部,遼寧 大連 116024;2.沈陽航空航天大學(xué) 計(jì)算機(jī)學(xué)院,遼寧 沈陽 110136;3.大連民族大學(xué) 機(jī)電工程學(xué)院,遼寧 大連 116600 )
高光譜圖像具有很高的光譜分辨率,包含數(shù)百個(gè)甚至上千個(gè)光譜波段.豐富的光譜信息為精確的目標(biāo)識(shí)別和分類應(yīng)用提供了有利條件[1].然而,其龐大的數(shù)據(jù)也帶來了數(shù)據(jù)傳輸與存儲(chǔ)慢、冗余信息多等一系列問題,而且光譜維數(shù)的增加使傳統(tǒng)圖像處理方法不能完全適用于高光譜圖像數(shù)據(jù).一方面,高光譜圖像中存在大量的冗余信息;另一方面,高光譜圖像的光譜維數(shù)太高,很容易導(dǎo)致維度災(zāi)難問題[2-3].因此,對(duì)高光譜圖像進(jìn)行降維處理是很有必要的.
針對(duì)高光譜圖像的降維方法有兩種:一種是特征提取,利用基于某一準(zhǔn)則的變換矩陣進(jìn)行數(shù)據(jù)變換得到低維光譜數(shù)據(jù);另一種是波段選擇(也稱特征選擇),根據(jù)選擇準(zhǔn)則從原始波段挑選最佳波段子集,以保證光譜物理信息不被破壞.例如,主成分分析(principal component analysis,PCA)、線性判別分析(linear discriminant analysis,LDA)、非參數(shù)加權(quán)特征提取(non-parametric weighted feature extraction,NWFE)等,這些特征提取方法的處理結(jié)果改變了原始波段的物理意義.波段選擇是高光譜圖像在不進(jìn)行特征變換的情況下降低波段維數(shù)的一種有效方法[4].根據(jù)先驗(yàn)條件現(xiàn)有波段選擇方法可以分為兩類:有監(jiān)督波段選擇和無監(jiān)督波段選擇.有監(jiān)督波段選擇方法需要樣本標(biāo)簽的先驗(yàn)信息,因此受到應(yīng)用目標(biāo)的限制[5].例如,Wei等提出了基于粒子群優(yōu)化的有監(jiān)督波段選擇算法[6];Yang等根據(jù)各類別的譜特征,提出了采用序貫前向選擇搜索方法選擇波段[7];Cao等將高光譜圖像的局部空間信息集成到波段選擇算法中[8].與有監(jiān)督波段選擇方法不同,無監(jiān)督波段選擇不需要樣本標(biāo)簽的先驗(yàn)信息,直接對(duì)無標(biāo)簽原始數(shù)據(jù)進(jìn)行波段選擇.雖然在某些特定的應(yīng)用中,有監(jiān)督波段選擇方法獲得的波段比無監(jiān)督波段選擇方法獲得的波段更有效,但是在很多情況下先驗(yàn)知識(shí)不容易獲得,因此無監(jiān)督波段選擇方法比有監(jiān)督波段選擇方法實(shí)用性更強(qiáng),適用范圍更廣.例如,Bajcsy等對(duì)一些無監(jiān)督波段選擇方法進(jìn)行了簡(jiǎn)要描述和實(shí)驗(yàn),包括信息熵、一階和二階譜導(dǎo)數(shù)、比值、相關(guān)性和基于主成分分析的排序算法[5].袁博等將相對(duì)熵矩陣與互信息結(jié)合,定量描述高光譜影像信息分布,進(jìn)行波段選擇[9].Du等提出了基于相似性的波段選擇算法:線性預(yù)測(cè)(linear prediction,LP)和正交子空間投影(orthogonal subspace projection,OSP)[10].Yang等又利用GPU將LP和OSP算法與并行算法相結(jié)合,提高了運(yùn)算效率[11].Sui等提出了一種無監(jiān)督的波段選擇算法,將總體精度和冗余度的約束結(jié)合到波段選擇過程中,設(shè)計(jì)了一個(gè)平衡參數(shù)通過優(yōu)化模型來權(quán)衡總體精度和冗余度[12].曾夢(mèng)等使用深度對(duì)抗子空間聚類實(shí)現(xiàn)了高光譜波段選擇[13].
稀疏表示是對(duì)原始信號(hào)的分解過程,在這個(gè)過程中,將輸入信號(hào)表示為字典的線性近似.在圖像處理領(lǐng)域,稀疏表示已成功應(yīng)用于圖像去噪、圖像復(fù)原、圖像識(shí)別等領(lǐng)域.于偉等利用稀疏表示理論將上下文字典學(xué)習(xí)用于提高圖像超分辨率技術(shù)[14].同樣,在高光譜圖像處理方面,稀疏表示方法也取得了巨大的成功[15].本文在多字典稀疏表示(multi-dictionary sparse representation,MDSR)波段選擇算法[16]基礎(chǔ)上,提出基于上下文多字典稀疏表示(context multi-dictionary sparse representation,CMDSR)波段選擇算法.CMDSR波段選擇算法將圖像的每個(gè)波段看作字典原子,用該字典對(duì)相鄰多個(gè)波段進(jìn)行聯(lián)合稀疏表示求解,可以得到代表輸入樣本原子和相關(guān)權(quán)重的稀疏向量.向量中的非零元素可以看成是這些波段在整個(gè)圖像中所占權(quán)重,最后利用累計(jì)權(quán)重求出每個(gè)波段圖像對(duì)于整個(gè)高光譜圖像的貢獻(xiàn)度,優(yōu)先選擇貢獻(xiàn)度大的波段.為了評(píng)價(jià)該算法的性能,將該算法同幾種無監(jiān)督波段選擇算法進(jìn)行比較.采用一組藻類水體的高光譜曲線數(shù)據(jù)和一幅公開高光譜圖像數(shù)據(jù)集做實(shí)驗(yàn).
波段選擇的主要目的是找到一個(gè)最優(yōu)或次優(yōu)的波段子集,來代替原始高光譜圖像信息.換句話說,這個(gè)波段子集在某些度量標(biāo)準(zhǔn)下能夠近似表示原始數(shù)據(jù).因此,應(yīng)該找出每個(gè)波段對(duì)整個(gè)圖像的貢獻(xiàn),根據(jù)貢獻(xiàn)大小選擇合適波段.稀疏表示可以用來計(jì)算波段對(duì)整個(gè)圖像的貢獻(xiàn).當(dāng)一個(gè)波段圖像由其他波段圖像組成的字典來近似線性組合時(shí),所求出的稀疏系數(shù)可以表示每個(gè)字典原子對(duì)目標(biāo)波段圖像的貢獻(xiàn).如果系數(shù)絕對(duì)值較大,則該波段原子對(duì)目標(biāo)波段的貢獻(xiàn)較大;如果系數(shù)絕對(duì)值較小,則該波段原子對(duì)目標(biāo)波段的貢獻(xiàn)較?。ㄟ^相應(yīng)的字典計(jì)算每個(gè)波段的稀疏表示,得到一系列權(quán)重.通過統(tǒng)計(jì)權(quán)重可以得到各波段對(duì)整個(gè)圖像的貢獻(xiàn).因此,權(quán)重較大的波段就是最后選定的波段.
yi≈Diαi
(1)
這里字典矩陣Di包含除yi以外的其他波段,αi是線性組合的系數(shù).這個(gè)公式也可以轉(zhuǎn)換成如下形式:
yi=Diαi+βi
(2)
其中βi是誤差項(xiàng).如果αi是稀疏的,那么可以計(jì)算出αi的值.可以將其看成是Di中每個(gè)原子對(duì)波段yi的貢獻(xiàn)情況,系數(shù)越大,該原子對(duì)這個(gè)波段的貢獻(xiàn)越大,反之亦然.稀疏系數(shù)αi可以通過求解下面的約束優(yōu)化問題得到:
(3)
(4)
(5)
其中K0是給定稀疏度的上界.可以用貪婪追蹤算法近似求解,例如,匹配追蹤(matching pursuit,MP)算法、正交匹配追蹤(orthogonal matching pursuit,OMP)算法、子空間追蹤(subspace pursuit,SP)算法.這里采用OMP算法求解[17].MP算法的基本思想是:通過從字典矩陣中選擇與信號(hào)匹配的原子來構(gòu)造稀疏近似.通過推導(dǎo)信號(hào)的殘差,選擇與殘差匹配最佳的原子.重復(fù)上述過程,直到殘差可以忽略或達(dá)到預(yù)先定義的迭代次數(shù).OMP算法在MP算法基礎(chǔ)上做了改進(jìn),要求在分解每一步選擇的所有原子都是正交的.在相同的準(zhǔn)確度條件下,OMP算法的收斂速度比MP算法快.
每個(gè)波段圖像由相應(yīng)的字典表示之后,得到一個(gè)稀疏系數(shù)矩陣.在該矩陣中,大多數(shù)系數(shù)都為零.系數(shù)的絕對(duì)值越大,對(duì)應(yīng)的字典原子對(duì)原始高光譜圖像貢獻(xiàn)越大.對(duì)整個(gè)系數(shù)矩陣,按行計(jì)算不為零的系數(shù)個(gè)數(shù),得到一個(gè)橫坐標(biāo)為波段標(biāo)號(hào)的直方圖.如果用hi表示直方圖,那么計(jì)算公式如下:
(6)
當(dāng)x=0時(shí),g(x)=0,其他情況下g(x)=1.在直方圖中,對(duì)系列進(jìn)行排序,最后選系列值較大的波段.下面給出具體的算法步驟.
步驟1將高光譜圖像拉伸成二維矩陣.
步驟5用式(6)統(tǒng)計(jì)非零元素系數(shù)個(gè)數(shù).
高光譜圖像中,相鄰元素的光譜具有很高的相似性[18],同理,相鄰波段通常也具有相似的空間信息,因此在上文提出的稀疏表示模型中,應(yīng)該考慮上下文波段信息,整體流程如圖1所示.對(duì)于給定的字典,小范圍內(nèi)鄰域波段的稀疏性相似,是相同公共原子的稀疏線性組合,只是對(duì)應(yīng)的稀疏系數(shù)不同.例如yi和yj是兩個(gè)相鄰的波段圖像,那么yi對(duì)字典的稀疏表示為
yi=Dαi=αi,λ1dλ1+αi,λ2dλ2+…+αi,λkdλk
(7)
這里下標(biāo)集Λk={λ1,λ2,…,λk}對(duì)應(yīng)字典原子的下標(biāo).yj與yi相鄰,那么支撐yj的原子集與支撐yi的原子集相同,可用{dv}v∈Λk表示,但是對(duì)應(yīng)的系數(shù)集{αj,v}v∈Λk不同,即:
yj=Dαj=αj,λ1dλ1+αj,λ2dλ2+…+αj,λkdλk
(8)
由此可以擴(kuò)展到一個(gè)包含多個(gè)相鄰波段的鄰域情況,例如,Y=(y1y2…yN)表示一個(gè)B×N的矩陣,列向量{yn}n=1,2,…,N是其中的一個(gè)波段,可以用聯(lián)合稀疏表示:
Y=(y1y2…yN)=
(Dα1Dα2…DαN)=
D(α1α2…αN)=DS
(9)
這里S=(α1α2…αN),它是一個(gè)行稀疏矩陣,在給定字典D的情況下,可以通過解決下面的聯(lián)合稀疏問題求解:
(10)
圖1 本文提出的波段選擇算法總體流程圖
上面的公式也可以改寫成
(11)
步驟1將高光譜圖像拉伸成二維矩陣.
步驟5用式(6)統(tǒng)計(jì)非零元素系數(shù)個(gè)數(shù).
在實(shí)驗(yàn)中,將本文算法與4種波段選擇算法做比較,分別是MDSR算法、LP算法、OSP算法和Cluster(基于聚類的波段選擇)算法.
本實(shí)驗(yàn)采用兩組數(shù)據(jù)集,第1組是藻類水體高光譜數(shù)據(jù),來自中國(guó)海洋監(jiān)控中心遙感實(shí)驗(yàn)室.它是4類藻種水體在不同葉綠素濃度下的光譜反射率曲線,包括甲藻、叉角藻、夜光藻和異彎藻.光譜值包含240個(gè)波段,波長(zhǎng)覆蓋范圍為400~1 000 nm.第2組數(shù)據(jù)ROSIS高光譜圖像PaviaU 采集自意大利北部的帕維亞大學(xué)校園,共有103個(gè)波段,610×340個(gè)像元,包含9類地物.
MDSR和CMDSR兩個(gè)算法中,創(chuàng)建的字典要保證過完備性,但是高光譜圖像拉伸成二維矩陣后,維數(shù)過大,因此要減少字典的原子維數(shù).在文獻(xiàn)[16]和本文中均采用隨機(jī)選取N個(gè)像元的方法,文獻(xiàn)[16]驗(yàn)證了N值的變化不會(huì)影響波段選擇的結(jié)果和性能.圖2展示MDSR和CMDSR算法對(duì)兩組數(shù)據(jù)集的波段選擇結(jié)果.橫坐標(biāo)為波段序號(hào),縱坐標(biāo)是波段權(quán)重.權(quán)重值越大,說明該波段對(duì)整個(gè)數(shù)據(jù)的貢獻(xiàn)越多.CMDSR算法的處理結(jié)果與MDSR算法的處理結(jié)果基本一致,但是在時(shí)間效率上考慮,CMDSR算法效果更好.
為了分析波段選擇算法的性能,從分類精度、波段相關(guān)性和算法運(yùn)行時(shí)間3個(gè)方面與其他波段選擇算法進(jìn)行比較和分析.
(1)分類精度
采用KNN方法對(duì)波段選擇后的藻類水體數(shù)據(jù)和PaviaU數(shù)據(jù)進(jìn)行分類.在藻類水體高光譜分類實(shí)驗(yàn)中,每類選3個(gè)樣本;在PaviaU高光譜圖像分類實(shí)驗(yàn)中,每類選20個(gè)樣本.波段數(shù)量從1到50.在MDSR和CMDSR方法的實(shí)現(xiàn)過程中,稀疏度設(shè)置為6.在KNN方法實(shí)現(xiàn)過程中,最近鄰值分別設(shè)置為4和6.為了減少隨機(jī)性,每個(gè)結(jié)果都經(jīng)過10次運(yùn)行后求得平均值.圖3表示了兩組數(shù)據(jù)的整體分類精度.橫坐標(biāo)為波段數(shù)量B,縱坐標(biāo)為總體分類精度p.由于藻類水體數(shù)據(jù)每類樣本數(shù)量較少,精度變化差異較大,在波段數(shù)量超過30之后,MDSR和CMDSR表現(xiàn)了較好的效果.在PaviaU數(shù)據(jù)上,各個(gè)算法所得分類精度相差不多,都比較平穩(wěn),但整體來說MDSR和CMDSR算法優(yōu)于其他算法,而基于聚類的算法稍顯落后.
(2)相關(guān)系數(shù)
為了衡量所選波段的可分性,計(jì)算了不同算法所選波段的相關(guān)系數(shù).一般來說,所選波段之間的相關(guān)性越低越好.圖4顯示了波段之間的相關(guān)性隨波段數(shù)目的變化情況.橫坐標(biāo)為波段數(shù)量,縱坐標(biāo)為波段間相關(guān)系數(shù)c.除了OSP算法外,其他幾種算法的波段選擇結(jié)果都顯示了比較低的相關(guān)性,尤其在波段數(shù)量比較少時(shí),CMDSR算法體現(xiàn)了很好的性能.
(3)運(yùn)行時(shí)間
為了評(píng)估該算法的效率,計(jì)算了每種算法的運(yùn)行時(shí)間.所有比較的算法都在Matlab 2016中實(shí)現(xiàn),并在8 GB內(nèi)存,Intel Core i5-2400 CPU的運(yùn)行環(huán)境下進(jìn)行測(cè)試.圖5顯示了不同波段選擇算法在波段數(shù)目不同時(shí)的運(yùn)行時(shí)間.橫坐標(biāo)為波段數(shù)量,縱坐標(biāo)為算法運(yùn)行時(shí)間.結(jié)果表明,基于聚類的算法耗時(shí)最少.雖然本文算法不是最快的,但是它與大多數(shù)算法比較,效率比較高,更重要的是,本文提出的算法幾乎不受波段數(shù)量的影響,而LP和OSP算法隨著波段數(shù)量的增加運(yùn)行耗時(shí)越來越長(zhǎng).由于CMDSR算法計(jì)算的迭代次數(shù)明顯比MDSR算法少,因此在運(yùn)行時(shí)間上更有優(yōu)勢(shì).
本文提出的高光譜圖像波段選擇算法,很好地保留了原始圖像某些波段的物理信息.與目前流行的幾種波段選擇算法比較,在分類精度上可以達(dá)到或超過其他同類算法,在相關(guān)性和運(yùn)行時(shí)間上表現(xiàn)出更大的優(yōu)勢(shì).本文不但在公開數(shù)據(jù)集上,而且在一組藻類水體高光譜數(shù)據(jù)集上驗(yàn)證了所提算法的可行性.