王之博 趙雙明
1 武漢大學(xué)遙感信息工程學(xué)院,湖北 武漢,430079
無人機(jī)具有快速靈活、實時性強(qiáng)的特點[1],常被用作遙感平臺以快速獲取多方位、高分辨率的實景影像。無人機(jī)影像上交通標(biāo)志自動檢測與識別是研究智能交通的重要內(nèi)容[2],對建設(shè)具有真實紋理的三維場景也具有重要的意義[3,4]。同一類型的標(biāo)志通常具有相同的形狀和顏色,這為交通標(biāo)志的檢測和識別提供了便利。
近年來,深度學(xué)習(xí)方法被廣泛應(yīng)用于圖像分類、檢測和分割?;趨^(qū)域的卷積神經(jīng)網(wǎng)絡(luò)(region?based convolution neural network,R?CNN)是第一個可以真正工業(yè)級應(yīng)用的目標(biāo)檢測解決方案。Fast R?CNN[5]、Faster R?CNN[6]、Mask R?CNN[7]都是在此基礎(chǔ)上改進(jìn)的。這類深度學(xué)習(xí)算法將目標(biāo)檢測分為提取候選框和分類兩個步驟,識別錯誤率和漏識別率較低。
交通標(biāo)志的檢測和識別最早可追溯到模板匹配算法[8]。Keller等[9]利用交通標(biāo)志在形狀上對稱性較好的特性,設(shè)計了一種徑向?qū)ΨQ的算子來提取交通標(biāo)志候選區(qū)域,再使用基于Harr小波特征的級聯(lián)分類器對目標(biāo)區(qū)域進(jìn)行分類識別。Ren等[10]在色調(diào)、飽和度、明度(hue saturation value,HSV)顏色空間對圖像進(jìn)行H通道閾值化分割,計算候選區(qū)域形狀在目標(biāo)函數(shù)與模板函數(shù)間的差異,對區(qū)域進(jìn)行歸類。Creusen等[11]首先提取圖像在Ycb Cr空間上的方向梯度直方圖(histogram of oriented gradient,HOG)特征,然后將特征向量輸入訓(xùn)練好的支持向量機(jī)(support vector machine,SVM)分類器,以實現(xiàn)交通標(biāo)志的分類。在德國交通標(biāo)志檢測基準(zhǔn)(German Traffic Sign Detection Benchmark,GTSDB)[12]建立以來,基于深度學(xué)習(xí)的交通標(biāo)志檢測與識別方法得到了發(fā)展,許多研究人員在此數(shù)據(jù)集上進(jìn)行實驗,并達(dá)到了很高的準(zhǔn)確度[13]。在傾斜式無人機(jī)影像中,交通標(biāo)志呈現(xiàn)出尺寸小、形變大、尺度變化大的特點,由現(xiàn)有數(shù)據(jù)集訓(xùn)練得到的模型無法適用于無人機(jī)影像。因此,本文以自制的無人機(jī)影像交通標(biāo)志數(shù)據(jù)集為基礎(chǔ),使用Mask R?CNN算法對6種交通標(biāo)志進(jìn)行像素級的檢測與識別,并對該算法進(jìn)行改進(jìn),提升掩膜的精確度。
Mask R?CNN示意圖如圖1所示。Mask R?CNN檢測算法包括訓(xùn)練模型和使用模型進(jìn)行前向傳播預(yù)測兩個階段。Mask R?CNN網(wǎng)絡(luò)訓(xùn)練包括區(qū)域建議網(wǎng)絡(luò)(region proposal network,RPN)訓(xùn)練,分類器訓(xùn)練、邊框坐標(biāo)回歸和語義分割網(wǎng)絡(luò)訓(xùn)練。在前向傳播時,目標(biāo)定位、目標(biāo)識別及語義分割多任務(wù)同時進(jìn)行。
圖1 Mask R‐CNN示意圖Fig.1 Diagram of Mask R?CNN
Mask R?CNN能夠在一個網(wǎng)絡(luò)框架中同時完成目標(biāo)檢測和實例分割任務(wù)。第一階段提取候選目標(biāo)邊框,第二階段對候選框內(nèi)目標(biāo)進(jìn)行分類、邊框回歸和分割。該算法以Faster R?CNN網(wǎng)絡(luò)為基礎(chǔ),使用RPN結(jié)構(gòu)提取候選框。Mask R?CNN的創(chuàng)新主要有以下兩點:對候選框內(nèi)的特征圖使用感興趣區(qū)(re?gion of interest,RoI)校準(zhǔn)以及實現(xiàn)像素級的對齊。在分類回歸階段,Mask R?CNN增加了一個分割網(wǎng)絡(luò)作為預(yù)測掩碼的分支。Mask R?CNN使用殘差網(wǎng)絡(luò)(residual network,Res Net)提取特征,并且結(jié)合特征金字塔網(wǎng)絡(luò)(feature pyramid network,F(xiàn)PN)提高對小目標(biāo)的檢測能力。
本文采用結(jié)合FPN的Res Net?50[14]作為主干網(wǎng)絡(luò)來提取特征。FPN在處理多尺度檢測問題時表現(xiàn)較好[15]。本文使用RPN生成候選區(qū)域,進(jìn)行分類和回歸,得到區(qū)域變換參數(shù)和前景分?jǐn)?shù)。
在實例分割任務(wù)中,通常以分類置信度作為檢測結(jié)果質(zhì)量的衡量指標(biāo),這個指標(biāo)不能代表分割蒙版的真實質(zhì)量。實例Mask的實際質(zhì)量和完整性沒有參與模型優(yōu)化,會降低模型的評價結(jié)果。實際上,掩膜的質(zhì)量應(yīng)該被量化為預(yù)測值和真實值的交并比(intersection of union,IoU),其計算公式為:
式中,I表示Io U;Sp和Sg分別表示像素級預(yù)測的掩膜和掩膜真值。
本文在Mask R?CNN的基礎(chǔ)上增加了基于掩膜得分的策略,在預(yù)測掩膜的分支上增加了一個網(wǎng)絡(luò)塊來學(xué)習(xí)預(yù)測實例掩膜的質(zhì)量,網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。將預(yù)測的Mask和Ro I特征連接起來作為輸入,網(wǎng)絡(luò)由4個卷積層和3個全連接層組成,卷積層的核大小為3,濾波器個數(shù)為256,全連接層輸出設(shè)置為1 024。使用回歸損失進(jìn)行訓(xùn)練,掩膜得分Sm計算公式如下:
圖2 掩膜預(yù)測網(wǎng)絡(luò)Fig.2 Diagram of Mask Prediction Network
式中,Sc表示分類得分;Si表示邊框回歸得分。
將學(xué)習(xí)任務(wù)分解為掩膜分類和Io U回歸,Sc直接取R?CNN任務(wù)中分類分?jǐn)?shù)。將該網(wǎng)絡(luò)集成到Mask R?CNN中,提高分割模型的性能。該方法同時考慮了語義類別和實例掩膜的完整性,能夠提高掩膜的質(zhì)量和分割精度。
為增大樣本容量,提高模型的泛化能力,本文使用數(shù)據(jù)增廣的策略對自制數(shù)據(jù)集進(jìn)行增強(qiáng),對圖片進(jìn)行隨機(jī)旋轉(zhuǎn)和透視變換[16,17]。
數(shù)據(jù)集為大勢智慧公司提供的2 000張包含道路交通標(biāo)志的城市地區(qū)無人機(jī)影像。對2 000張原圖進(jìn)行旋轉(zhuǎn)、透視變換和重采樣操作,旋轉(zhuǎn)角度在?10°~+10°,90°,180°間隨機(jī)選取,透視變換角度在左上方、正上方、右上方隨機(jī)選取,重采樣縮放倍數(shù)在0.7~1倍中隨機(jī)選取。實驗訓(xùn)練數(shù)據(jù)有無人機(jī)影像訓(xùn)練數(shù)據(jù)3 000張,測試數(shù)據(jù)600張。圖3是訓(xùn)練樣本的示例。本文使用數(shù)據(jù)標(biāo)注工具VIA對交通標(biāo)志的邊界以及類別進(jìn)行標(biāo)注。
圖3 訓(xùn)練樣本示例Fig.3 Training Samples
實驗使用的深度學(xué)習(xí)框架為torch1.0,顯卡為RTX 2070。首先用Co Co數(shù)據(jù)集對主干網(wǎng)絡(luò)ResNet?50進(jìn)行預(yù)訓(xùn)練,然后在自制數(shù)據(jù)集上對模型繼續(xù)訓(xùn)練,訓(xùn)練時長約7 h。
從測試集中選取部分圖像進(jìn)行測試,結(jié)果如圖4所示,可以看出,對于不同尺度的交通標(biāo)志,此算法均有較好的檢測效果。在無人機(jī)影像被分割為小塊的過程中,部分位于裁剪框邊緣的標(biāo)牌只能保留部分區(qū)域,如圖4(e)所示,檢測結(jié)果也表明此算法對不規(guī)則形狀檢測的魯棒性較好。交通標(biāo)志的檢測錯誤主要集中在誤檢上,如在圖4(f)中,集裝箱的側(cè)面被誤檢為交通標(biāo)志。在測試過程中發(fā)現(xiàn),影響精確度的主要原因為誤檢,干擾包括車輛、路旁堆積物等。部分尺度較小的交通標(biāo)志在影像中失去了細(xì)節(jié)特征,無法進(jìn)一步對標(biāo)志進(jìn)行分類,也是檢測錯誤的原因。此外,影像中尺寸較小的標(biāo)志往往沒有清晰的邊界,實例分割的結(jié)果也存在微小偏差。
圖4 檢測結(jié)果Fig.4 Test Results
Mask R?CNN檢測結(jié)果與本文算法檢測結(jié)果的對比如圖5所示,可以看出,本文算法在交通標(biāo)志邊界的提取上更加精確。在Mask R?CNN預(yù)測掩膜的分支中增加掩膜得分的策略,依據(jù)真實的掩膜質(zhì)量對網(wǎng)絡(luò)進(jìn)行訓(xùn)練,能夠使模型的掩膜預(yù)測更加精準(zhǔn),明顯提高掩膜的質(zhì)量。
圖5 Mask R‐CNN檢測結(jié)果與本文算法檢測結(jié)果對比Fig.5 Comparison of the Results Obtained by Mask R?CNN and the Proposed Algorithm
在一個檢測任務(wù)中,通常統(tǒng)計測試集的平均精度均值(mean average precision,mAP)作為結(jié)果精度的實際度量標(biāo)準(zhǔn)。在GTSDB和本文數(shù)據(jù)集中分別取600張測試數(shù)據(jù)對兩種訓(xùn)練模型進(jìn)行精度評定,統(tǒng)計其mAP50。計算結(jié)果見表1,可以看出,在GTSDB數(shù)據(jù)集上,相較于Mask R?CNN,本文算法精確度有所提升。由于無人機(jī)影像地物干擾較多,交通標(biāo)志尺度變化大,兩種算法的精確度較地面近景攝影獲取的數(shù)據(jù)精度低。在自制數(shù)據(jù)集上,使用深度學(xué)習(xí)提取無人機(jī)影像中道路交通標(biāo)志的精確度在90%左右。增加掩膜得分策略的Mask R–CNN改進(jìn)了掩膜質(zhì)量的判別方式,以掩膜真值與預(yù)測值的差異來訓(xùn)練網(wǎng)絡(luò),有更高的精確度。兩種數(shù)據(jù)集的圖像大小一致,除去模型載入的時間,一張分辨率為1 024×800的圖像的處理時間均在0.48 s左右。
表1 Mask R‐CNN與本文算法的精度/效率統(tǒng)計Tab.1 Statistics of Accuracy and Efficiency of Mask R?CNN and the Proposed Algorithm
本文針對無人機(jī)遙感影像中交通標(biāo)志提取時遇到的形變大、尺度變化大的問題,采用Mask R?CNN在檢測和識別交通標(biāo)志的同時,實現(xiàn)像素級的分割,取得了較好的檢測效果。針對交通標(biāo)志數(shù)據(jù)集較小的問題,提出使用透視變換數(shù)據(jù)增廣的策略增加數(shù)據(jù)集。針對小目標(biāo)邊緣模糊造成的掩碼不精確的問題,增加基于掩膜得分的策略,改善預(yù)測邊界的質(zhì)量。本文方法可被應(yīng)用于其他地物的無人機(jī)影像目標(biāo)檢測與輪廓提取中。但是該方法還存在一些問題,例如,對高分辨率無人機(jī)影像檢測耗時較長,對弱光照和陰影區(qū)域檢測失效。