趙亮 馬旺葉 楊雯彥 曹媛媛
【摘 要】本文提出了一種基于Mask R-CNN實現(xiàn)船舶檢測的方法,通過在網(wǎng)絡訓練過程中隨機采樣目標像素到背景中的其他位置,改善了目標與背景不平衡的問題。對比分析基礎模型與本文方案,檢測與分割的精度都有了顯著的提升。
【關鍵詞】Mask R-CNN;船舶;檢測;分割
中圖分類號:O436 文獻標識碼: A 文章編號: 2095-2457(2019)30-0024-002
DOI:10.19694/j.cnki.issn2095-2457.2019.30.011
Satellite Image Ship Detection Based On Mask R-CNN
ZHAO Liang MA Wang-ye YANG Wen-yan CAO Yuan-yuan
(School of Geomatics and Marine Information
【Abstract】In this paper, a method based on Mask R-CNN was proposed to realize ship detection. By randomly sampling the target pixels to other positions in the background during network training, the imbalance between the target and the background was improved. By comparing and analyzing the basic model and the scheme in this paper, the accuracy of detection and segmentation has been significantly improved.
【Key words】Mask R-CNN; Ship; Detection; Segmentation
0 引言
海運承擔著國際貿(mào)易進出口的重要任務,根據(jù)衛(wèi)星影像獲得船舶的位置與大小具有重要的軍事與商業(yè)作用。衛(wèi)星影像船舶檢測主要有以下兩個難點:(1)樣本不均衡的問題,通常數(shù)據(jù)集中的船舶數(shù)量與像素占比較少,樣本不均衡使得檢測模型更關注較大的目標,忽略較小的船舶,容易造成漏檢與誤檢。(2)由于目標覆蓋的區(qū)域較小,造成船舶的位置缺少多樣性,模型在驗證通用性時變得困難。
當前深度學習檢測算法利用圖像的多層特征優(yōu)化對小目標檢測的精度,主要有:Tsung-Yi Lin等[1]提出的圖像金字塔網(wǎng)絡(FPN),通過對訓練圖片上采樣出多尺度的圖像金字塔,增強小目標的細粒度特征,優(yōu)化定位和識別效果。第二種方法為逐層預測,即對卷積神經(jīng)網(wǎng)絡抽取的每層特征圖輸出進行一次預測,綜合考量得出結果[2]。以上兩種方法對于硬件算力有極高的要求,且不是專門針對船舶檢測而設計的,模型的魯棒性較差。
本文提出的方法,在模型訓練過程中將船舶目標特征圖隨機采樣復制到同批次中的其他圖像背景中,改善不平衡問題的同時,模型需要的計算量也沒有增加。實驗證明,即使像素占比非常小的船舶,檢測與分割的精度也得到了有效的提升。
1 算法模型
本文方法基于Mask R-CNN目標檢測框架修改而來,Mask R-CNN是在Faster R-CNN的基礎上增強了一個平行的small FCN(全卷積網(wǎng)絡)分支,以獲得目標的輪廓定位,從而實現(xiàn)準確的分割。因此基于本文方法,可以同時獲得船舶目標檢測與實例分割結果。
圖1 small FCN結構圖
為了適應船舶檢測的需要,本文對模型做了針對性的改進。首先,預處理數(shù)據(jù),采用傳統(tǒng)的語義分割模型,獲得海水與船舶的大致邊界信息并傳入訓練網(wǎng)絡;其次對船舶標注圖像聚類分析獲取船舶大小的分布數(shù)據(jù),確定了檢測過程不同大小檢測框的數(shù)量;然后在網(wǎng)絡訓練過程中,上采樣船舶特征矩陣,對抗網(wǎng)絡(GAN)生成船舶的相似特征圖,最后基于邊界信息復制到同批次訓練數(shù)據(jù)的背景中,確保不會產(chǎn)生船舶重疊。
本文方法同樣考慮到不同的IoU(交并比)閾值對于樣本的選取產(chǎn)生的影響,使用了漸進IOU的方法,在特征金字塔的每一層添加多個檢測頭,逐漸提高IOU的閾值,確保不會漏掉可能的船舶目標。
2 實驗結果與分析
實驗數(shù)據(jù)選自Kaggle提供的28G衛(wèi)星遙感船舶影像數(shù)據(jù),共5000張,按照4:1的比例劃分為訓練集于測試集,在Google Clob平臺上利用Tensnorflow 深度學習框架實現(xiàn),訓練了25批次后,網(wǎng)絡的損失趨于穩(wěn)定,部分檢測結果如下圖所示:
圖2 檢測與分割成果
為了測試本文方法的精度,從原始數(shù)據(jù)中重新隨機抽取了200個目標測試數(shù)據(jù)。分別基于未改進的MaskR-CNN(文獻[1]方法)與本文方法進行測試。目標檢測常用準確率(P)、召回率(R)評價模型的精度,計算公式為:
P=TP/(TP+FP)
R=TP/(TP+FN)=TP/P
其中,TP:被正確地劃分為船舶的實例個數(shù);FP:被錯誤地劃分為船舶的個數(shù);FN:被錯誤地劃分為海水背景的個數(shù)。同時計算分割結果與原始標注的像素相交面積比,得到分割的精度AP。
計算結果如表1所示。
從表1中可以看出,改進后的模型與文獻[1]方法相比,準確率提升了約7%,同時召回率也提升了5%,由于原始的樣本標注精度不夠,對于檢測的效果提升不大,僅有3%??傮w上看,基于本文方法可以有效的提升船舶檢測與分割的精度,且模型無需額外的計算開銷。
表1 檢測與分割精度表
3 結論
本文基于船舶檢測過程中目標與背景的不均衡提出了一種改進的Mask R-CNN檢測算法,分析了改進前后獲得的檢測與分割精度,在沒有增加訓練樣本與重新標注的情況下檢測精度有了顯著提高。由于時間和硬件條件,本文只分析了少量樣本下的檢測情況,接下來將會增加訓練數(shù)據(jù)研究本文的改進方法對于其他檢測框架的精度提升。
【參考文獻】
[1]He Kaiming,Gkioxari Georgia,Dollar Piotr,Girshick Ross. Mask R-C·NN[J].IEEE transactions on pattern analysis and machine int1elligence,2018.
[2]羅巍,陳曙東,龔立晨.基于深度學習的無人機遙感影像船舶檢測方法[J].船舶物資與市場,2019(04):25-28.