張芯睿, 趙清華, 王 雷, 董旭彬
(1.太原理工大學(xué),太原 030000; 2.中國科學(xué)院空天信息研究院,北京 100000)
遙感圖像目標檢測在計算機視覺領(lǐng)域一直都占據(jù)著十分重要的地位。近年來,隨著航空遙感技術(shù)的快速發(fā)展,我國的遙感技術(shù)在光譜分辨率和空間分辨率等方面都取得了巨大的進步。目前,高分辨率遙感圖像在遙感圖像目標檢測方面已經(jīng)得到廣泛應(yīng)用,高分辨率遙感圖像為城市規(guī)劃、環(huán)境監(jiān)測等民用方面提供了非常大的便利,同時在軍事作戰(zhàn)方面也發(fā)揮著重要的作用。
隨著目標檢測技術(shù)的不斷發(fā)展,基于深度學(xué)習(xí)的目標檢測算法逐漸進入研究人員的視線[1-5]。目前,目標檢測算法主要分為兩類:一類是基于回歸的目標檢測算法,典型的有YOLOv1~YOLOv3[6-8],SSD[9],此類算法不生成候選區(qū)域,采用直接回歸目標區(qū)域的檢測策略;另一類是以R-CNN系列為代表的基于區(qū)域建議的目標檢測算法。這兩類算法都在目標識別中得到廣泛應(yīng)用,并且取得了不錯的效果,但遙感圖像成像容易受天氣因素影響,圖像常有云霧遮擋的現(xiàn)象;且遙感目標種類繁多,形狀大小各異,小目標分布密集,受這兩種情況的影響,檢測結(jié)果會發(fā)生誤檢、漏檢以及生成掩膜質(zhì)量不高等情況。
針對上述問題,本文提出一種基于Mask R-CNN的遙感圖像目標檢測改進算法。
Mask R-CNN[10]是R-CNN系列算法中目標識別和語義分割能力最優(yōu)秀的目標檢測技術(shù)之一,是在Faster R-CNN基礎(chǔ)上開發(fā)的一種新型模型,并在其基礎(chǔ)上做了諸多改進,如圖1所示,Mask R-CNN模型的特征提取網(wǎng)絡(luò)將特征金字塔與殘差網(wǎng)絡(luò)相結(jié)合,利用自下而上和自上而下兩條路徑結(jié)合多個尺度的信息來防止網(wǎng)絡(luò)退化,并將興趣區(qū)域池化層(Region of Interest Pooling,RoI Pooling)改為興趣區(qū)域匹配層(Region of Interest Align,RoI Align),RoI Align 采用雙線性插值法運算,結(jié)果采用浮點數(shù)的形式,解決了之前Faster R-CNN[11]中RoI Pooling兩次量化所產(chǎn)生的區(qū)域不匹配問題,最后在輸出部分增加了掩膜支路,不僅能夠?qū)D像進行分類和回歸,還實現(xiàn)了對目標的實例分割掩膜。
為解決在霧天識別困難的問題,本文在Mask R-CNN的基礎(chǔ)上加入去霧算法,還原出清晰的圖像。HE等[12]提出的暗通道先驗算法(Dark Channel Prior,DCP)在去霧中有良好的表現(xiàn),但該算法計算量較大,去霧之后圖像偏暗,容易發(fā)生局部過亮或局部過暗的情況,如圖2所示。
圖2 暗通道去霧結(jié)果Fig.2 Results of dark channel defogging
在有霧圖像中,霧氣濃度分布往往是不均勻的,因此,本文根據(jù)文獻[13],利用有霧圖像顏色衰減先驗原理,提取圖像在HSV空間亮度分量V(x)和飽和分量S(x)的關(guān)系,定義了一種自適應(yīng)霧濃度分布模型,其表達式為
G(x)=θ0+θ1V(x)+θ2S(x)-εg(x)
(1)
g(x)=edge(I(x))
(2)
式中:θ0=0.121 779;θ1=0.959 710;θ2=-0.780 245;ε為紋理系數(shù);g(x)為Canny算子檢測得到的霧氣濃度紋理分布;edge(·)為檢測函數(shù);I(x)為已知的有霧圖像。
根據(jù)本文提出的自適應(yīng)霧濃度分布模型,采用局部大氣光估計,區(qū)分明暗區(qū)域修正大氣透射率,改善因大氣光估計和透射率估計不準確導(dǎo)致的顏色失真與偏移,并且減少算法計算量,盡可能保證目標檢測運算速率[14]。
2.1.1 修正透射率
HE等提出的暗通道先驗方法是利用暗通道先驗信息粗略估計透射率,再使用軟摳圖算法對透射率細化,計算量大,消耗的時間過長,本文采用導(dǎo)向濾波優(yōu)化透射率,再利用容差機制對透射率修正,引入容差閾值M進行判別。將大氣透射率重新定義為
(3)
2.1.2 優(yōu)化大氣光估計
在圖像去霧時,大氣光估計不準確會導(dǎo)致去霧之后圖像產(chǎn)生局部過亮或局部過暗的問題,因此本文采用局部大氣光估計,相較于全局大氣光估計更加準確。具體方法是首先提取圖像HSV空間的亮度分量,選取兩個不同尺寸的圓形濾波核,做形態(tài)學(xué)閉運算,結(jié)果使用交叉雙邊濾波進行平滑處理,防止大氣光存在的局部過亮問題。形態(tài)學(xué)閉運算如下
A1=close(V(x),C1)
(4)
A2=close(V(x),C2)。
(5)
濾波核半徑分別為C1=min(W,H)/10,C2=min(W,H)/20,單一尺度的濾波核很難適應(yīng)亮度特征不同的圖像,因此本文設(shè)計兩個不同尺寸的形態(tài)濾波核,其中,W,H分別為有霧圖像的寬和高,最終得到的大氣光表達式為
(6)
2.1.3 圖像還原
在圖像處理領(lǐng)域中,有霧圖像數(shù)學(xué)模型被定義為
I(x)=J(x)t(x)+A(1-t(x))
(7)
式中:I(x)為接收到的有霧圖像;J(x)為去霧之后的清晰圖像;t(x)為大氣透射率;A為全局大氣光。
利用文獻[12]暗通道先驗理論,將上述修正后的透射率及大氣光值代入式(7)模型得到去霧之后的清晰圖像J(x),即
(8)
為防止透射率過小、去霧后圖像泛白,所以為透射率t設(shè)置了一個下限t0,取t0=0.1,當t 傳統(tǒng)的特征金字塔網(wǎng)絡(luò)都是由人工設(shè)計的,通過卷積層堆疊和不同分辨率大小特征層融合為目標提供更好的特征提取網(wǎng)絡(luò),Mask R-CNN中的特征金字塔只融合了更深層次的特征,對其他層次的特征并沒有充分融合,并且在信息傳遞的過程中特征信息會有所流失,這樣的網(wǎng)絡(luò)結(jié)構(gòu)并不能達到最優(yōu)的效果。因此,本文使用神經(jīng)架構(gòu)搜索(Neural Architecture Search,NAS)[15-16]的方式,如圖3所示,利用循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)作為控制器。在訓(xùn)練過程中將不同網(wǎng)絡(luò)結(jié)構(gòu)的精確度P作為反饋信號反饋給控制器,并更新控制器中的網(wǎng)絡(luò)結(jié)構(gòu)和精確度。通過不斷迭代實驗,從而得到一個最優(yōu)的特征組合方式。 圖3 神經(jīng)架構(gòu)搜索Fig.3 Neural architecture search 運用上述方式改進后新的特征金字塔結(jié)構(gòu)示意圖見圖4,本文采用ResNet101作為主干網(wǎng)絡(luò),其中,R-C-B表示ReLU-Conv-BatchNorm,{P2,P3,P4,P5,P6}是由ResNet101輸出的不同尺度的特征層,經(jīng)過重新融合之后得到與P2~P6尺寸相同的特征映射圖{N2,N3,N4,N5,N6},在兩個特征層尺寸不同的情況下采用全局池化(Global Pooling,GP)統(tǒng)一分辨率之后逐像素點相加。改進后新生成的特征映射圖融合了更多層次的語義信息,圖像紋理信息保留更加完整,其具體操作如圖5所示。 圖4 改進后的特征金字塔結(jié)構(gòu)示意圖Fig.4 Schematic diagram of the improved feature pyramid structure 圖5 操作流程圖Fig.5 Flow chart of operation 考慮到遙感圖像中目標種類不同,大小各異,每個特征圖上生成固定尺寸、比例的anchor會造成定位偏移或漏檢現(xiàn)象。因此,本文調(diào)整anchor的大小,對不同深度的特征映射圖生成不同尺寸的建議區(qū)域[17]。如表1所示,N2,N3特征圖尺寸相對較大,小目標特征表現(xiàn)明顯,所以在這兩層的特征圖上分別增加了小尺寸的anchor,N5,N6特征圖尺寸較小,因此只生成兩種尺寸偏大的anchor,并將N6層的滑動窗口調(diào)整為5×5,以適應(yīng)大目標的檢測,其余層的滑動窗口保持不變。 表1 各層anchor框尺寸Table 1 Dimensions of anchor boxes on each layer 調(diào)整anchor大小后,每個尺寸的anchor仍然會生成對應(yīng)3種比例(1∶1,1∶2,2∶1)的anchor,其中,勢必也會生成大量重疊冗余的候選框,Mask R-CNN網(wǎng)絡(luò)使用非極大值抑制(NMS)直接過濾得到得分最高的候選框,而遙感圖像中的目標分布較為密集,并且所占像素較小,采用NMS篩選候選框會導(dǎo)致密集目標的漏檢情況,因此本文選擇Soft-NMS篩選候選框,利用線性函數(shù)抑制重疊候選框的得分,提升模型的召回率,即 (9) 式中:Si為檢測得分;M為最大得分檢測框;bi為其余候選框;μ為IoU閾值。 實驗數(shù)據(jù)由DOTA數(shù)據(jù)集[18]以及國內(nèi)研究機構(gòu)制作的同視場環(huán)境下GF-2衛(wèi)星拍攝的遙感數(shù)據(jù)組成,總計5000張,包含飛機、輪船、儲罐、棒球場、網(wǎng)球場、橋梁、車輛等15類目標,平均每張圖像中大約含有7個目標,圖像尺寸從800像素×800像素到4000像素×4000像素不等,涵蓋了霧天和正常天氣狀況的遙感圖像,并使用Labelme對圖像目標進行標注,實驗所用的硬件環(huán)境如表2所示。 表2 實驗環(huán)境Table 2 Lab environment 實驗將各個改進的策略與Mask R-CNN相結(jié)合并進行對比實驗,分析各個方案的效果以及可行性,最后調(diào)整各個方案并分別與Mask R-CNN結(jié)合,對整體的算法進行測評,與其他深度學(xué)習(xí)目標檢測算法進行比較。在對本文改進后的Mask R-CNN算法進行訓(xùn)練時,卷積層采用ReLU激活函數(shù),學(xué)習(xí)率由0.001逐漸降低為0.000 01,衰減系數(shù)設(shè)為0.95,最大迭代次數(shù)設(shè)為4000。 將大約5000張數(shù)據(jù)集圖像隨機劃分,80%作為訓(xùn)練集,20%作為測試集。使用目前較主流的目標檢測算法分別對有霧圖像和清晰圖像進行實驗,并進行比較,實驗選取平均準確率均值(mAP)和檢測速率作為評價指標,實驗結(jié)果如表 3所示。 表3 不同算法的檢測結(jié)果Table 3 Detection results of different algorithms 從表3中可以看出,YOLO,SSD這類基于回歸的一階段目標檢測算法由于不需要生成建議區(qū)域,因此檢測速率快,但是在檢測精度上不如Faster R-CNN,Mask R-CNN和Cascade R-CNN算法。本文算法的檢測精度均優(yōu)于其他幾種傳統(tǒng)目標檢測算法,同時也優(yōu)于YOLOv4 tiny,YOLO X這類最先進的輕量化算法,相較于原始Mask R-CNN算法,對清晰圖像和有霧圖像的檢測精度分別提升了5.37%和18.71%,在加入去霧算法之后,有霧圖像的目標檢測精度得到了明顯提升,由于增加額外計算量,檢測速率稍有下降,但基本不影響實際檢測需求。 霧天場景的檢測實驗結(jié)果如圖6所示。 圖6 加入去霧網(wǎng)絡(luò)的檢測結(jié)果Fig.6 Detection results with the addition of defogging network 由圖6(a)~6(c)可以看出,圖6(a)霧天圖像成像對比度低,圖6(b)直接用Mask R-CNN算法檢測效果較差,很容易造成誤檢和漏檢的情況。圖6(c)在加入暗通道算法去霧之后,雖然檢測結(jié)果得到了改善,但暗通道去霧之后圖像整體偏暗,造成的圖像失真現(xiàn)象會導(dǎo)致識別誤差。圖6(d)為本文算法檢測后的結(jié)果,改進后的算法有效改善了暗通道先驗方法去霧之后圖像偏暗和失真的情況,圖像還原得更加真實,并且識別出的目標輪廓信息更加清晰,掩膜更加完整,減少了漏檢和誤檢的情況發(fā)生。 從主觀角度可以直觀地看出,本文算法有效改善了暗通道去霧之后局部過暗或過亮的情況,但為了進一步驗證本文算法的有效性,從客觀角度出發(fā),實驗選擇新增可見邊e、峰值信噪比(PSNR)和結(jié)構(gòu)相似性(SSIM)作為評價指標,對應(yīng)的數(shù)學(xué)表達式分別為 (10) (11) (12) 與原本HE暗通道先驗算法對比實驗結(jié)果如表4所示,隨機選取不同類別的200張圖像作為測試集,并取這200張圖像的均值作為最終評價標準,綜合分析以上3種評價指標,從表4可以看出,本文算法均取得了更加理想的效果。 表4 基于暗通道去霧的優(yōu)化算法對比Table 4 Comparison of optimization algorithms based on dark channel defogging 為進一步驗證本文改進策略的有效性,選取清晰無霧的圖像對改進前后的Mask R-CNN算法進行分析,結(jié)果如表5所示。 表5 基于Mask R-CNN的優(yōu)化算法對比Table 5 Comparison of optimization algorithms based on Mask R-CNN % 實驗以Mask R-CNN為基礎(chǔ),分別加入不同改進策略分析各個策略對Mask R-CNN檢測結(jié)果的影響,從表5中可以看出,本文對特征金字塔以及區(qū)域建議網(wǎng)絡(luò)改進之后mAP和召回率均有提升,這是由于改進后的特征金字塔結(jié)構(gòu)優(yōu)化了特征信息的傳播路徑,使各個尺度的特征信息得到充分利用,減少圖像紋理信息的流失。并且,改進之后的區(qū)域建議網(wǎng)絡(luò)針對不同尺度的特征映射圖設(shè)計不同尺寸的anchor并且使用Soft-NMS篩選候選框,抑制重疊候選框的得分,使目標回歸更加精準,有效提升了模型的召回率。 對比改進前后圖像可以直觀地看出,原本Mask R-CNN算法由于特征金字塔信息在傳遞過程中流失嚴重,生成的掩膜質(zhì)量較差,候選框回歸有所偏差;如圖7所示,改進后Mask R-CNN算法檢測結(jié)果更加精確,生成的掩膜在細節(jié)上表現(xiàn)更好、質(zhì)量更高,區(qū)域建議網(wǎng)絡(luò)中生成的多尺度anchor尺寸能夠適應(yīng)不同大小的目標,定位也更加準確。 圖7 基于Mask R-CNN的優(yōu)化算法的清晰圖像檢測結(jié)果Fig.7 Detection results of clear images based on optimited Mask R-CNN 針對目前遙感圖像目標檢測中所存在的問題,本文采用改進的 Mask R-CNN 算法對遙感圖像目標檢測進行研究,在Mask R-CNN網(wǎng)絡(luò)中加入了一種基于暗通道先驗的去霧網(wǎng)絡(luò),并對其中的透射率以及大氣光值進行了優(yōu)化,防止暗通道算法去霧之后圖片失真現(xiàn)象,該網(wǎng)絡(luò)解決了霧霾天氣時識別困難的問題,本文改進了特征金字塔結(jié)構(gòu),使得各個尺寸特征信息得到充分利用,并且調(diào)整了區(qū)域建議網(wǎng)絡(luò)中錨框的尺寸,使目標的分類、回歸更加準確,與目前多種目標檢測算法相比較,本文的檢測結(jié)果更加優(yōu)秀,準確率更高。在后續(xù)研究中,將致力于優(yōu)化卷積神經(jīng)網(wǎng)絡(luò),提升目標檢測的精度和速率。2.2 改進的特征金字塔結(jié)構(gòu)
2.3 改進區(qū)域建議網(wǎng)絡(luò)
3 實驗結(jié)果與分析
3.1 實驗設(shè)計
3.2 實驗結(jié)果對比
3.3 霧天場景檢測實驗結(jié)果
3.4 基于Mask R-CNN的優(yōu)化算法對比
4 結(jié)束語