吳文彥
(安徽理工大學 計算機科學與工程學院,安徽 淮南 232001)
遙感圖像場景分類是根據遙感圖像的內容將其分類為一組語義類,由于其在變化檢測、土地利用規劃、智能農業和關鍵目標檢測[1-2]等諸多領域的廣泛應用,吸引了諸多學者的關注。然而,遙感圖像的高維復雜性、光照變化、噪聲干擾以及大尺度的數據量等特點使得遙感場景分類成為一項具有挑戰性的任務。傳統的基于人工設計特征的方法,如顏色直方圖[3]、定向梯度直方圖[4],往往依賴于專家知識和手工提取特征,限制了分類算法的泛化能力和效率,而深度學習的興起為遙感圖像場景分類帶來了新的機遇。汪曉洲等[5]提出基于改進VGG16的場景分類方法,較基準網絡有著顯著的性能提升;章晨等[6]通過對網絡的殘差結構增加跨緯度特征整合,提升了殘差網絡的分類性能。但是上述工作并沒有充分考慮到圖像淺層信息對分類的重要性,并且直接通過神經網絡進行分類,缺乏對重要特征的明確關注,無法區分哪些特征對于分類任務更重要,會導致網絡缺乏對于一些關鍵特征或區域的關注和利用。因此,部分學者嘗試引入注意力機制來提升性能,劉春容等[7]在改進的ResNet50中嵌入SE注意力模塊對通道特征進行校準,進一步提升了網絡性能;李彥甫等[8]在神經網絡中引入多頭自注意力模塊,有效提高了遙感場景圖像分類性能。但是SE注意力機制忽略了位置信息,無法對輸入特征的空間結構進行建模;自注意力機制的復雜度過高,使得模型訓練和推理速度減慢。
基于上述內容,本文將構建的并行下采樣結構和輕量級卷積通道注意力(CCA)機制引入到ResNet50骨干網絡中。其中,并行下采樣結構替換骨干網絡的淺層特征提取層,用于獲取充分的淺層信息;輕量級卷積通道注意力嵌入到骨干網絡后續的中、高層特征提取階段中,在不顯著增加模型參數量的前提下,有效提高了模型的分類準確率。
由于遙感圖像通常具有復雜的場景和細節,深層網絡可以更好地學習到這些復雜特征,從而提高分類性能。而ResNet50具有相對較深的結構,具備更加強大的特征和語義信息的捕獲能力,并且通過跨層連接將輸入直接傳遞到后續層,可以有效地解決深層網絡在訓練過程中的梯度消失和爆炸問題。因此,本文以ResNet50作為骨干網絡構建新的場景分類網絡CCA-PDResNet。模型整體結構如圖1所示,首先使用并行下采樣結構(Parallel downsampling structure,PDS)替換骨干網絡的淺層特征提取階段(即ResNet50的Stage1階段);然后在后續的Stage2到Stage4這3個階段中分別嵌入輕量級的卷積通道注意力(Convolutional channel attention,CCA)模塊,用以增強特征提取能力和顯著特征的關注能力;同時,為了輕量化網絡模型,將ResNet50中各階段中標準3×3卷積用深度卷積(Depthwise Convolution)進行替換;最后,通過全局平均池化將特征圖轉換為一個固定長度的向量,進行最終分類。

圖1 模型總體結構
淺層信息包含原始輸入數據的低級特征和基本模式。這些特征提供了關于數據的基本結構和形狀等信息,對于模型的初始學習至關重要。在圖像處理中,淺層信息包括邊緣、顏色和紋理等低級特征,這些特征在識別目標對象時起著關鍵作用,尤其是在具有高度類內差異性和類間相似性的遙感圖像場景分類任務中。因此,本文提出了并行的下采樣結構,在充分提取淺層信息的同時,能夠減少特征圖的大小,突出顯著目標。相比于普通的下采樣,使用固定大小的池化核對輸入進行降采樣,不僅會造成信息丟失等問題,而且可能無法較好地處理具有不同方向性的特征,如圖2所示。本文提出的并行下采樣結構通過使用非對稱卷積(1x3Conv,3x1Conv)和標準卷積(3x3Conv)并行地提取信息,使得模型可以同時捕捉到局部細節和更寬范圍的上下文信息,提高了特征的多樣性和豐富性;由于CNN網絡非常敏感,只要輸入圖像稍微變動一個像素,或者平移一個像素,其輸出就會發生巨大變化,甚至出現預測錯誤,并且傳統的最大池化進行下采樣時,會造成平移不變性的丟失,因此本文將Blurpool池化[9]替換最大池化進行下采樣,在很大程度上緩解了平移不變性的丟失問題。模塊推理如公式(1) ~(2)所示。

圖2 并行下采樣結構
f(x)=Blur(add(f13(x);f31(x))),
(1)
Output=Concat(f(x);Blur(f33(x))) .
(2)
式中:x為輸入特征圖;Blur表示Blurpool池化;add是逐元素相加操作;f13,f31分別為1x3和3x1非對稱卷積;f33為3x3標準卷積操作,最后通過Concat拼接操作形成高維向量作為最終輸出Output。
對于一個輸入的二維圖像,其中一個維度是圖像的尺度空間,即長度和寬度;另一個維度是通道,因此基于通道的注意力也是一種常見的機制[10]。通道注意力通過動態地調整不同通道的重要性,針對不同的任務增強或抑制不同的通道,以增強模型對特定特征的感知能力。如圖3所示,給定輸入特征F大小為H×W×C,首先對輸入特征圖采用深度卷積(Depthwise Convolution)進行特征編碼,通過在每個通道上獨立地應用卷積核,以此來捕捉輸入特征在不同空間位置的變化,同時增強注意力模塊對輸入特征的建模能力;然后進行全局平均池化和全局最大池化,聚合特征圖的空間信息,得到2個1×1×C通道描述,分別為最大池化特征Fmax和平均池化特征Favg,然后將二者特征逐元素相乘來增強重要特征信息,之后添加了一個多層感知(MLP)分析器來學習最終的通道注意力特征圖Mc(F)。最后,通過S形激活函數獲得權重系數。為了減少參數開銷,隱藏層的大小設置為C/r,其中r是壓縮比,其比率設置為16。卷積通道注意力(CCA)可表示為

圖3 卷積通道注意力(CCA)
M(F)=б(MLP(Multiply[Maxpool(DW(F)
+F);Avgpool(DW(F)+F)]))
=б(Z0(Z1(Multiply[Fmax;Favg]))) .
(3)
式中:Z0∈R(c/r)×c,Z1∈Rc×(c/r),Z0和Z1是MLP的權重;Multiply是逐元素相乘操作;б是Sigmoid激活函數。
RSSCN7數據集[11]包含了2 800幅遙感圖像。這些圖像被分為7個典型的場景類別,分別為草地、森林、農田、停車場、住宅區、工業區和河湖。每個類別中都有400張圖像,每張圖像的像素大小為400×400。由于圖像的來源涵蓋了不同的季節和天氣變化,同時也采用了不同的采樣比例,因此該數據集具備了較高的難度和挑戰性。其部分數據樣本如圖4所示。

圖4 RSSCN7數據集部分樣本
試驗在Python 3.9.12環境下進行,框架采用pytorch,GPU為RTX3060。試驗中優化采用隨機梯度下降(Stochastic Gradient Descent,SGD),其中動量設為0.95,初始學習率0.015,權重衰減為0.001,批量大小設置為16,損失函數為交叉熵損失函數。
試驗中采用RSSCN7數據集作為試驗數據集,在試驗中對數據集進行隨機劃分,其中40%為訓練集,10%為驗證集,50%作為測試集。先用訓練集進行訓練,同時用驗證集評估模型的性能和泛化能力,然后利用測試集測試模型的分類性能。
為驗證本文提出的并行下采樣結構和CCA的優越性,對Resnet50,Resnet+CCA,PDResnet以及CCA-PDResnet進行了驗證試驗。分類準確率以及模型參數量如表1所示。

表1 不同模塊組合效果
由表1可知,本文模型CCA-PDResnet在RSSCN7數據集上取得了最佳的分類性能,其分類準確率達到了91.93%,參數量僅為12.26 M,相比于骨干網絡Resnet50準確率提升了4.43%,參數量減少了10.21 M。并且,從表中可知,將CCA模塊或者并行下采樣結構單獨嵌入Resnet-50中,其分類性能均有所提升,分別提升0.84%、1.85%。說明本文提出的并行下采樣結構和CCA模塊的確能夠充分提取淺層信息并且使得模型更加關注重要特征。
為了進一步驗證本文提出的輕量級卷積通道注意力的有效性,在PDResnet的基礎上,分別嵌入SE、CA、CBAM注意力機制用于對比本文提出的注意力機制,其結果如表2所示。

表2 不同注意力下分類效果
從表2可以觀察到,本文提出的CCA注意力機制在分類任務中表現出較好的性能。與目前主流的一些注意力機制相比,PDResnet+CCA實現了更高的分類準確率。在試驗中,相較于PDResnet+SE、PDResnet+CA和PDResnet+CBAM,PDResnet+CCA分別實現了1.22%、0.68%和0.79%的分類準確率提升。這些結果表明:CCA注意力機制具有顯著的重要區域關注能力,能夠更好地提取和利用重要特征信息,從而提高模型性能。雖然PDResnet+CCA相對于其他注意力機制增加了一些參數(約0.06~0.22 M),但分類準確率的提升仍然顯示出CCA注意力的顯著優勢。這進一步驗證了CCA注意力機制在模型性能改進中的重要性。
為進行模型的敏感分析,對Batch_size的參數設置進行了試驗, batch_size大小是一個重要的超參數,可以影響模型的訓練速度和性能。試驗中設置batch_size分別為8、16、32,試驗結果如表3所示。

表3 batch size敏感度分析
從表3可知,當batch size設為16時,模型取得最優性能。其原因是,在訓練中較小的batch_size使得每次參數更新的梯度估計更加不準確,可能導致模型訓練過程難以收斂;較大的batch_size可能導致模型過于依賴于批量內部的樣本統計特性,而忽略了個別樣本的特征。
為更好展示模型的性能,本文進行了混淆矩陣和Grad-CAM可視化試驗。其中,混淆矩陣(Confusion Matrix)是一種常用的評估分類模型性能的工具。它是一個二維表格,用于展示模型在不同類別上的預測結果與真實標簽之間的關系;而通過Grad-CAM可視化,可以獲得更全面的圖像理解,以此了解網絡對于分類決策的依據,并識別出對于分類結果起關鍵作用的圖像區域。其可視化效果分別如圖5和圖6所示。從圖5可以觀察到,除了bField類別和gParking類別的分類準確率低于90%外,其余的分類精度均超過90%。圖6是以heat map的形式可視化驗證本文提出的模塊關注重要特征的程度大小,從圖中可知,與基線網絡ResNet50在對場景分類相比,本文提出的并行下采樣結構和CCA注意力具有更高的置信度。圖6中最后一列為本文提出的最終模型的可視化效果,可以看出,本文模型能夠獲得復雜背景圖像中表示語義特征的細節,在對一些困難物體進行分類時,能夠準確捕獲到目標區域,并且相比于ResNet50具有更加全面的感興趣區域。

圖6 Grad-CAM可視化
本文基于骨干網絡ResNet50,構建并行下采樣結構和輕量級卷積通道注意力(CCA)機制,提出了CCA-PDResNet網絡來處理遙感圖像場景分類任務。在CCA-PDResNet中,利用并行下采樣結構提取淺層信息,緩解有關地物的基本視覺屬性和局部結構線索丟失;同時利用CCA機制來增強模型對重要區域的感知能力,提高分類性能。通過試驗表明,所提出模型有著良好的分類精度,在 RSSCN7數據集上分類準確率達到91.93%,相比于ResNet50性能提升4.43%,參數量降低10.21 M。但是本文模型復雜度較高,無法適應資源受限的終端設備,因此在后續研究中,將會探索模型輕量化方法,實現模型復雜度和模型精度的平衡。