尤晨欣,吳向東,王雨松,歐運(yùn)起
1(長(zhǎng)安大學(xué) 信息工程學(xué)院,西安 710064)
2(長(zhǎng)安大學(xué) 公路學(xué)院,西安 710064)
近年來(lái),高光譜圖像分類(lèi)在軍事目標(biāo)檢測(cè)和災(zāi)害防控等領(lǐng)域受到越來(lái)越多的關(guān)注[1].與傳統(tǒng)的多光譜遙感圖像相比,高光譜圖像由數(shù)百個(gè)光譜波段組成,有助于更加精細(xì)地實(shí)現(xiàn)地物分類(lèi)和目標(biāo)識(shí)別.高光譜圖像具有較高的空間分辨率,可以識(shí)別各種土地覆蓋類(lèi)型[2].早期的高光譜圖像分類(lèi)方法旨在提升分類(lèi)性能,比如支持向量機(jī)[3]等; 之后,出現(xiàn)一些利用特征提取技術(shù)進(jìn)行高光譜圖像分類(lèi)的方法探索地物表面的空間信息,如基于空間光譜稀疏表示的方法[4]等,通過(guò)建立函數(shù)映射以期分離高維空間中的光譜信息,實(shí)現(xiàn)地物分類(lèi).早期的高光譜圖像分類(lèi)方法中的圖結(jié)構(gòu)均為人工構(gòu)造,無(wú)法捕捉不同類(lèi)之間的細(xì)微差別和同類(lèi)之間的大差別,普適性差且分類(lèi)精度較低.深度學(xué)習(xí)為高光譜圖像的特征提取提供了理想的解決方案[5].
深度學(xué)習(xí)可以從數(shù)據(jù)中自適應(yīng)地提取高光譜圖像的光譜空間特征,具有很好的魯棒性.Chen 等[6]采用卷積神經(jīng)網(wǎng)絡(luò)從高光譜圖像中提取空間光譜特征,獲得了更好的分類(lèi)性能; Qin 等[7]提出利用半監(jiān)督圖卷積網(wǎng)絡(luò)將高光譜圖像編碼成圖結(jié)構(gòu),并根據(jù)相鄰像素的光譜相似性和空間距離在像素之間傳播信息; Wan 等[8]提出上下文感知的動(dòng)態(tài)圖卷積網(wǎng)絡(luò),用于捕獲遠(yuǎn)程上下文關(guān)系,細(xì)化圖邊緣權(quán)值和圖像區(qū)域之間的鄰接關(guān)系; Mou 等[9]提出將整張圖像作為輸入,同時(shí)處理標(biāo)記和未標(biāo)記樣本數(shù)據(jù),對(duì)圖像中的所有像素節(jié)點(diǎn)進(jìn)行分類(lèi)處理; Sellars 等[10]提出一種基于圖論的超像素高光譜圖像分類(lèi)算法,降低了算法復(fù)雜度.此外,通過(guò)多尺度和小批次處理高光譜圖像成為近期研究的熱點(diǎn),建立不同鄰域的多個(gè)輸入圖,利用不同尺度的光譜空間相關(guān)性細(xì)化圖信息[11-13]; Yang 等[14]通過(guò)GraphSAGE 歸納學(xué)習(xí)的方式構(gòu)造圖結(jié)構(gòu),對(duì)于采樣節(jié)點(diǎn)數(shù)不足的情況,采取有放回的節(jié)點(diǎn)采樣方法,可能造成子圖中的局部信息不完整,導(dǎo)致特征模糊,從而使算法的分類(lèi)誤差增大.
為了充分利用圖結(jié)構(gòu)的空間相關(guān)性,本文提出了基于改進(jìn)GraphSAGE 的高光譜圖像分類(lèi)方法.首先采用簡(jiǎn)單線性迭代聚類(lèi)算法(simple linear iterative clustering,SLIC)[15]將高光譜圖像分割為超像素,降低后續(xù)學(xué)習(xí)的圖節(jié)點(diǎn)數(shù); 再通過(guò)改進(jìn)的GraphSAGE 算法生成目標(biāo)節(jié)點(diǎn)的嵌入,利用平均采樣得到訓(xùn)練樣本,選取平均聚合函數(shù)更新多階節(jié)點(diǎn)的信息.通過(guò)提取空間光譜信息來(lái)提高性能,既無(wú)須對(duì)整張圖進(jìn)行節(jié)點(diǎn)嵌入,也最大化保留了局部圖結(jié)構(gòu)的信息,從而提高算法的分類(lèi)精度.
傳統(tǒng)的圖卷積網(wǎng)絡(luò)主要是在單一固定的圖像中進(jìn)行節(jié)點(diǎn)嵌入,無(wú)法為未見(jiàn)節(jié)點(diǎn)或者全新子圖生成快速嵌入.為解決這種問(wèn)題,Hamilton 等[16]提出了GraphSAGE算法,通過(guò)學(xué)習(xí)一個(gè)嵌入函數(shù),利用節(jié)點(diǎn)的局部鄰域取樣和聚合特征,實(shí)現(xiàn)未見(jiàn)數(shù)據(jù)的生成嵌入.其流程如圖1 所示.
圖1 GraphSAGE 算法流程
對(duì)于已知無(wú)向圖G=(V,E),其中,V表示節(jié)點(diǎn)集,E表示邊集.所有的節(jié)點(diǎn)v∈V,需要學(xué)習(xí)K個(gè)函數(shù)來(lái)聚合當(dāng)前節(jié)點(diǎn)的鄰域特征,具體做法如下.
(1)采樣: 通過(guò)隨機(jī)游走的方式獲取目標(biāo)節(jié)點(diǎn),考慮到計(jì)算效率,以有放回采樣的方式抽取目標(biāo)節(jié)點(diǎn)的K階樣本,設(shè)置固定數(shù)量的鄰居,步驟如圖1 所示.K表示目標(biāo)節(jié)點(diǎn)的搜索深度.
(2)聚合: 通過(guò)選取聚合函數(shù)聚合鄰居節(jié)點(diǎn),更新自身節(jié)點(diǎn)信息.本文選取平均聚合的方式對(duì)鄰居節(jié)點(diǎn)進(jìn)行聚合,將目標(biāo)節(jié)點(diǎn)與鄰居節(jié)點(diǎn)的第K-1層向量拼接起來(lái),再對(duì)向量的每個(gè)維度求均值,最終通過(guò)非線性變換產(chǎn)生目標(biāo)節(jié)點(diǎn)的第K層表示向量,具體實(shí)現(xiàn)如下:
其中,N(v)表示節(jié)點(diǎn)v的近鄰點(diǎn),表示節(jié)點(diǎn)v的任意相鄰節(jié)點(diǎn)u在k-1層的嵌入信息,hN(v)表示節(jié)點(diǎn)v在第k層中所有鄰居節(jié)點(diǎn)的特征表示.
通過(guò)聚合后節(jié)點(diǎn)特征用于不同層之間的信息傳播,定義如下:
其中,σ是非線性激活函數(shù),Wk是需要學(xué)習(xí)的權(quán)重表示.
圖卷積網(wǎng)絡(luò)的節(jié)點(diǎn)嵌入需要所有節(jié)點(diǎn)參與訓(xùn)練過(guò)程,而GraphSAGE 算法通過(guò)聚合鄰居節(jié)點(diǎn)的特征信息,為局部圖節(jié)點(diǎn)獲取嵌入向量.新的圖結(jié)構(gòu)的節(jié)點(diǎn)嵌入只需利用學(xué)習(xí)的聚合函數(shù),就能輸出低維向量,進(jìn)行節(jié)點(diǎn)分類(lèi).
本文總體架構(gòu)流程如圖2 所示.對(duì)于給定的高光譜圖像,先對(duì)其進(jìn)行預(yù)處理,采用SLIC 算法將其分割成若干同質(zhì)的超像素; 然后采用改進(jìn)的GraphSAGE 算法對(duì)這些超像素進(jìn)行平均采樣并聚合節(jié)點(diǎn)信息,使同類(lèi)的超像素聚合到一起,再對(duì)輸入圖生成節(jié)點(diǎn)嵌入; 最后將生成的低維向量輸入到全連接層進(jìn)行分類(lèi),再輸出分類(lèi)結(jié)果.
圖2 改進(jìn)GraphSAGE 網(wǎng)絡(luò)架構(gòu)
高光譜圖像通常包含數(shù)十萬(wàn)像素,且某些像素的差別不明顯,在節(jié)點(diǎn)嵌入和分類(lèi)過(guò)程中容易增大計(jì)算復(fù)雜度.為了解決這個(gè)問(wèn)題,采用SLIC 算法實(shí)現(xiàn)超像素分割,實(shí)現(xiàn)過(guò)程如下: 首先將原始圖像數(shù)據(jù)進(jìn)行均值標(biāo)準(zhǔn)差標(biāo)準(zhǔn)化,再將其分割成空間連通且光譜相似性很強(qiáng)的均勻圖像區(qū)域,即超像素; 其次將超像素的中心表示為一個(gè)圖節(jié)點(diǎn),并通過(guò)梯度下降法更新節(jié)點(diǎn)矩陣;最后通過(guò)建立超像素之間的鄰接關(guān)系,將高光譜圖像轉(zhuǎn)換成無(wú)向圖,構(gòu)造超像素圖像的特征以及標(biāo)簽.將高光譜圖像分割為超像素能顯著減少圖節(jié)點(diǎn)的個(gè)數(shù),有助于保存局部結(jié)構(gòu)信息,提高計(jì)算效率.
由于在采集高光譜圖像的過(guò)程中不可避免地會(huì)引入一些噪聲,且其邊緣部分的像素分布不均勻,因而傳統(tǒng)的GraphSAGE 模型采集的樣本具有短缺性和隨機(jī)性.針對(duì)傳統(tǒng)GraphSAGE 算法中圖像邊界采樣節(jié)點(diǎn)數(shù)不足以及有放回的采樣引起特征誤差的問(wèn)題,本文提出平均采樣的GraphSAGE 模型,采樣過(guò)程的具體實(shí)現(xiàn)流程如算法1 所示.
算法1 改進(jìn)GraphSAGE 算法的平均采樣具體思想是: 每一次迭代,對(duì)目標(biāo)節(jié)點(diǎn)v的k階鄰居節(jié)點(diǎn)進(jìn)行采樣,V(k)表示第k層的節(jié)點(diǎn),K表示采樣的層數(shù).對(duì)目標(biāo)節(jié)點(diǎn)采樣時(shí)按照k=K,···,1的順序,以達(dá)到聚合過(guò)程中按照k=1,···,K的順序聚合的目的.若節(jié)點(diǎn)u是V(k)的鄰居,則取為鄰居節(jié)點(diǎn).若階層節(jié)點(diǎn)個(gè)數(shù)達(dá)不到采樣值,取本階層節(jié)點(diǎn)的平均光譜特征作為補(bǔ)充,此過(guò)程可以表示為式(3):
算法1.超像素的鄰居采樣輸入: 圖; ; 搜索深度 ; 平均采樣函數(shù)輸出: 平均采樣鄰居樣本G{V,E}v∈VKN()V(k)←V 1)2)for do k=K,···,1 V(k-1)←V(k)3);u∈V(k)4)for do V(k-1)←V(k-1)∪Mean{N(u)}5)6)end 7)end
結(jié)合本文提出的平均采樣的思想,介紹模型具體實(shí)現(xiàn)流程,如算法2 所示.
算法2 的核心內(nèi)容是: 先根據(jù)平均采樣的方式抽取固定數(shù)量的鄰居節(jié)點(diǎn),然后學(xué)習(xí)聚合函數(shù)對(duì)鄰居節(jié)點(diǎn)的信息進(jìn)行聚合得到信息; 最后獲得圖中每個(gè)節(jié)點(diǎn)的低維向量表示供下游學(xué)習(xí).經(jīng)過(guò)改進(jìn)的GraphSAGE 層得到的低維向量作為全連接層的輸入,經(jīng)過(guò)Softmax 激活函數(shù),預(yù)測(cè)目標(biāo)節(jié)點(diǎn)的標(biāo)簽,從而得到真實(shí)值與分類(lèi)輸出值之間的差異; 最后使用NLL loss 損失函數(shù)進(jìn)行反向傳播.
NLL loss 函數(shù)如式(4)所示:
算法2.平均GraphSAGE 節(jié)點(diǎn)嵌入G(V,E)Wk ?k={1,···,K}σ()N()輸入: 圖; 搜索深度K; 權(quán)重矩陣 ; ; 非線性激活函數(shù) ; 平均聚合函數(shù); 平均采樣函數(shù)zv輸出: 生成向量表示h0v←Xv,?v∈V(0)1)初始化:2)for do k=1,···,K v∈V(k)3)for do 4)hkN(v)←Mean({hk-1 u ,?u∈N(v)})v ,hkN(v)))5)hkv←σ(Wk·CONCAT(hk-1 6)end hkv←hkv/‖hkv‖2 7)zv←hkv,?v∈V 8)9)end
為了驗(yàn)證本文所提網(wǎng)絡(luò)模型的有效性,在公開(kāi)的Pavia University 和Kenndy Space Center 數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),并和其他算法的分類(lèi)結(jié)果進(jìn)行了對(duì)比.
(1)Pavia University 數(shù)據(jù)集,見(jiàn)表1.該數(shù)據(jù)集是意大利帕維亞城的一部分高光譜圖像.圖像具有610×340 個(gè)像素以及115 個(gè)光譜波段,空間分辨率為1.3 m,去除受噪聲和水汽影響因素后剩余103 個(gè)波段,包含9 個(gè)地物類(lèi)別.
表1 Pavia University 數(shù)據(jù)集訓(xùn)練、測(cè)試樣本數(shù)
(2)Kenndy Space Center 數(shù)據(jù)集,見(jiàn)表2.該數(shù)據(jù)集是在美國(guó)肯尼迪航天中心上空獲得的,圖像包含224 個(gè)波段和614×512 個(gè)像素.空間分辨率為18 m,去除水汽和受噪聲影響的波段后剩余176 個(gè)波段,包含13 個(gè)地物類(lèi)別.
表2 Kenndy Space Center 數(shù)據(jù)集訓(xùn)練、測(cè)試樣本數(shù)
本文采用改進(jìn)GraphSAGE 算法對(duì)Pavia University和Kenndy Space Center 兩個(gè)數(shù)據(jù)集進(jìn)行分類(lèi)實(shí)驗(yàn),取數(shù)據(jù)集的10%作為訓(xùn)練樣本,剩余90%作為測(cè)試樣本.模型參數(shù)設(shè)置如下: 學(xué)習(xí)率為0.01,權(quán)重衰減為5E-3,迭代次數(shù)為100,使用Adam 優(yōu)化器.網(wǎng)絡(luò)訓(xùn)練過(guò)程中,設(shè)置采樣層數(shù)K=2,聚合二階鄰居特征,對(duì)一階鄰居抽樣5,二階鄰居抽樣15.
Pavia University 數(shù)據(jù)集分類(lèi)實(shí)驗(yàn)的訓(xùn)練樣本和測(cè)試樣本數(shù)見(jiàn)表1.將標(biāo)準(zhǔn)化后的數(shù)據(jù)作為SLIC 算法的輸入數(shù)據(jù),輸入大小為610×340×103 的圖像.為提高計(jì)算效率,將原始圖像進(jìn)行2 500 次分割,得到1 487 個(gè)超像素.將得到的超像素作為改進(jìn)GraphSAGE 算法的節(jié)點(diǎn),最終特征數(shù)設(shè)置為9,經(jīng)訓(xùn)練后輸出9 個(gè)數(shù)目為1 487 的張量,從而進(jìn)行分類(lèi)
圖3 為不同方法的Pavia University 數(shù)據(jù)集分類(lèi)結(jié)果,基于RDF 的支持向量機(jī)(RDF-SVM)需手動(dòng)設(shè)置專(zhuān)業(yè)的參數(shù)提取特征,可能產(chǎn)生較多的誤分類(lèi); 二維卷積神經(jīng)網(wǎng)絡(luò)(2DCNN)無(wú)法靈活的獲得邊界信息,容易造成特征誤差; 傳統(tǒng)的GCN 只利用像素的光譜特征,無(wú)法表示其內(nèi)在相似性.分類(lèi)結(jié)果表明,本文方法的分類(lèi)結(jié)果和樣本分布圖具有高度一致性,可以很好地區(qū)分不同的地物類(lèi)型,具有較強(qiáng)的空間相關(guān)性.在算法精度方面,表3 Pavia University 數(shù)據(jù)集上各種分類(lèi)方法的分類(lèi)評(píng)價(jià)指標(biāo)表明,在總體分類(lèi)精度(OA)、平均分類(lèi)精度(AA)和Kappa 系數(shù)3 個(gè)精度指標(biāo)上,本文分類(lèi)方法的精度均優(yōu)于其他方法,改良方法的效果十分明顯.
表3 Pavia University 數(shù)據(jù)集分類(lèi)評(píng)價(jià)指標(biāo)對(duì)比 (%)
圖3 Pavia University 數(shù)據(jù)集分類(lèi)結(jié)果
Kenndy Space Center 數(shù)據(jù)集分類(lèi)實(shí)驗(yàn)的訓(xùn)練樣本和測(cè)試樣本數(shù)見(jiàn)表2.訓(xùn)練過(guò)程與Pavia University 數(shù)據(jù)集訓(xùn)練過(guò)程相同,原始圖像分割后得到1 462 個(gè)超像素,最終輸出13 個(gè)數(shù)目為1 462 的張量用于圖像分類(lèi)過(guò)程.
對(duì)比圖4 的樣本分布圖與其他算法分類(lèi)圖,可以發(fā)現(xiàn)部分算法的分類(lèi)結(jié)果存在誤差.將每一張分類(lèi)圖的關(guān)鍵區(qū)域放大,其中,圖4(a)紅色圓圈中的地物類(lèi)別是“Swamp”,圖4(b)中是“Mud flats”,這兩種地物類(lèi)別具有相似的光譜特征.在所有的分類(lèi)圖中,“Swamp”的部分像素被誤分類(lèi)為“Mud flats”,其中,圖4(d)中的誤分類(lèi)區(qū)域最小.結(jié)果表明,和Pavia University 數(shù)據(jù)集分類(lèi)結(jié)果相似,分類(lèi)結(jié)果和實(shí)際分類(lèi)結(jié)果具有很好的一致性,可以很好地區(qū)分不同的地物類(lèi)型.在算法精度方面,表4 中各種分類(lèi)方法的分類(lèi)評(píng)價(jià)指標(biāo)表明,本文分類(lèi)方法的精度遠(yuǎn)高于GCN,略優(yōu)于RDF-SVM 和2DCNN,改良效果明顯.
圖4 Kenndy Space Center 數(shù)據(jù)集分類(lèi)結(jié)果
表4 Kenndy Space Center 數(shù)據(jù)集分類(lèi)評(píng)價(jià)指標(biāo)對(duì)比(%)
在原有GraphSAGE 算法的基礎(chǔ)上引入了SLIC 超像素分割算法,對(duì)Pavia University 和Kenndy Space Center原始圖像進(jìn)行了2 500 次分割,將擁有數(shù)十萬(wàn)像素的高光譜圖像降維成僅有數(shù)千個(gè)超像素的超像素圖像,即用少量的超像素代替大量的原始圖像像素來(lái)降低圖像維度,減少了圖節(jié)點(diǎn)個(gè)數(shù),進(jìn)而降低后續(xù)計(jì)算復(fù)雜度.
此外,對(duì)GraphSAGE 算法的采樣過(guò)程進(jìn)行改進(jìn),引入平均采樣的思想.圖3 與圖4 可以看出,改進(jìn)后的GraphSAGE 算法在Pavia University 和Kenndy Space Center 數(shù)據(jù)集上的分類(lèi)結(jié)果與真實(shí)標(biāo)簽結(jié)果十分相近,誤分類(lèi)區(qū)域較少,尤其是在模型邊界處的分類(lèi)效果較好.分析表明,平均采樣克服了有放回采樣引起特征誤差的問(wèn)題,以階層節(jié)點(diǎn)的平均光譜特征補(bǔ)充采樣值,能解決圖像邊界采樣節(jié)點(diǎn)數(shù)不足的問(wèn)題.由表3 與表4可知,改進(jìn)的算法模型分類(lèi)精度高于其他分類(lèi)方法,在大部分物體上獲得了比較好的分類(lèi)精度值.分析表明,改進(jìn)的GraphSAGE 算法對(duì)各類(lèi)物的識(shí)別具有很強(qiáng)的適用性,模型分類(lèi)結(jié)果和實(shí)際分類(lèi)結(jié)果高度一致,具有較強(qiáng)的空間相關(guān)性,進(jìn)一步驗(yàn)證了本文方法的優(yōu)越性.
為了提高高光譜圖像的分類(lèi)精度,本文提出了一種改進(jìn)GraphSAGE 算法的高光譜圖像分類(lèi)網(wǎng)絡(luò)模型.為減少圖節(jié)點(diǎn)個(gè)數(shù),降低計(jì)算復(fù)雜度,該模型引入了超像素分割算法對(duì)原始圖像進(jìn)行預(yù)處理; 針對(duì)圖像邊界采樣節(jié)點(diǎn)個(gè)數(shù)不足和有放回采樣引起的特征誤差問(wèn)題,通過(guò)平均采樣的方式補(bǔ)充邊界缺少的節(jié)點(diǎn),降低了提取特征的誤差,提高了分類(lèi)準(zhǔn)確度.該模型在Pavia University 和Kenndy Space Center 數(shù)據(jù)集上達(dá)到了較高的分類(lèi)精度,能有效降低計(jì)算復(fù)雜度,提高分類(lèi)效率.通過(guò)一系列對(duì)比實(shí)驗(yàn)評(píng)估本文模型的優(yōu)越性,結(jié)果表明,與RDF-SVM、2DCNN 和GCN 相比,改進(jìn)的GraphSAGE算法彌補(bǔ)了邊界部分采樣節(jié)點(diǎn)不足的缺陷,提高了分類(lèi)準(zhǔn)確度.但本文網(wǎng)絡(luò)對(duì)鄰域大小的確定模式單一,下一步將會(huì)借助注意力機(jī)制自適應(yīng)的學(xué)習(xí)鄰居節(jié)點(diǎn)的個(gè)數(shù),加快網(wǎng)絡(luò)訓(xùn)練速度.