?

基于SKNet注意力機制的飛機類型識別算法

2024-01-16 01:12舒振宇秦昊
關鍵詞:注意力準確率飛機

舒振宇,秦昊

(中南民族大學 電子信息工程學院,武漢 430074)

飛機無論是作為民用的出行交通工具還是應用在軍事上的打擊作戰武器,都已經得到了廣泛的應用[1].隨著我國經濟和軍事能力的發展,高準確度的飛機識別系統可以幫助航空中心精準識別飛機型號、有效協助地面航站中心指揮飛機起降,也可以應用于軍隊監測敵情、打擊目標等作戰任務.

近年來,飛機類型識別任務作為一種復雜的圖像細粒度分類任務,已有許多學者對其進行了深入研究.李萍等[2]利用紅外信息和特征融合對飛機紅外圖像進行目標識別.邵大培等[3]使用基于主成分分析和模板匹配的方法對飛機進行識別.這些傳統的飛機識別算法往往需要人工手動對特征進行處理或選擇,復雜度大,準確率也比較低.

目前通過AlexNet[4]等深度學習方法對飛機類型識別的研究還較少.文獻[5]提出了一種自監督機制網絡,利用導航網絡等多網絡合作方法,定位信息豐富的區域,該網絡在MAJI等建立的FGVC-Aircraft數據集[6]上取得了91.4%的識別準確率.文獻[7]提出了一個基于多粒度空間混亂的細粒度圖像分類算法,提出將輸入圖像進行切分、打亂、組合的方法,使模型聚焦于多尺寸下的判別性局部區域并進行分類,在FGVC-Aircraft 數據集上取得了92.8%的識別準確率.文獻[8]通過聯合損失函數從低分辨率的飛機遙感圖像中生成具有判別能力的高分辨率圖像來提高識別能力,建立起面向飛機遙感圖像的飛機識別框架SRARNet,在飛機遙感圖像數據集MTARSI[9]上取得了93.4%的識別準確率.

飛機類型識別任務作為一項細粒度分類任務,面臨“類間差距小、類內差異大”這一難題,不同類別飛機圖像中會因為目標姿態、角度相似而差異較小,而同一類別的飛機圖像中會因為背景雜亂、部件更換、歷史外觀變化等眾多因素導致差異較大.為解決這一難題,多數學者采用注意力機制[10]學習圖像中的顯著局部特征,抑制其他區域不重要的背景特征.為了有效發揮注意力機制在特征提取中的功效,本文以ResNeXt101[11]網絡為基礎網絡,將改進的SKNet注意力[12]嵌入基礎網絡中以增強網絡的特征提取能力.此外,對數據集中的訓練數據采取數據增廣的方式進行處理,讓網絡在學習目標特征的過程中兼顧局部特征和整體特征,增強了網絡在復雜背景下對目標總體信息的表達能力.

1 本文方法

1.1 并行通道空間注意力

CBAM[13]是基于通道和空間的混合域注意力機制,本文對其修改后提出了改進后的并行通道空間注意力機制(圖1).CBAM注意力結構如圖1所示.

圖1 CBAM注意力結構Fig.1 CBAM attention structure

CBAM 屬于混合域的注意力機制,它將特征圖在空間維度和通道維度上的信息重新賦予不同的權重.在CBAM 注意力模塊中輸入特征圖F首先通過通道注意力機制加權得到F1,再將F1作為輸入串行接入空間注意力加權得到F2,其過程表示如下:

其中MC(F)為F經過通道注意力的輸出權值,MS(F1)為F1經過空間注意力的輸出權值.

由于CBAM注意力機制中通道注意力和空間注意力屬于一種串聯的關系,輸入特征圖會依次經過兩次注意力權重分配的過程.然而,第二次注意力權重分配部分的輸入是第一次的輸出結果而非原輸入特征圖,這會導致第二次注意力作用的對象是經過第一次注意力權重分配修改后的特征圖,這會在一定程度上擾亂第二次注意力提取相應維度重要特征的過程,致使預測準確度不佳.

為解決上述問題,將CBAM 注意力機制的注意力連接方式由串行改為并行得到PCSA 注意力機制,使輸入特征圖無需關注空間注意力和通道注意力順序,由兩條支路并行經過通道注意力和空間注意力進行權重分配,將輸出的兩個權重特征向量與原特征圖加權得到輸出特征圖,其網絡結構如圖2.

圖2 PCSA注意力結構Fig.2 PCSA attention structure

在PCSA注意力模塊中,輸入特征圖F分別經過通道、空間注意力得到相應權值,隨后將權值直接與原特征圖加權得到輸出特征圖F*,其過程如下:

其中MC(F)為F經過通道注意力的輸出權值,MS(F)為F經過空間注意力的輸出權值.

1.2 PCSA-SK注意力機制

SKNet 網絡的設計思路是讓網絡從多個尺度大小的感受野中提取輸入圖像的特征信息,使圖像經過不同尺度的卷積核并生成相同尺度的特征圖,以增強網絡的類別表征能力.本文將PCSA 注意力機制與SKNet 網絡相結合提出PCSA-SK 注意力機制,經實驗驗證,該機制相比SKNet 取得了更好的效果.

1.2.1 可選擇卷積核網絡SKNet

SKNet 將注意力機制思想應用到卷積核上,讓網絡動態選擇合適的卷積核,通過Split、Fuse、Select操作使網絡自適應地調節感受野大小,兼顧多個尺度的特征信息.其中SKBlock結構如圖3所示.

圖3 SKBlock結構Fig.3 SKBlock structure

1.2.2 PCSA-SK注意力機制

為了在SKNet 的基礎上進一步過濾無用信息,提取重要特征,受文獻[14]中采用方法的啟發,本文提出了PCSA-SK 注意力機制,其模塊化網絡結構如圖4 所示.它將分解階段產生的多個分支特征信息與PCSA 注意力機制結合,讓每個分支的特征圖通過并行的通道-空間注意力機制,使每個分支的特征圖都能在原Select 操作前進行一次基于通道和空間維度的注意力權值分配,增強了模型在不同尺度分支上特征提取的能力.

圖4 PCSA-SK注意力結構Fig.4 PCSA-SK attention structure

在PCSA-SK 注意力機制中,Split 階段與SKNet網絡相同,生成基于不同尺度卷積核的兩個分支的特征圖.在Fuse階段每個分支的特征圖會通過PCSA注意力,得到輸出;兩個分支特征圖融合相加輸出U經過全局平均池化、全連接層和Softmax 操作得到基于原始SKNet網絡的注意力特征向量a、b,分別與進行相乘加權在Select 階段將結果進行特征相加得到最終特征圖V,其過程如下所示:

其中Fca表示通道注意力機制,Fsa表示空間注意力機制,分別是分支特征圖經過PCSA 模塊后產生的輸出,ac、bc分別表示兩個注意力權重a、b的第c個元素,Vc是最終特征圖V的第c個通道,分別為2 個支路產生的輸出特征的第c個通道.

1.3 數據增廣

數據增廣是計算機視覺領域常使用的一種數據正則化方法,可以緩解訓練數據不足帶來的模型過擬合的問題[15].常用數據增廣方法有翻轉、裁剪等,主要通過預先設置的概率值對原始數據進行變換,但未考慮到網絡更關注于原始數據中的目標主體信息.以常用的隨機裁剪為例,裁去的部分可能含有對分類具有判別性作用的關鍵信息,這樣產生的增廣數據很難提升模型的分類性能.

卷積神經網絡如ResNet[16]、VGG-Net[17]等在最后一個卷積層產生的特征圖中包含圖像豐富的分類信息和定位信息,受文獻[18]的啟發,神經網絡在初始數據集上經過初次訓練后,再次將訓練集的圖像輸入網絡,經過特征提取階段能夠得到目標位置信息豐富的特征圖,將特征提取階段得到的特征圖進行通道維度疊加得到目標激活圖.在神經網絡訓練的過程中,由于反向傳播和特征提取階段的作用,網絡會增強特征圖中目標信息的表達,使得特征圖中目標區域的數值高于其他區域,因此經過通道維度疊加后得到的目標激活圖能夠明顯地反映原圖像中目標區域的位置信息.將目標激活圖中目標位置明確的區域映射到原圖像中的對應區域,裁剪原圖像中的對應區域并將得到的圖像加入初始數據集的訓練集中以實現數據增廣.網絡能夠在新的數據集上充分學習全局特征與局部特征信息,從而較精確地提取原始圖像中的目標信息,排除背景噪聲干擾.數據增廣的流程圖如圖5所示.

圖5 數據增廣結構Fig.5 Data augmentation structure

得到原始樣本的目標激活圖后,采用合適的裁剪映射算法得到含有目標信息的增廣樣本.首先對目標激活圖P∈RH×W進行均值計算,過程如下:

P(u,v)表示目標激活圖P在第u行第v列的響應值,P*(u,v)代表目標激活圖中目標區域的判斷依據.

本文算法引入了一個激活系數m,當P*大于裁剪閾值m時M(u,v)=1,否則M(u,v)=0.尋找一組最小的邊界框來覆蓋這些位置得到激活圖中含有目標信息的區域[19].將這組邊界框按照目標激活圖與原圖像的尺寸比例放大到原圖像中并依據放大后的邊界框信息對原圖像進行裁剪,就得到了細節信息更豐富、目標信息更準確的數據增廣圖像.讓網絡同時訓練增廣圖像與原輸入圖像,能夠使網絡同時學習到圖像的全局和目標信息,增強了模型對不同尺度圖像識別過程中的魯棒性和準確性.

目標激活圖中像素值高于均值的區域是目標信息最顯著的區域,但是某些邊緣區域的非目標位置可能會被誤判為目標區域而導致裁剪效果較差.為了使裁剪產生的增廣數據只包含主體的目標信息,減少背景信息的干擾,通過調節并選擇激活系數m的最優值,來保證通過裁剪產生的增廣數據中只含有目標信息.如圖6所示,激活系數過大或過小都會對提取目標區域產生影響,選取合適的激活系數可以保證生成的增廣數據中目標主體信息具有最明確的判別性特征.

圖6 m取值效果對比圖Fig.6 Comparison chart of m value effect

1.4 整體網絡結構

本文模型在ResNeXt101 網絡的基礎上實現飛機類型識別,并通過改進的可選擇卷積核注意力和數據增廣方法提高模型的多類別分類效果,圖7 為本文模型的總體框架,可分為特征提取階段、數據增廣階段和分類器階段.

(2)數據增廣階段.它屬于特征提取階段的一個并行分支部分.特征圖經過Conv3 得到512 的特征圖之后,將Conv4 和Conv5 階段中下采樣層的步長stride 由1 改為2,使得特征圖通過Conv4和Conv5時尺寸保持在,進行目標區域裁剪,保存為新的增廣數據樣本,與原始數據樣本一同參與模型訓練.

(3)分類器階段.將由特征提取階段所提取到的特征經過一個全局平均池化以及Dropout 減少參數量,防止出現過擬合;然后經過一個全連接層得到40 個類別的分數信息;之后經過Softmax 函數對各個類別的信息映射為0到1的概率值.

2 實驗及結果分析

2.1 實驗平臺

Ubuntu18.04系統,Python3.8、Cuda11.1、Pytorch1.8.1構建框架.CPU Intel i5-3470,內存8 GB,顯卡Nvidia GeForce RTX 3060,顯存12 GB.

2.2 實驗數據

本文使用的是細粒度識別挑戰比賽FGComp 2013 中FGVC-Aircraft 飛機細粒度視覺分類數據集.FGVC-Aircraft 包括客機、軍用戰斗機、輕型飛機等多種構型,總共包含了10000張圖片,其中每張圖片都含有對應的類別信息.數據集中存在多種類別之間相似度高、同一類別中差距較大的情況.這些問題給模型的訓練和識別帶來一定的困難.FGVCAircraft數據集按飛機型號分為70個類別,部分數據圖像及樣本類別分布如圖8、圖9所示.

圖8 部分數據圖像Fig.8 Partial data images

圖9 樣本類別分布Fig.9 Sample class distribution

實驗中,將數據集按照7∶3 的比例分為訓練集和驗證集,70%作為訓練數據,30%作為驗證數據,并且兩者之間沒有數據交集.該數據集存在樣本較少、各個類別對應樣本不均衡、圖片背景混亂以及目標姿態各異等問題,這在一定程度上會影響飛機分類的性能.為了能夠增強模型的泛化能力以及魯棒性,本文采取了一系列數據增強手段,包括等比縮放、隨機噪聲、隨機裁剪、Mixup、Cutmix等.

2.3 網絡訓練與評價指標

實驗中,將輸入圖像大小調整為288×288,Batchsize 設置為16,訓練50 個epoch.為了防止出現過擬合的現象,在最后全連接層添加了dropout,其系數設置為0.4.實驗采用SGD 作為優化函數,初始學習率設置為0.01,使用ReduceLROnPlateau 進行學習率調整優化.

本文以Top-1 準確率作為模型的主要評價指標,其計算方式如下:其含義為識別正確的圖片數在總的測試的圖片數中所占的百分比.

本文采用交叉熵損失函數(CrossEntropyLoss)對模型進行優化,其算法如下:

其中class代表相應類別.

2.4 實驗與分析

為了充分驗證本模型的綜合性能,從各個方面進行綜合對比實驗,具體如下.

(1)基準網絡的優越性.在該組實驗中,對當前熱門的分類網絡在飛機分類任務上的表現進行對比實驗,其中包括ResNet101[16]、ResNeXt50_32×4 d[11]以及本文采用的基準網絡ResNeXt101_32×8 d[11].為了能夠更快擬合出高精度的模型,對各個網絡在ImageNet上訓練的預訓練模型在飛機分類數據集上進行微調,每種網絡訓練30 個epoch,訓練的過程和結果如圖10所示,準確率對比見表1.

表1 基準網絡分類準確率對比Tab.1 Comparison of benchmark network classification accuracy

圖10 基準網絡對比實驗Fig.10 Benchmark network comparison experiment

當模型的訓練過程趨于穩定后,ResNeXt101_32×8 d 相比于其他兩種網絡精度要高,并且網絡的深度和寬度都會影響模型的參數量和每秒浮點運算量.由于分類任務需要選擇識別效果更好的基準網絡,在不考慮硬件資源限制的情況下,本文選擇精度最高的ResNeXt101_32×8 d網絡.

(2)PCSA 模塊的有效性.為了證明PCSA 模塊的有效性,本文將基準網絡結合PCSA-SK 注意力機制的網絡與把網絡中PCSA注意力機制替換為CBAM注意力機制的網絡進行對比,其他網絡結構均不發生改變,訓練過程如圖11 所示.ResNeXt101_32×8 d_PCSA-SK 代表基準網絡結合PCSA-SK 注意力機制的網絡訓練曲線,ResNeXt101_32×8 d_CBAM-SK代表將網絡中PCSA 注意力機制替換為CBAM 注意力機制的網絡訓練曲線.準確率對比見表2.

表2 模塊有效性準確率對比Tab.2 Comparison of module effectiveness and accuracy

圖11 模塊有效性對比實驗Fig.11 Module effectiveness comparison experiment

在網絡中使用PCSA 模塊在整個訓練過程中精度曲線都比較平穩,而在網絡中使用CBAM模塊時會產生震蕩現象.在網絡中使用PCSA 模塊得到的測試精度高于在相同網絡結構條件下使用CBAM 模塊,說明在飛機識別任務中PCSA 模塊采用并行通道-空間注意力處理信息的方式解決了串行結構中兩種注意力無法在原始特征圖上進行學習帶來的不穩定和干擾,有助于模型學習到原始特征圖上最正確的特征信息,提高網絡對相應類別識別的精度.由于PCSA 模塊與CBAM 模塊只在通道、空間注意力的排列方式上不同,所以以上兩種網絡的參數量和每秒浮點運算量是一致的.

(3)顯著性驗證.在該組實驗中,將本文網絡與其他在ResNeXt101_32×8 d 網絡中嵌入注意力機制的網絡進行對比實驗,其中包括SKNet、SE block[20]、CBAM block,訓練過程如圖12 所示,ResNeXt101_32×8 d_SE代表基準網絡中添加SE注意力的訓練曲線,ResNeXt101_32×8 d_CBAM代表基準網絡中添加CBAM 注意力機制的網絡訓練曲線,ResNeXt101_32×8 d_SK 代表基準網絡中添加SK 注意力機制的網絡訓練曲線.準確率對比見表3.

表3 網絡顯著性準確率對比Tab.3 Network saliency accuracy comparison

圖12 網絡顯著性對比實驗Fig.12 Network saliency comparison experiment

通過與其他嵌入注意力機制的網絡進行對比試驗發現,相較于原始網絡,嵌入注意力機制對模型準確度的提升有一定的效果,本文采用的注意力結合數據增廣的網絡架構結合了PCSA、SKNet 注意力機制,相較于使用其他注意力機制的網絡具有較高的參數量和每秒浮點運算量,但在忽略硬件資源限制的條件下對模型準確率的提升效果更為顯著.

(4)消融實驗.對本文提出的網絡的各部分進行消融實驗,其中包括基準網絡ResNest101_32×8 d、只含PCSA-SK注意力機制的網絡、只使用數據增廣方法的網絡以及本文網絡,訓練過程如圖13所示.ResNeXt101_32×8 d 代表基準網絡訓練曲線,ResNeXt101_32×8 d_PCSA-SK 代表基準網絡中只添加PCSA-SK 注意力機制的網絡訓練曲線,ResNeXt101_32×8 d_DA 代表基準網絡中只添加數據增廣方法的網絡訓練曲線.準確率對比見表4.

表4 網絡消融實驗對比Tab.4 Comparison of network ablation experiments

圖13 各模塊消融實驗Fig.13 Ablation experiment of each module

從消融實驗對比結果可以看出,相較于原始網絡,本文采用的加入PCSA-SK 注意力機制以及使用數據增廣的方法對網絡的收斂以及精度都有一定的提升效果.由于數據增廣的方法是在數據集上對網絡模型準確率的優化,因此在提高準確率的同時不會帶來額外的參數量和每秒浮點運算量的提升.本文在模型中將兩者結合起來同時使用提升效果更為明顯,在測試集上達到93.57%的準確率,優于其他方法,進一步證明了本文提出網絡的有效性.

本文提出的基于改進SKNet注意力與數據增廣的飛機類型識別網絡在飛機類型識別任務中,總體的識別準確率相較于其他對比方法有顯著的提升,與其他設計了復雜模塊的方法相比,分類效果更好.

3 結論

針對當前飛機類型識別作為一種細粒度分類任務存在的類間差異小、類內差異大、分類精度低等問題,在ResNeXt101 網絡的基礎上結合改進的SKNet注意力即PCSA-SK 注意力機制和數據增廣的方法,幫助模型學習到飛機不同類別中具有區分度的關鍵信息.與其他當前具有代表性的模型結構相比,本文采用注意力機制與數據增廣結合的方法在常用的飛機類型識別數據集FGVC-Aircraft 上取得了較好的識別效果,分類效果提升,可以基本滿足當前各領域對飛機類型識別任務的需求.

猜你喜歡
注意力準確率飛機
飛機失蹤
讓注意力“飛”回來
乳腺超聲檢查診斷乳腺腫瘤的特異度及準確率分析
不同序列磁共振成像診斷脊柱損傷的臨床準確率比較探討
2015—2017 年寧夏各天氣預報參考產品質量檢驗分析
“拼座飛機”迎風飛揚
高速公路車牌識別標識站準確率驗證法
乘坐飛機
“揚眼”APP:讓注意力“變現”
A Beautiful Way Of Looking At Things
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合