郭南南
(山東科技大學計算機科學與工程學院,山東青島 266590)
高光譜圖像(Hyperspectral Image,HSI)包含豐富的空間信息與反映地物各種特征的光譜信息,因此高光譜圖像被廣泛用于地質勘探[1]、目標檢測[2]和景觀分類[3]。高光譜圖像分類旨在根據每個像素空間光譜信息自動為其分配特定的語義標簽,這是遙感圖像處理中的重要課題[4]。盡管大量波段提供了地物詳細的空間特征,但是波段之間,尤其是相鄰波段之間通常存在緊密的相關性將導致信息冗余[5]。因此,本文針對該問題,提出一種新的降維算法用于高光譜數據的預處理。
深度學習(Deep Learning,DL)[6]方法可自動學習圖像中的深層特征與高度抽象的語義特征,已被廣泛應用于HSI 分類。基于深度學習的分類方法大體可分為基于光譜信息的分類方法與基于光譜空間信息的分類方法。基于光譜信息的分類方法僅提取HSI 光譜特征,通常包括基于深度信念網絡(DBN)[7]的方法、基于自動編碼器(SAE)[8]的方法與基于1D-CNN[9]等,這些方法往往使用一維特征向量作為輸入,忽略了HSI 空間結構信息。文獻[10]將五層CNN 應用于HSI 分類,并提出1D-CNN 網絡以提取頻譜特征。基于深度學習使用光譜空間特征的分類方法比單獨使用光譜特征的方法獲得的結果更好,例如ResNet[11]、3D-CNN[12]和DenseNet[13]、全卷積神經網絡(FCN)[14]等;文獻[14]提出一種基于FCN 的高光譜分類深度學習框架,使用反卷積網絡增強高光譜特征,提高分類精度;文獻[15]提出混合3D-CNN 與2D-CNN 的網絡,但是網絡包含大量訓練參數,計算復雜。
現有網絡模型通常需大量樣本進行訓練,同時訓練參數較多,需仔細調整超參數以避免過度擬合。因此,本文設計一個用于高光譜圖像分類的輕量級空間注意力網絡(LSANet),在保證高分類精度的同時可減少參數數量與計算時間。LSANet中的空間卷積塊具有輕量且高效的特征提取性能,可以捕獲具有判別性的光譜空間特征。為優化特征提取識別能力,采用注意力機制細化特征圖,增強網絡空間特征表示能力,可提高有限樣本分類性能。
本文提出一種輕量級空間注意力網絡(LSANet)高光譜圖像分類框架,相關流程如圖1 所示。它由3 部分組成:降維、特征提取與分類。首先,利用分割核主成分分析(Segmentation Kernel Principal Component Analysis,SKPCA)對原始高光譜圖像進行降維并獲得有益于分類的光譜空間特征;然后,通過光譜空間卷積塊(Spectral Space Convolution,SSC-block)對降維后的高光譜圖像進行特征提取;最后,引入循環交叉注意力機制(Recurrent Criss-Cross Attention,RCC)抑制不重要的特征,增強可判別的特征。將輸出的特征圖進行全局平均池化,然后饋入全連接(Full Conection,FC)層,并使用Softmax 激活函數進一步預測樣本類別。

Fig.1 Scheme of the proposed classification method based on LSANet圖1 輕量級空間注意力網絡的高光譜圖像分類方法
考慮到高光譜圖像的相鄰波段通常具有很強的相關性并包含冗余信息。因此,設計SKPCA 對高光譜圖像進行降維。首先,將高光譜圖像X的波段劃分為K個相鄰波段子集。第k(k∈{1,2,…,K})個子集Sk為:

X={X1,…,XM}表示包含M 個波段。核主成分分析(Kernel Principal Component Analysis,KPCA)[16]在提高像素光譜可分性和降低光譜維數方面是一種非常有效的算法。因此,將KPCA 應用于每個相鄰子集,如式(2)所示。

n表示主成分數目。然后,將不同波段子集的核主成分進行堆疊,如式(3)所示。

Yi表示降維后高光譜數據。對相鄰波段的每個子集而不是原始高光譜數據執行KPCA,可保留有關光譜差異中更重要的光譜信息。
具有大量訓練參數的網絡可能容易過度擬合。為了解決該問題,設計輕量級光譜空間卷積塊(SSC-block),其靈感來自ShuffleNetV2[17]中的結構。該卷積塊詳細信息如圖2 所示。在SSC-Block 中,先將輸入特征圖在通道維度分左右兩個分支,右分支使用空洞率為3 和6 的空洞卷積[18],卷積核大小1×1(簡稱AConv),在空間中分別接收簡單的短距離特征和復雜的遠距離空間信息特征,同時使用卷積核大小為3×3 的深度可分離卷積[19](簡稱DWConv)減少參數和計算量。在每個卷積層上引入批處理歸一化(BN)[20]和ReLU 激活,使網絡收斂規范化,提高訓練效率,改善了網絡過擬合現象。兩個分支用concat操作進行合并,再經通道混洗操作從而實現更輕便、高效的光譜空間特征提取。在深度學習中,淺層網絡可能無法顯著提高網絡分類效果,深層網絡可以更好地學習判別性特征,提高分類精度,因此在網絡中依次使用3 個SSC-block。
為了使用輕量級計算和內存并加強空間特征,在網絡中引入交叉注意機制(CCA)[21]對特征圖依賴進行建模,主要通過計算目標特征像素點與特征圖中其它所有點之間的相互關系,并利用其對目標像素點特征進行加權,以獲得更加有效的目標特征。在交叉注意力機制中,在給定的局部特征映射H∈RC×W×H上使用兩個1×1 卷積,分別生成兩個特征圖Q和K,其中{Q,K}∈RC'×W×H,C為通道數。在特征映射Q和K上使用密集操作,生成注意映射A∈R(H+W-H)×W×H。親和操作定義為:

其中,di,u∈D是特征圖Qu與Ωi,u,i=[1,…,|Ωu|]的相關性程度,D∈R(H+W-H)×W×H;Qu表示第u個位置特征映射;Ωu是從與位置u在同行或同列的特征圖中提取特征向量的集合。在D 上使用Softmax 獲得注意映射A。在特征圖H 上使用1×1 的卷積,生成生成特征映射V∈RC×W×H。然后,通過聚合操作收集上下文信息。


Fig.2 Spectral-spatial convolution block圖2 光譜空間卷積塊
Indian Pines 圖像中地物分布更加密集,并且一個圖像塊可能包含更多的地物類型。因此實驗使用高光譜遙感數據集Indian Pines。
Indian Pines 數據集中圖像空間分辨率為20m,在高光譜圖像分類之前去除20 個失真波段,剩余200 個波段,光譜范圍為400~2 500nm,大小為145×145 個像素,共包含16種地物。Indian Pines 假彩色圖、地面真值圖和類別圖如圖3(彩圖掃OSID 碼可見)所示。
本文方法利用基于Python 語言的Keras 和TensorFlow深度學習框架實現。實驗以隨機選取的訓練和測試樣本重復20 次結果的均值作為精度,使用小批量隨機梯度下降算法優化網絡。損失函數使用交叉熵損失,在實驗中將學習率設為0.001,批次大小設置為64。實驗中每個類別隨機選取總樣本數的10%作為訓練樣本,剩余樣本用作測試集。本文采用3 個廣泛使用的定量指標評估HSI 分類性能,即總體準確度(OA)、平均精度(AA)和Kappa 系數。

Fig.3 Indian Pines data set圖3 Indian Pines 數據集
為了有效驗證本文提出的高光譜分類方法,將LSANet與當前最流行的深度學習網絡分類方法和傳統機器學習分類方法進行對比,包括SVM[22]方法、1D-CNN 方法、SAE方法、FCNN 方法、3D-CNN 方法。在使用SVM 方法進行高光譜圖像分類時,本文使用徑向基核函數。圖4 展示了不同方法視覺分類效果。如圖4 所示,由于僅利用光譜信息,因此SVM 和1D-CNN 顯示出“椒鹽現象”,不能取得令人滿意的分類性能;SAE 和FCNN 方法可以在分類結果中表現出較好的視覺效果,但導致建筑物附近某些區域被錯誤分類;由于忽略了豐富的結構信息,FCNN 也呈現出嘈雜的分類結果;相比之下,本文LSANet 方法不僅可以在邊界區域實現更為精確的分類,而且分類圖包含較少的噪聲。訓練和測試樣本數量及不同方法分類精度如表1 所示,可以看出,就OA、AA 和Kappa 系數而言,本文LSANet 方法優于其他比較方法。

Fig.4 Indian Pines image classification results obtained by different methods圖4 不同方法的Indian Pines 圖像分類結果

Table 1 Classification accuracies(Indian Pines)of difference method表1 IndianP 圖像的不同方法上各類別精度
本文提出了一種新穎的輕量級空間注意力網絡(LSANet),可用于高光譜圖像分類。網絡中光譜空間卷積塊可捕獲更豐富的光譜空間特征。循環交叉注意力機制增強了有效的空間特征,使網絡更注意地物結構和邊緣,提高了分類性能。在高光譜數據集上進行實驗,結果證明該方法有效。但是,該方法的缺點是注意力機制僅考慮像素級別特征,忽略了通道方向特征,這是為構建更有效的光譜空間注意力機制需解決的問題。