邊小勇,費雄君,穆 楠
(1. 武漢科技大學計算機科學與技術學院,武漢430065; 2. 武漢科技大學大數據科學與工程研究院,武漢430065;3. 智能信息處理與實時工業系統湖北省重點實驗室(武漢科技大學),武漢430065)
(*通信作者電子郵箱xyongwh04@163.com)
近年來,隨著遙感圖像場景數據不斷涌現,遙感圖像場景分類獲得了廣泛的關注。與此同時,受平移、視點、空間分辨率、旋轉、姿態、背景、多時相等多種變化的影響,類內呈現大的多樣性和類間具有高的相似性[1],特別是新一代高分辨率遙感圖像同一地物內像素光譜測度的一致性減弱,而不同地物間像素光譜測度的一致性增強,使得遙感圖像場景分類問題依然面臨嚴重挑戰。此外,圖像場景分類對于對象檢測、圖像匹配和檢索、機器人避障等任務將發揮重要作用,因此,遙感圖像場景分類具有重要的理論研究意義和應用前景。
近二十年來,遙感圖像場景分類主要利用傳統手工特征和特征編碼方法[2]。手工特征方法有局部二值模式(Local Binary Pattern,LBP)、方向梯度直方圖(Histogram of Oriented Gradients,HOG)、尺度不變特征變換(Scale-Invariant Feature Transform,SIFT)等。特征編碼方法有視覺詞袋法(Bag-Of-Visual-Words,BOVW)[3]、局部聚合向量描述符(Vector of Locally Aggregated Descriptors,VLAD)[4]、FV(Fisher Vector)等[5]。以上方法提取的都是圖像的低中層特征,雖然這些特征具有旋轉不變性、對噪聲容忍度高等特點,但這些方法存在繁瑣的參數調整且人工經驗使得模型是次優的。為了更好地利用這些特征,出現了基于以上方法的若干改進做法。其中,Bian 等[6] 提 出 了 salM3LBP (saliency-based Multiscale Multiresolution Multistructure Local Binary Pattern)特征和CLM(CodebookLess Model)特征融合的高分辨率圖像場景分類方法,在AID(Aerial Image Dataset)數據集上的分類準確率達到89.76%。Huang 等[7]將深度學習與特征編碼方法相結合,提出了基于改進的LBP 方法、預訓練卷積神經網絡特征提取器和FV 編碼的高分辨率圖像場景分類方法。以上方法在特征提取和特征區分性等方面仍有一定的局限性,模型的分類準確率和泛化能力仍然有很大的提升空間。
最近,深度學習方法在計算機視覺領域發展迅速,出現了一些經典的卷積神經網絡(Convolutional Neural Network,CNN)模型[8-10]以及基于CNN 改進的網絡模型,這些模型與傳統手工特征和特征編碼方法相比,具有更強的特征提取能力和模型泛化能力。其中,He等[11]針對層數過深的CNN模型難以訓練的問題提出ResNet(Residual Network),在ImageNet 數據集上取得了更好的分類結果。Zhou 等[12]針對圖像的旋轉問 題 提 出ARFs(Active Rotating Filters)和ORN(Oriented Response Network),在手寫數字圖像上取得了不錯的分類結果。Luan 等[13]針對圖像的旋轉和尺度問題提出GoFs(Gabor Orientation Filters)和GCN(Gabor Convolutional Network),在手寫數字圖像和ImageNet數據集上的實驗結果表明該方法的有效性。Woo等[14]基于注意力機制提出通道注意力模塊和空間注意力模塊,并將其嵌入到CNN 的不同層中,在ImageNet 數據集上驗證了該方法的有效性。
這些方法在以上數據集中均取得了不錯的分類效果,但沒有用于遙感圖像場景分類。隨著大規模遙感圖像場景數據集[15-16]的出現,許多學者將已有模型根據遙感圖像場景數據集的特點進行相應的改進,以此得到更高的分類準確率。此外,深度學習方法在遙感圖像場景分類領域也取得了不少進展。其中,許夙暉等[17]利用CNN 提取圖像的多尺度特征,并使用多核支持向量機實現遙感圖像場景分類。Wang 等[18]基于ORN 提出IORN(Improved ORN)模型,用于遙感圖像場景分類,能夠提取到具有一定旋轉不變性的特征。Chen 等[19]受到空間變換網絡[20]的啟發,提出循環變換網絡(Recurrent Transformer Network,RTN),能夠基于潛在關系學習到區域特征表示,發掘平移不變區域,提取圖像的關鍵信息,用于遙感圖 像 場 景 分 類。Wang 等[21]提 出ArcNet(Attention recurrent convolutional Network)模型,利用長短期記憶(Long Short-Term Memory,LSTM)網絡生成循環注意力圖,并用注意力圖與CNN 高層特征加權的方法對遙感圖像場景數據集進行分類,在AID 數據集上的分類準確率相比salM3LBP-CLM 方法提高了3.34 個百分點。以上方法雖然在遙感圖像場景分類取得了不俗的分類效果,但是,這些方法在提取特征時平等對待每個像素,模型的特征區分能力仍顯不足。
本文在以前工作[22-23]的基礎上,受Wang等[24]在圖像匹配任務上所做工作的啟發,提出了一種基于注意力機制和多尺度特征變換的尺度注意力網絡模型,并將其應用于遙感圖像場景分類。不同于RTN 中利用圖像的空間域信息,對圖像作相應的空間變換,提取關鍵信息的方法,本文在殘差網絡的卷積層后嵌入注意力圖來加權CNN 特征圖,增強主要特征,抑制次要特征,從而提取特征圖中的關鍵信息。主要工作如下:1)提出了一種基于最優特征選擇的注意力圖生成方法,簡單、快速而有效;2)嵌入注意力圖加權圖像低中高層特征的變換,緩解了遙感圖像場景存在多個小對象和背景復雜的分類問題;3)基于ResNet50 網絡結構和多尺度特征變換構建了尺度注意力網絡。
本文提出了一種基于注意力機制和多尺度特征變換的尺度注意力網絡模型。首先研究了基于超像素擴展的注意力圖生成方法,然后將不同尺度注意力圖嵌入基于ResNet50 的殘差網絡依次進行學習,最后提取深度注意力特征進行分類。其中,注意力模型能夠捕獲場景中主要對象的顯著性信息,而嵌入注意力圖的殘差網絡有助于提取場景主要對象的特征信息。圖1 說明了本文方法的原理,(a)為注意力圖加權后的4個位置的卷積特征圖,(b)是相應位置沒有注意力加權的卷積特征圖,所示圖像均為特征圖的第一個通道。從卷積層2_x輸出特征圖(圖1 第1 列)和卷積層5_x輸出特征圖(圖1 第4列)對比中可以看出,嵌入注意力圖層層加權特征圖的方法,能夠突出對象信息,增加特征可區分性,因此所提方法具有更好的特征提取能力。基于以上分析,本文提出的方法總體框架如圖2所示。

圖1 特征加權前后對比Fig.1 Feature comparison before and after weighting

圖2 總體框架Fig.2 Overall framework
本文提出的注意力圖生成過程如圖3 所示,包括超像素分割、注意力特征提取及篩選、初始注意力圖生成以及注意力圖優化。超像素分割是將輸入圖像細分為多個子區域的過程,該方法使用SLIC(Simple Linear Iterative Clustering)算法[25]對圖像進行超像素分割,能夠保留對象結構信息并利用原始圖像的中層信息,分割后的超像素可以表示為{si}(i=1,2,…,N)。在獲得超像素后,從中提取包括顏色特征、紋理特征、方向特征和梯度特征在內的12 個低層特征,并計算這些特征的一維熵,選擇一維熵值較大的9 個最優特征,表示為{Fm}(m= 1,2,…,9),一維熵計算公式:

其中PI表示特征中灰度值為I的像素比例。得到最優特征后,計算超像素的顯著性分數,生成初始注意力圖S0,顯著性分數Sal(si)根據全局區域對比度和空間關系計算,即:

其中,c(si)由以下公式計算:

式(2)、(3)、(4)中:Fm(si)表示超像素si對應的第m個 特 征;c(si)為 超 像 素 的 坐 標(xi,yi)與 圖 像 中 心 坐 標(x′,y′)之 間 的 距 離;vx、vy是 由 圖 像 的 水 平 和 垂 直 信 息 決定的變量;[l a b]表示CIELAB 顏色空間像素的3 個顏色分量;(xi,yi)、(xj,yj)分別表示超像素si、sj的空間坐標;Z為相鄰超像素的空間距離;β為常數,取值范圍[1,40];dis(si,sj)表示超像素之間的顏色-空間加權距離。

圖3 注意力圖生成Fig.3 Attention map generation
由于初始注意力圖還不足以有效地區分圖像的對象和背景區域,需要對初始注意力圖進行優化。本方法使用最大類間方差法,根據設定的閾值將S0分割為顯著和非顯著區域,即圖像的前景種子(Foreground Seed,FS)和背景種子(Background Seed,BS),并重新計算超像素的顯著性分數Sal′(si),計算公式為:

其中:SalFS(·)和SalBS(·)分別表示FS 和BS 的顯著性分數,計算后得到新的注意力圖Sc,c=1。接下來,重新使用最大類間方差法獲取Sc的前景種子和背景種子,并通過式(5)計算下一次迭代后的注意力圖Sc+1。在迭代計算過程中,本方法定義了以下損失函數L(c)來確定迭代是否達到終止條件,即:

其中Sc表示第c次迭代后的注意力圖。
通過以上方法生成的注意力圖在尺度變換后可以直接嵌入到CNN中,與不同層的特征進行加權(如圖4所示);與通過嵌入CNN 的并行模塊和通過空間變換突出圖像主要信息的注意力機制相比,網絡結構修改小,不需要額外的計算和訓練,同時不增加網絡模型的參數個數,具有快速和有效的特點。

圖4 尺度注意力網絡結構Fig.4 Scale-attention network structure
本文提出的尺度注意力網絡以ResNet50 為基礎設計,增加了多尺度圖像、注意力圖和多尺度特征融合層,并重新設計了全連接層,如圖4 所示,虛線框標出的為本文方法改進部分。首先,輸入層將源圖像進行多尺度變換,得到多個不同尺度圖像,并對這些圖像進行歸一化處理。由于輸入是k個尺度圖像,因此可以看作k個并列的分支網絡,每一個分支對應一個尺度圖像,各分支共享參數,網絡配置與ResNet50 在卷積層1 到卷積層5_x的結構相同。在每個分支網絡的卷積層i_x(i=2,3,4,5)后的位置(如圖4 所示)嵌入注意力圖。對圖像進行歸一化處理能夠在使用隨機梯度下降法(Stochastic Gradient Descent,SGD)訓練網絡時防止梯度消失和梯度爆炸問題。由于各分支的結構相同,卷積核大小不變,不同尺度大小的輸入圖像經過卷積和池化操作后得到的特征圖大小是不同的。為便于后續多尺度特征融合操作,本文在分支網絡的最后一層使用全局平均池化,將輸出特征圖維度大小統一到1×1×2 048。然后,在全局平均池化層后設置特征融合層串聯多個尺度圖像輸出的特征。由于原始ResNet50 僅有一個全連接層,沒有使用Dropout 策略來降低節點間的相互依賴性,為了避免模型過擬合,本文在尺度注意力網絡的最后設計了兩個全連接層,增加了一個Dropout層。最后,使用SoftMax 分類器得到預測的場景類別標簽。
本文選用ResNet50 作為網絡基本結構的原因在于,ResNet50 比使用卷積層堆疊的CNN,網絡層數更深,模型參數更少,特征提取能力更強,其網絡配置如表1 所示。ResNet50 是由多個殘差模塊堆疊在一起構成,與普通卷積層不同的是,殘差模塊通過一條直連通道,將輸入信息直接傳到輸出,緩解了CNN 在信息傳遞過程中存在信息丟失的問題,保護了信息的完整性,對存在多個小對象和背景復雜的場景圖像,其特征提取能力更強。構成ResNet50 的每一個殘差模塊都是由卷積核大小分別為1×1、3×3、1×1的三個卷積層串聯在一起組成,結構如圖5 所示,圖中Conv 表示卷積層,BN(Batch Normalization)表示批歸一化,ReLu(Rectified Linear Unit)表示線性整流函數。

表1 ResNet50的網絡配置Tab.1 Network configuration of ResNet50
尺度注意力網絡能夠通過在卷積層后嵌入注意力圖,提取低中高級特征中的關鍵信息,使得網絡提取的特征包含更多層次的對象信息,逐漸弱化背景復雜對網絡性能帶來的影響,從而提高模型的分類效果和泛化能力。

圖5 殘差模塊結構Fig.5 Residual block structure
與傳統手工特征和特征編碼方法相比,卷積神經網絡的優勢在于能夠通過端到端訓練學習到判別性的深度特征表示。本文使用隨機梯度下降法(SGD)訓練尺度注意力網絡,訓練過程可以分為前向傳播和反向傳播,每一次前向傳播和反向傳播為一次迭代過程,共同調整網絡參數。前向傳播的計算公式為:

其中:Xl為網絡第l層的輸出,wl為網絡第l層的權重值,bl為網絡第l層的偏置,f(·)為ReLU 激活函數。反向傳播的計算公式為:

其中:α表示學習率,L表示損失函數,尺度注意力網絡使用的損失函數計算公式為:

其中:LCE為交叉熵損失函數;C為樣本的類別數;x為SoftMax層的輸出向量,形如[1,C];label為樣本對應的實際標簽;x[label]為樣本的實際標簽對應的預測概率值;x[i]為樣本屬于第i類的預測概率值。通過前向傳播預測輸入圖像的標簽,并通過真實標簽與預測標簽計算當前模型的損失函數值,判斷模型優劣。然后,利用反向傳播算法更新網絡參數的方法,迭代訓練網絡模型,縮小模型的預測值與真實標簽之間的差距,最終使損失值保持在誤差許可的范圍,使得提取的特征能夠更好地表征遙感圖像場景數據,提高模型的識別準確率。
利用前述圖3、4 給出的算法處理流程,給定一個輸入圖像I,就可以獲得對應的注意力圖S,然后通過微調后的尺度注意力網絡得到預測的場景類別標簽。首先,對輸入圖像I進行多尺度變換,獲得多個尺度圖像Ik,并作歸一化處理,即:

其中:μ、std分別表示輸入圖像的均值和標準差,Ik表示第k個尺度圖像。然后,提取不同尺度圖像的特征及融合,具體是嵌入注意力圖與多個卷積層輸出特征加權再作卷積,注意力圖與特征圖的加權可用以式(11)表示:

其中,Fki表示第k個尺度圖像,第i_x卷積層后(圖4)輸出的特征圖,i=2,3,4,5;S表示輸入圖像對應的注意力圖;R(·)表示將圖像調整到與Fki同樣大小。接著,融合多尺度特征,并依次經過全連接層、Dropout 層、全連接層和SoftMax 層,得到預測的場景類別標簽。
本文方法在Linux系統下進行實驗驗證,實驗環境是基于Linux 的Pytorch 機器學習框架,采用GPU 進行加速訓練,其型號為NVIDIA Tesla V100。
本文使用遙感圖像場景分類領域中的兩個大規模數據集AID[14] 和 NWPU-RESISC (NorthWestern Polytechnical University-Remote Sensing Image Classification)[15]來訓練和測試尺度注意力網絡。兩個數據集的相關參數以及訓練比例(訓練集占樣本總數的比例)如表2 所示。實驗中使用的第一個數據集是AID 數據集,包含30 個類別,總共有10 000 張圖像。該場景數據集具有從大約8 m到0.5 m的不同分辨率,每個圖像的大小被固定為600×600 像素大小,以覆蓋各種不同分辨率的場景。第二個數據集是NWPU-RESISC 數據集,包含45 個類別。每類有700 幅圖像,每個圖像的大小被固定為256×256 像素大小,總共有31 500 張圖像,且空間分辨率從每像素約30 m到0.2 m不等。

表2 場景數據集Tab.2 Scene datasets
首先,將數據集輸入到注意力模塊中產生對應的注意力圖;然后,將數據集按比例隨機劃分為訓練集和測試集;接著,使用在ImageNet 圖像上訓練的ResNet50 預訓練模型初始化尺度注意力網絡參數,并利用訓練集和注意力圖微調網絡;最后,利用微調后的尺度注意力網絡對測試集進行分類預測,得到最終的分類結果。
在尺度選擇上,由于尺度大的圖像包含的信息更加豐富,細節部分更加清晰,能夠提供更細微的特征信息,同時增加了模型的計算量;而尺度小的圖像包含的信息不如大尺度圖像,同時尺度變換會丟失部分信息,如何選擇最優尺度組合成為一個值得研究的問題。本文以224×224 圖像大小為基準,在選定的尺度0.7、1、1.4、2 中,即156×156、224×224、313×313、448×448 圖像大小,選用不同組合進行交叉驗證,最終選取1、1.4,0.7、1、1.4 以及1、1.4、2 這三組尺度組合進行實驗。模型的批處理大小為16,完全訓練60 次后停止訓練,確保網絡損失值基本平穩,保障得到的模型的可靠性。模型在以下設定下完成訓練:1)使用SGD 優化器,并設置初始學習率為0.002,動量為0.9,權值衰減為0.000 5,訓練30 次后將學習率設置為0.001,Dropout 層節點隱藏率為0.5;2)使用交叉熵損失函數。最終的實驗結果為五次隨機劃分數據集進行實驗得到的平均準確率。
表3、4 給出了本方法在兩種不同數據集上的平均分類準確率,包含本方法以及幾種最新方法的結果。其中,CaffeNet結果源于本實驗中的實現。為簡化起見,表中及下文中的尺度1、2、3、4分別表示尺度0.7、1、1.4、2。
從實驗結果可以看出,本文方法(尺度2+3+4)與傳統手工特征提取方法salM3LBP-CLM 相比,在AID 數據集的不同訓練比例下準確率分別提高了5.61、5.96 個百分點。與經典CNN 方法(ResNet50、CaffeNet、VGG-VD16、GoogleNet)中最好的準確率相比,在不同訓練集和不同訓練比例下分類準確率分別提高了0.47、0.96、0.90、1.01 個百分點。與現有的基于CNN 改進的ArcNet 方法相比,在AID 數據集的不同訓練比例下的準確率提高了3.78、2.62 個百分點。與現有的基于CNN改進的IORN4-VGG16 方法相比,在NWPU-RESISC 數據集的兩個不同訓練比例下的準確率分別提高了1.09、0.95 個百分點。
以上對比結果說明在網絡中嵌入不同尺度注意力圖加權再融合的方法能夠使得網絡提取的特征包含更多的對象信息,逐漸弱化復雜背景對網絡性能帶來的影響。
另外,本文方法在使用尺度2+3 進行實驗時的分類準確高于尺度1+2+3,而在使用尺度2+3+4進行實驗時的分類準確率略高于尺度2+3,出現這種結果可能是由于遙感圖像場景的高分辨率,使得對圖像進行縮放時圖像的細節部分被削弱,相對于普通圖像丟失的信息更多,導致包含小尺度圖像(尺度1)的尺度組合分類準確率有所下降。

表3 在AID場景數據集上的分類結果Tab.3 Classification results on scene dataset AID

表4 在NWPU-RESISC場景數據集上的分類結果Tab.4 Classification results on scene dataset NWPU-RESISC
本文提出了一種基于注意力圖和多尺度特征變換的尺度注意力網絡模型。尺度注意力網絡提出了一種簡單高效的注意力圖生成方法,獲得了包含語義對象權重信息的注意力圖。并嵌入注意力圖與低中高層特征進行加權,有效地提取出特征的重要信息,進一步減小了圖像中許多小對象和復雜背景問題對分類的影響。同時,尺度注意力網絡以ResNet50 網絡為基礎構建,增加了多尺度圖像、注意力圖和多尺度特征融合層,并重新設計了全連接層,即保留了殘差網絡很強的特征提取能力以及上下文信息抽象能力,因此,學習到了更具判別性的特征表示。最后,本文分別在兩個遙感圖像場景數據集上進行實驗,表現出了比其他方法更高的分類準確率,驗證了本文方法的有效性。