王 輝, 繆仕城, 于立君, 綦志剛
(哈爾濱工程大學智能科學與工程學院,哈爾濱150001)
檢測是計算機視覺領域的一個重要課題,其主要任務是對圖像中的目標進行分類和定位,使用邊界框包圍感興趣的目標并給出目標類別[1-2]。近年來,隨著遙感技術的發展,遙感圖像的分辨率逐年攀升,這給目標檢測帶來了全新的挑戰。目標檢測模型無法直接提取和學習分辨率較高的圖像的特征;圖像中部分目標(如飛機、汽車等)在整幅圖像中所占像素過小,檢測模型難以對其進行檢測[3]。
針對高分辨率遙感圖像目標檢測中存在的問題,設計并實現了基于注意力機制的目標檢測模型,采用一定重疊率區域滑動切割的方法處理高分辨率遙感圖像,實現了對圖像中不同目標較為精確的分類和定位功能。
目標檢測模型由區域的檢測框架快速卷積神經網絡特征提取區域推薦算法(Region-Convolutional Nearal Network,Faster R-CNN)[4]和檢測主干網絡構成。主干網絡包含特征提取網絡-殘差網絡模型(Residual Network Inception,ResNeXt-101)[5]、特征融合網絡-特征金字塔網絡(Feature Pyramid Network,FPN)[6]和注意力機制[7](attention)。目標檢測模型的整體結構如圖1所示。

圖1 目標檢測模型整體結構
在主干網絡的殘差基本單元中引入注意力機制,借鑒了人類視覺注意力機制通過抑制無用信息來獲得更多關于目標有用信息的思想[8-9]。注意力機制模型可以看作一個組合函數,通過計算注意力的概率分布,突出某個關鍵輸入對輸出的影響,使網絡能更加注意輸入的相關部分,忽略非相關部分。使用的注意力機制屬于參數可微的軟注意力機制,包含空間域[10-11]和通道域兩個方面。
特征圖不同空間位置權值計算方法如下:使用池化方法對輸入特征圖采樣,對采樣后的特征圖進行卷積提取目標和源像素點內容特征,對卷積得到的特征圖進行張量乘法運算(torch.matmul())得到與像素點內容相關的注意力權值;對采樣后的特征圖進行水平和豎直方向上的編碼,將目標和源像素點空間位置編碼做差后進行正余弦函數變換,得到位置編碼張量,位置編碼張量與目標像素點的特征圖張量進行乘法運算得到與像素點空間相對位置有關的注意力權值。輸入特征圖與兩部分權值逐元素相加后輸出。
加入空間域注意力機制后的殘差基本單元結構如圖2所示。方框中的數字分別為輸入特征圖的通道數、卷積核的大小和輸出特征圖的通道數??臻g域注意力位于卷積后,為卷積提取得到的特征圖賦予空間維度上的權值。

圖2 加入空間域注意力后的殘差基本單元
引入通道域注意力機制采用“壓縮和激勵”結構[12-13]實現,即對輸入特征圖在空間維度上進行壓縮,在通道維度上使用非線性函數進行激活。與空間域注意力類似,將通道域注意力引入主干網絡的殘差基本單元中,“壓縮”部分采用全局平均池化,“激勵”部分使用Sigmoid非線性函數。將空間域和通道域注意力機制引入殘差基本單元后的結構如圖3所示。圖中H為特征圖的高度,W為特征圖的寬度,C為特征圖的長度。

圖3 引入注意力機制后的殘差單元結構
使用的高分辨率遙感圖像數據集有光學遙感圖像中目標檢測數據庫(object DetectIon in Optical Remote sensing images,DIOR)[14]和航空影像中目標檢測數據集(Dataset for Object deTection in Aerial images,DOTA)[15]。其中,DIOR數據集共包含23 463張大小為800×800的圖像,涵蓋20類目標實例,數據集標簽為xml格式,可以直接用來訓練和測試模型;DOTA數據集共包含2 806張大小在800×800到4 000×4 000之間的圖像,涵蓋15類目標實例,數據集標簽為txt格式,無法直接用來訓練和測試模型,需要先對其預處理。使用兩個數據集的目的在于驗證模型的泛化能力。
采用一定重疊率的區域滑動切割的方法對DOTA數據集進行預處理,具體步驟如下:
步驟1使用1 000×1 000大小的區域,以800像素的步長(重疊率為200像素)對原始圖像進行滑動切割,得到一系列分辨率較低的小圖;
步驟2將原始數據標簽(標簽數據為圖像中各個目標的真實邊框的像素坐標值、目標類別和檢測難易度信息)按照切割得到的小圖進行分割,即得到每張小圖的標簽數據;
步驟3將每張小圖對應的txt格式的標簽轉換為xml格式。
目標檢測的一般過程分為訓練和測試2個階段:訓練階段使用訓練集圖像對檢測模型進行訓練,測試階段使用測試集圖像對模型進行測試,對測試結果進行后處理得到檢測結果?;趨^域的目標檢測流程如圖4所示。

圖4 基于區域的目標檢測流程
本文使用的檢測環境為MMdetection[16],使用單張NVIDIA GeForce GTX 1080Ti顯卡訓練和測試模型,模型測試完成后對結果進行處理得到檢測數值結果和可視化結果。數值結果為不同類別目標的平均精度(Average Precision,AP)及各類別AP的平均值(mean Average Precision,mAP),反映模型的分類性能;可視化結果使用邊界框包圍目標,邊框外給出目標類別和置信度得分,反映模型的定位性能。
將含有注意力機制和不含注意力機制的模型分別檢測DIOR數據集及DOTA數據集,并對檢測結果進行了對比分析。
(1)DIOR數據集檢測結果。DIOR數據集檢測對比結果見表1。其中C1~C20分別為飛機、機場、棒球場、籃球場、橋、煙囪、大壩、高速路服務區、高速路收費站、高爾夫球場、地面田徑場、港口、立交橋、船、體育場、存儲罐、網球場、火車站、汽車和風車。由對比結果可見,在主干網絡中加入注意力機制,能提升主干網絡的特征提取能力,提高不同類別目標的分類精度。模型檢測DIOR數據集的部分可視化結果如圖5(a)~(f)所示。可見,圖像中的大部分目標均能被模型準確定位和識別,模型的整體定位性能較好。

表1 DIOR數據集檢測數值結果對比 %

圖5 DIOR數據集部分可視化結果
(2)DOTA數據集檢測結果。DOTA數據集檢測對比結果見表2。其中C1~C15分別表示飛機、棒球場、橋、地面田徑場、小型汽車、大型汽車、船、網球場、籃球場、存儲罐、足球場、環島、港口、游泳池、直升機。從對比結果可以看出,在主干網絡中加入注意力機制檢測DOTA數據集,能提升主干網絡的特征提取能力,提高絕大多數不同類別目標的分類精度。模型檢測DOTA數據集的部分可視化結果如圖6(a)~(f)所示。由可視化結果可見,圖像中的大部分目標均能被模型準確定位和識別,模型的整體定位性能較好。

表2 DOTA數據集檢測數值結果對比 %

圖6 DOTA數據集部分可視化結果
針對高分辨率遙感圖像目標檢測中存在的問題,借鑒人類視覺注意力機制,引入主干網絡的殘差基本單元,設計并實現了基于注意力機制的目標檢測模型,并采用合適的方法處理高分辨率遙感圖像,實現了對圖像中不同目標較為精確的定位和分類功能。由檢測數值結果的對比可見,加入注意力機制能提升網絡特征提取能力,提高檢測分類精度;分析可視化結果可以看出,模型的定位性能較佳,從模型檢測兩類數據集的結果上可以看出模型的泛化能力較強。