院老虎,翟柯嘉,張澤鵬,宋 瑞
(沈陽航空航天大學 航宇宇航學院,遼寧 沈陽 110136)
目標檢測作為計算機視覺領域的研究熱點之一,已廣泛應用于自動駕駛[1-2]、人臉識別[3-4]和其他領域[5-6]。隨著空間遙感技術的不斷發(fā)展,人們獲得了大量的空間遙感圖像數(shù)據(jù),遙感圖像與常規(guī)圖像相比不僅存在著環(huán)境背景復雜、目標物尺度多樣和目標物種類復雜等缺點,而且易受云、霧等干擾信息的影響。如何快速準確地處理復雜環(huán)境下的遙感數(shù)據(jù),檢測出圖像中目標的類別和位置等信息是當前研究的熱點和難點。飛機在國家的軍用和民用方面扮演著重要的角色,對于霧天飛機遙感圖像目標檢測的研究意義更為重大。
近年來,隨著大數(shù)據(jù)和人工智能的迅速發(fā)展,大量優(yōu)秀的目標檢測算法被提出。在2014年,Girshick等[7]提出了R-CNN(Regions with Convolutional Neural Network Features)算法,基于遷移學習的方式將CNNs引入目標檢測領域,進行了對常規(guī)數(shù)據(jù)集的目標檢測任務,隨后在2015年,Ren等[8]提出了Faster R-CNN算法,這類算法使用候選區(qū)域方法創(chuàng)建感興趣區(qū)域,候選區(qū)域采用卷積神經(jīng)網(wǎng)絡RPN(Region Proposal Network)推薦,不再使用之前的Selective Search算法,其在PASCAL VOC2007[9]數(shù)據(jù)集上的平均檢測精度提高到了73.2%。2016年,Redmon等[10]提出了無區(qū)域建議的YOLO(You Only Look Once)方法,網(wǎng)絡包含了2個全連接層和24個卷積層,該算法是將測試圖像劃分成很多個網(wǎng)格,在每個網(wǎng)格位置上預測n個邊界框,這種預測方法檢測速度得到提高,但對鄰近目標的檢測效果較差,檢測精度低于Fast R-CNN及Faster R-CNN方法。這些目標檢測算法被國內(nèi)外研究學者廣泛應用于遙感圖像目標檢測領域和去霧領域。
Cao等[11]基于RCNN模型[12]進行飛機檢測,使用Selective search算法[13]提取候選區(qū)域,并采用深層CNN進行分類,從而提取出較符合圖像本質的特征。Sun等[14]基于Saliency Map方法削減了候選區(qū)域的數(shù)量,通過彈性變換和透視變換方法擴展了數(shù)據(jù)集。Wu等[15]利用BING-CNN的方式實現(xiàn)了對飛機目標的快速識別,在檢測精度優(yōu)于HOG-SVM、DBN等模型的同時,平均檢測速度也得到了提高。Li等[16]基于預訓練的VGG-16網(wǎng)絡,對比了FCN、Faster R-CNN和The proposed method三種模型的性能,采用的The proposed method實現(xiàn)了94.55%的檢測精確率,平均檢測速度提高3 fps。Wang等[17]提出針對飛機目標檢測的ATRPN R-CNN(Aircraft Targets Region Proposal Network),使用ResNet-50網(wǎng)絡提取區(qū)域特征,隨后特征進入ATRPN候選框,使用ROI池化層生成特定長度向量以計算目標的置信度和候選框的位置。這些方法均在原始算法的基礎上提出了自己的改進方法來提高檢測的精確率和速度。
國內(nèi)針對霧天遙感圖像的研究也逐漸興起。周明非等[18]結合FCN[19]與CNN,提出弱監(jiān)督深度神經(jīng)網(wǎng)絡(Weakly Supervised Deep Neural Network,WS-DNN),使用弱監(jiān)督FCN融合滑窗法提取候選區(qū)域,通過預訓練方式獲取更深的CNN模型進行分類,提高了檢測精度。侯偉寧[20]將深度學習引入到遙感圖像去霧和艦船的目標檢測任務上去,建立對偶式生成對抗網(wǎng)絡完成去霧,對感興趣區(qū)域采樣進行艦船目標檢測。汪昱東等[21]提出了一種改進的霧天圖像行人和車輛檢測算法,在檢測網(wǎng)絡中引入霧濃度判別模塊,實現(xiàn)了行人和車輛在霧天圖像中的檢測。郭青山[22]使用Dehaze Net對圖像進行去霧,對航拍車輛基于卷積神經(jīng)網(wǎng)絡SSD進行了檢測。李文斌等[23]提出了基于卷積神經(jīng)網(wǎng)絡遙感圖像飛機目標檢測模型DC-DNN,該模型具有較好的檢測性能和泛化能力。
以上研究方法存在以下不足:(1)去霧處理過程復雜、繁瑣、耗費時間;(2)缺乏霧天環(huán)境下飛機目標檢測的數(shù)據(jù)集,易造成過擬合和欠擬合現(xiàn)象。針對以上不足,本文利用暗通道先驗算法復原原理對常規(guī)飛機目標圖像進行霧氣模擬,生成了兩種不同霧氣狀態(tài)程度的霧天圖像,建立了一個專用于霧天狀態(tài)下飛機目標檢測的數(shù)據(jù)集,保證霧天數(shù)據(jù)充足,提高了網(wǎng)絡特征的提取質量。為了評估霧氣模擬方法的效果,使用暗通道先驗算法[24]和多尺度Retinex(Retina and Cortex)算法[25]進行驗證,觀察去霧圖像與原始圖像的區(qū)別,以此證明模擬霧氣圖像數(shù)據(jù)的可信度。基于Faster R-CNN網(wǎng)絡模型直接對霧氣圖像進行訓練,探究霧氣模擬數(shù)據(jù)對檢測精度的影響。
本文提出了一種結合暗通道先驗算法和Faster R-CNN模型的霧天條件下飛機目標檢測方法,以實現(xiàn)霧天條件下飛機目標的檢測任務。本文整體流程如圖1所示。先使用霧氣模擬方法獲得飛機目標霧氣模擬圖像,創(chuàng)建了霧氣圖像數(shù)據(jù)集;通過暗通道先驗算法及多尺度Retinex算法對霧氣模擬圖像進行去霧處理,證明霧氣模擬圖像數(shù)據(jù)的可信度;最后基于Faster R-CNN網(wǎng)絡模型對霧氣模擬圖像數(shù)據(jù)集以及未添加霧氣模擬圖像的數(shù)據(jù)集進行訓練,檢測霧氣模擬數(shù)據(jù)集對網(wǎng)絡模型的影響效果。
圖1 目標檢測流程
暗通道先驗算法是基于圖像復原原理對遙感圖像進行去霧預處理的。圖像復原指的是借助某些先驗知識,使用數(shù)學公式將圖像退化過程的物理模型表示出來,恢復其原來的內(nèi)容或質量。暗通道是指在一些區(qū)域里的一些像素會有至少一個最低值的顏色通道,這個區(qū)域內(nèi)的光強度值極小。暗通道的定義如下:
其中,Jc是圖像的一個顏色通道,Ω(x)表示以圖像坐標x為中心的局部窗口(模塊)。暗通道先驗算法的理論基礎是大氣散射模型[26],國際上廣泛采用的大氣散射模型數(shù)學表達式如式(3)所示,用于描述霧霾的形成。
其中,I(x)是有霧圖像,J(x)是去霧圖像,t(x)是透射率,A是大氣光強度。
全局大氣光值A的計算,通過獲取真實霧天圖像的暗通道圖像,對圖像像素進行統(tǒng)計,選擇像素中最亮的部分,將其與原始霧天圖像一一對應,選取最大灰度圖的像素點值作為大氣光值。
大氣透射率預估值計算公式如下:
其中,w表示去霧水平的參數(shù),本研究設置w的值為0.95[24]。
對于圖像的霧氣模擬操作,首先收集一些不同程度的真實霧天圖像,部分真實霧天圖像如圖2所示,應用式(4)計算其透射率t~(x),假設空氣中的介質是均勻的,則透射率t(x)取決于場景到相機的距離l(x)
圖2 真實霧天圖像
其中,β表示衰減系數(shù),通過改變β的大小可調(diào)節(jié)霧氣的濃度,本文對輕霧圖像的β區(qū)間設定為0.1至0.2,濃霧圖像為0.2至0.3。隨后調(diào)整無霧圖像的全局大氣光值,范圍為150至255。由于每張圖片的像素分布均不同,設定固定的全局大氣光值,效果會較差。因此對每張圖像嘗試不同的透射率以及全局大氣光值,使用式(3)去生成兩種不同程度的霧氣狀態(tài):輕霧和濃霧。圖3展示了霧氣模擬方法制作的一組示例圖片,其中,圖3(a)至圖3(c)分別為原始圖像、輕霧圖像和濃霧圖像。
圖3 霧氣模擬圖像
Faster R-CNN目標檢測算法,不再使用傳統(tǒng)的滑動窗口和selective search算法,而是直接使用RPN(Region Proposal Network)生成檢驗框,對于檢驗框的生成速度做了極大提升。近幾年國內(nèi)外學者常用的目標檢測算法的識別時間以及平均精確率趨勢,對比結果如圖4所示,其橫軸表示識別時間,縱軸MAP表示每個類的AP(Average Precision)值的平均值。為了驗證霧氣模擬圖像的加入對檢測結果的影響,本文選取了常用的Faster R-CNN目標檢測算法進行檢測驗證,F(xiàn)aster R-CNN具體結構如圖5所示。
圖4 各算法MAP和識別時間
圖5 Faster R-CNN結構
對于訓練網(wǎng)絡的選取,由于本文目前旨在研究霧氣模擬圖像的加入對檢測結果的影響,因此本文選取經(jīng)典的VGG-16網(wǎng)絡,后續(xù)研究會著重對特征提取網(wǎng)絡做出對比優(yōu)化。本文使用VGG-16網(wǎng)絡的3個全連接層和13個卷積層,圖像特征提取放在卷積層和池化層,分類放在全連接層。此VGG-16模型具有網(wǎng)絡層數(shù)多、特征提取效果佳、分類效果好的特點,能夠較好地完成遙感圖像中的分類任務。該網(wǎng)絡結構表示為C-C-P-C-C-P-C-C-C-P-C-C-C-P-CC-C-P-FC-FC-Dr-FC,其中C、P、Dr、FC分別代表卷積層、池化層、刪除層和全連接層。其詳細各層參數(shù)見表1,結構圖如圖6所示。
表1 VGG-16網(wǎng)絡參數(shù)
圖6 VGG-16網(wǎng)絡結構
本文采用國內(nèi)兩所大學分別收集的數(shù)據(jù)集(西北工業(yè)大學收集的NWPU VHR-10[27]數(shù)據(jù)集和武漢大學團隊制作的RSOD-Dataset[28]數(shù)據(jù)集),從兩個數(shù)據(jù)集中隨機選取500張飛機目標圖像作為數(shù)據(jù)集的一部分。
對于網(wǎng)絡模型性能的檢測,使用了兩個不同的數(shù)據(jù)集。
(1)數(shù)據(jù)集1:對500張原始圖像(未添加霧氣模擬的圖像)旋轉三次,每次90°,一共得到了2 000張不同角度的圖像(0°,90°,180°和270°)。隨后使用隨機裁剪的方式擴展1 000張圖像。數(shù)據(jù)集1一共有3 000張圖片。
(2)數(shù)據(jù)集2:該數(shù)據(jù)集擁有1 000張1.1節(jié)方法制作的霧氣模擬圖像和2 000張不同角度的原始圖像(與數(shù)據(jù)集1的角度分布相同)。
為了降低誤檢測率、誤識別率,提高網(wǎng)絡模型的泛化能力,對每個數(shù)據(jù)集擴充了3 000張均采集于機場背景地面負樣本。本文數(shù)據(jù)集按照7∶3的比例劃分,隨機抽取4 200張圖像作為訓練數(shù)據(jù),1 800張圖片作為測試數(shù)據(jù)。
數(shù)據(jù)集2相對于數(shù)據(jù)集1增加了霧氣模擬方法制作的飛機目標霧氣模擬圖像,保證了網(wǎng)絡模型對于霧氣狀態(tài)下飛機目標的訓練數(shù)據(jù)充足,可提高Faster R-CNN網(wǎng)絡特征的提取質量,使得網(wǎng)絡對飛機目標霧氣圖像有更好的訓練,有益于提升霧天飛機目標的檢測識別效果。
為了證實所提霧氣模擬方法的有效性,采用暗通道先驗算法和多尺度Retinex算法兩種不同的去霧算法對霧氣模擬圖像進行去霧,把去霧后的圖像與原始圖像進行對比驗證。圖7是使用暗通道先驗算法去霧的驗證對比結果。由于本文使用暗通道先驗算法圖像復原原理模擬霧氣,因此再次使用該算法進行去霧時,發(fā)現(xiàn)去霧圖像和原始圖像僅存在亮度區(qū)別,亮度不同則是由于修改了原始圖像的全局大氣光值導致。圖8展示了使用多尺度Retinex算法的驗證對比結果,顯示去霧圖像與原始圖像無差別。通過兩種算法將去霧后的模擬圖像和真實圖像對比驗證后發(fā)現(xiàn)效果一致,證明了飛機目標霧氣模擬生成結果的可信度。
圖7 暗通道先驗算法對比結果
圖8 多尺度Retinex算法對比結果
對比目前常用的目標檢測方法,發(fā)現(xiàn)Faster R-CNN的平均精確率優(yōu)于其他算法,且Faster RCNN將特征提取、proposal提取、Bounding Box Regression、Classification整合到了一個網(wǎng)絡中,提升了目標檢測速度,其檢測精度較高,更適合本文研究。因此,本文基于1.2節(jié)所提的Faster RCNN檢測框架進行檢測,觀測所提數(shù)據(jù)集的創(chuàng)建對不同霧氣濃度環(huán)境下飛機目標檢測精度的提升效果。
圖9、10分別展示了數(shù)據(jù)集1原始圖像正確的檢測結果和霧天圖像錯誤的檢測結果;圖10中的前4張圖片均為錯誤的目標也就是誤報,其中有十字形狀的物體、機場連廊等目標,這些目標均在一定程度上與飛機的某個部位形狀相似。后兩張圖片目標正確,但是預測框與真實目標大小不符,因此也標記為錯誤。
圖9 數(shù)據(jù)集1部分原始圖像正確檢測結果
圖10 數(shù)據(jù)集1霧天圖像的誤檢效果
本文網(wǎng)絡模型在對新建立的專用于霧天狀態(tài)下飛機目標檢測的數(shù)據(jù)集訓練檢測時,直接對霧天圖像進行了訓練,摒棄了以往霧天條件下目標檢測復雜、繁瑣、耗費時間的去霧處理過程,有效優(yōu)化了霧天狀態(tài)下飛機目標難以檢測的問題。
在測試數(shù)據(jù)不變的情況下,數(shù)據(jù)集1訓練的網(wǎng)絡檢測誤報的霧天圖像在數(shù)據(jù)集2訓練的網(wǎng)絡中的檢測結果如圖11所示,未存在誤檢、誤報情況。由于數(shù)據(jù)集2加入了霧天模擬圖像,F(xiàn)aster R-CNN檢測網(wǎng)絡對霧天圖像做了更深刻的學習訓練,有效減少了對于霧天環(huán)境下飛機目標誤報、漏報的情況。數(shù)據(jù)集2在對于霧天圖像飛機目標檢測方面有較大提升。
圖11 數(shù)據(jù)集2霧天圖像檢測結果
為了評估網(wǎng)絡的訓練效果,本文從檢測精度角度考慮,使用VOC2017的評價標準,評估參數(shù)如表2所示。
表2 評估參數(shù)
精確率表示的是預測結果的檢測中真正是檢測目標的比例,它表示的是在對目標類別的判定能力上檢測模型的表現(xiàn)。精確率計算公式為
召回率表示的是包含目標的圖像成功被檢測出來的比例,它是對檢測識別目標在檢測模型上檢測能力的衡量,召回率計算公式為
平均精確率計算公式則為
本文對兩個數(shù)據(jù)集進行訓練檢測來分別計算其平均精確率,結果如表3所示。
表3 平均精確率結果 %
表3中數(shù)據(jù)集1對原始圖像的檢測平均精確率為83.4%,輕霧狀態(tài)時仍然有52.7%的平均精確率,在濃霧時為28.9%。數(shù)據(jù)集2比數(shù)據(jù)集1多了霧天模擬圖像,因此對霧天圖像的識別性能更為優(yōu)秀,在輕霧時檢測平均精確率從52.7%提高到了57.9%,濃霧時則從28.9%提高到了32.4%。由于數(shù)據(jù)集2的常規(guī)圖像數(shù)量較少(僅有2 000張,而數(shù)據(jù)集1有3 000張),因此對常規(guī)圖像的識別性能則略有下降。
本文解決了霧天飛機目標遙感圖像數(shù)據(jù)不足、去霧處理復雜繁瑣的問題,使用暗通道先驗算法對常規(guī)飛機目標遙感圖像進行霧氣生成,創(chuàng)建了霧天遙感圖像數(shù)據(jù)集。通過提取不同程度的模擬霧天圖像,使用兩種去霧算法去霧后,模擬圖像并未出現(xiàn)失真等問題。模擬圖像去霧后和原始圖像沒有差別,證實了霧天模擬數(shù)據(jù)集的可信度。
基于Faster R-CNN檢測實驗結果顯示霧天模擬圖像數(shù)據(jù)集訓練的網(wǎng)絡提高了對于霧天圖像的識別性能。輕霧圖像的平均識別精確率提高5.2%,濃霧圖像提高3.5%。該數(shù)據(jù)集創(chuàng)建方法可用于飛機目標遙感圖像去霧領域及霧天遙感圖像飛機目標檢測更深層次的研究。本文研究的目標類別只有飛機一種且僅使用Faster R-CNN檢測算法驗證數(shù)據(jù)集的可信度,后續(xù)的工作會增加目標物的類別,使用多種改進目標檢測模型算法,對目標檢測速度及精度做出提升,使其可應用于日常生活中霧天目標的檢測。