施澤浩,趙啟軍
(四川大學 計算機學院 視覺合成圖形圖像技術國防重點實驗室,四川 成都 610065)
在邁向更為復雜的圖像理解中,需要的不僅是圖像里有什么物體,更需要知道物體的具體位置,因此目標檢測就顯得尤為重要[1]。相比于特定目標的檢測,如人臉檢測、行人檢測、車輛檢測,通用目標檢測需要檢測的物體類別眾多,類別之間距離大,難度大大增加,以至于傳統的滑動窗口加分類器的一般檢測流程難以駕馭。近年來,深度學習[2]不斷在圖像識別上取得突破,受到國內外研究人員的高度關注。自2013年以來深度學習開始應用到目標檢測領域。相比于圖像識別任務,目標檢測任務更為復雜。首先,一幅圖像中通常不只一個目標出現。其次,目標檢測需要精確的包圍框(bounding box)定位目標并對其進行分類。現有基于卷積神經網絡[3]的目標檢測算法普遍網絡結構臃腫,要實際應用還需克服速度慢、模型參數巨大等不足。為此,提出一種基于全卷積結構的目標檢測算法。
早期的HOG+SVM或者DPM等傳統算法[4-8],都是采用手工設計特征、滑動窗口加簡單分類器的設計,在行人檢測、人臉檢測等單目標檢測中效果較好,但是對多目標檢測則比較局限。卷積神經網絡由于其強大的表達能力,近年來在目標檢測領域表現大大超越了傳統算法。基于深度學習的目標檢測算法可以分為兩大類,一類是基于可能區域,另一類是基于直接回歸。
2013年Girshick R等提出基于可能區域的RCNN算法[9],先采用其他算法提取可能的目標區域,再用卷積網絡對每個區域進行特征提取與邊框回歸,由于可能區域數目較大,每個區域都需要進行一次前向傳播,算法效率十分低下。2015年Girshick R等針對RCNN的這一缺點,提出了Fast RCNN[10],使用感興趣區域池化層(ROI pooling),在特征圖(feature map)上對每個區域進行特征選擇,得到統一長度的特征后合并,統一送入后續網絡。2015年Ren S等提出了Faster RCNN[11],進一步將可能區域的提取集成到網絡中,設計了預定義框(anchor)機制,使得檢測任務變成端到端,不需要額外的可能區域的提取過程。
2016年Redmon J等提出了基于回歸的YOLO算法[12],針對基于可能區域的方法速度慢這一問題,采用回歸的方法,直接回歸出目標的BBox與類別,犧牲了一部分精度,但是速度更快。由于使用了全連接層輸出預測結果,YOLO模型的參數巨大。
2015年Long J等提出基于全卷積網絡的圖像分割算法[13],證明了全卷積網絡在圖像分割中的有效性。
基于可能區域的方法精度較高,但是網絡復雜臃腫,速度慢。基于直接回歸的方法雖然犧牲了部分精度,但是速度快,更能滿足實際應用的實時性需求。文中提出的算法是采用直接回歸的方法,不同于YOLO的是采用了全卷積結構,減小了模型的參數量和過擬合的風險,同時借鑒了Faster RCNN的anchor機制,設計了一個多任務的損失函數,減小直接回歸的難度。
算法采用基于回歸的方法,直接以圖像為輸入,通過優化給定的目標函數,網絡可以預測輸出圖像中目標的類別與BBox,是一種端到端的結構。這種結構的主要優點是速度快。
不同于YOLO的是用卷積層代替全連接層做預測輸出。如圖1(a),YOLO采用全連接層(FCDet層)進行回歸預測,通過對下層信息的融合直接輸出目標的BBox和類別信息。而文中算法采用anchor機制,用卷積層(ConvDet層)輸出目標信息,如圖1(b)。
卷積神經網絡是人工神經網絡的一種,在圖像領域具有廣泛的應用。一般的卷積神經網絡包括卷積層、池化層、全連接層。而全卷積網絡,只包含卷積層和池化層。全卷積網絡的優點包括:

圖1 模型對比
(1)全連接層對特征圖上每個像素點同等對待,提取了全圖信息,包括背景信息。而全卷積的特征圖上每個像素只提取了其對應的圖像感受野內的信息,減少了無關背景的干擾。
(2)全連接層參數多,而卷積層參數少,不容易過擬合。
(3)全卷積網絡能適應不同的輸入大小。
預定義框機制是在卷積輸出的特征圖上的每個像素位置上設置一組不同大小、不同長寬比的預定義框,如圖2所示。通過選擇與目標IOU最大的一個預定義框進行目標函數優化。ConvDet層將在每個像素位置同時輸出各個預定義框的位置和尺寸的調整量(δx,δy,δw,δh),是否含有目標的分數Score,還有屬于各個類別的概率Class。最后通過非極大值抑制(non-maximum suppression)得到最終的目標檢測框。文中算法通過對訓練集的標簽框做K均值聚類(k-means clustering)得到9個預定義框。

圖2 預定義框機制
算法的損失函數是一個多任務損失函數,包括邊框回歸、anchor得分回歸,還有分類的交叉熵損失。
(1)
Lbbox部分處理邊框回歸。其中,λbbox是該部分損失的權重系數;Nobj是出現的目標個數;K是anchor的個數;Ik∈{0,1}指示了與目標IOU最大的anchor,只取IOU最大的anchor參與loss計算;X是一個四維向量(δx,δy,δw,δh),是anchor的修正量。


實驗采用VOC2007和VOC2012目標檢測數據庫[14],含有二十類物體。VOC數據庫分為訓練集、驗證集和測試集,只允許用訓練集和驗證集做訓練,不允許使用外部數據。訓練集總共有16 541張圖片,并在VOC2007的測試集上進行測試。
IOU(intersection over union,交并比),AP(average precision,平均準確率),mAP(mean average precision,平均準確率均值)是評價目標檢測算法的三個主要參數。IOU表示目標的檢測框與目標的標簽框交面積與并面積的比率。AP和mAP的計算公式如下:
(2)
(3)
其中,b為檢測框;bgt為標簽框;N為測試集的標簽框總數;C為類別數20。
在VOC2007測試集上的測試結果見表1。可見,文中算法的速度約是Faster RCNN的7.5倍,平均準確率和速度均超過了基于回歸框架的YOLO。檢測結果見圖3。

表1 實驗結果
Faster RCNN與YOLO的網絡結構均采用了全連接層,其中全連接層分別占了約80%與72%的參數。而文中算法采用全卷積結構,模型約為Faster RCNN的四分之一,YOLO的十分之一,僅為103 MB。表2對比了各個算法的模型大小。

表2 模型大小

圖3 部分檢測結果
為解決現有目標檢測算法模型參數大、速度慢等缺點,提出一種基于全卷積網絡的目標檢測算法。該算法利用預定義框機制,用卷積層代替全連接層進行結果預測,大大降低了模型參數數目,提高了檢測效率。下一步的工作可以設計更佳精簡的基礎網絡,進一步提高模型的預測速度。
參考文獻:
[1] 尹宏鵬,陳 波,柴 毅,等.基于視覺的目標檢測與跟蹤綜述[J].自動化學報,2016,42(10):1466-1489.
[2] 孫志軍,薛 磊,許陽明,等.深度學習研究綜述[J].計算機應用研究,2012,29(8):2806-2810.
[3] 李彥冬,郝宗波,雷 航.卷積神經網絡研究綜述[J].計算機應用,2016,36(9):2508-2515.
[4] 趙麗紅,劉紀紅,徐心和.人臉檢測方法綜述[J].計算機應用研究,2004,21(9):1-4.
[5] 賈慧星,章毓晉.車輛輔助駕駛系統中基于計算機視覺的行人檢測研究綜述[J].自動化學報,2007,33(1):84-90.
[6] 李文波,王立研.一種基于Adaboost算法的車輛檢測方法[J].長春理工大學學報:自然科學版,2009,32(2):292-295.
[7] FELZENSZWALB P, GIRSHICK R, MCALLESTER D,et al.Visual object detection with deformable part models[C]//Computer vision & pattern recognition.Washington,DC,USA:IEEE Computer Society,2010:2241-2248.
[8] 曾接賢,程 瀟.結合單雙行人DPM模型的交通場景行人檢測[J].電子學報,2016,44(11):2668-2675.
[9] GIRSHICK R,DONAHUE J,DARRELL T,et al.Rich feature hierarchies for accurate object detection and semantic segmentation[C]//Computer vision and pattern recognition.Washington,DC,USA:IEEE Computer Society,2014:580-587.
[10] GIRSHICK R.Fast R-CNN[C]//International conference on computer vision.Washington,DC,USA:IEEE Computer Society,2015:1440-1448.
[11] REN S,HE K,GIRSHICK R,et al.Faster R-CNN:towards real-time object detection with region proposal networks[C]//Proceedings of the 28th international conference on neural information processing systems.Cambridge,MA,USA:MIT Press,2015:91-99.
[12] REDMON J,DIVVALA S,GIRSHICK R,et al.You only look once:unified,real-time object detection[C]//IEEE conference on computer vision and pattern recognition.Washington,DC,USA:IEEE Computer Society,2016:779-788.
[13] LONG J,SHELHAMER E,DARRELL T.Fully convolutional networks for semantic segmentation[J].IEEE Transactions on Pattern Analysis & Machine Intelligence,2017,39(4):640-651.
[14] EVERINGHAM M,VAN GOOL L,WILLIAMS C K I,et al.The PASCAL visual object classes challenge[J].International Journal of Computer Vision,2010,88(2):303-338.
[15] SIMONYAN K,ZISSERMAN A.Very deep convolutional networks for large-scale image recognition[EB/OL].(2014-04-10)[2017-06-13].https://arxiv.org/abs/1409.1556.
[16] HE K,ZHANG X,REN S,et al.Deep residual learning for image recognition[C]//Computer vision and pattern recognition.Washington,DC,USA:IEEE Computer Society,2016:770-778.