胡金辰 王雨晨 蔣江紅 張鍥石
摘要:目前,基于計算機視覺分析的目標檢測技術已被廣泛研究并應用在眾多學科領域中。本文從卷積神經網絡結構(CNN)演化的角度,對基于深度卷積網絡的目標檢測技術進行分析、比較和總結。首先簡要介紹了基于CNN的目標檢測技術流程;其次重點分析和比較了以CNN為基礎的基于深度卷積網絡模型的目標檢測技術的發展,針對不同選擇的預處理方法進行分類、縱向和橫向對比;最后總結了目前研究中存在的問題,并對目標檢測技術未來發展進行了展望。
關鍵詞:目標檢測;卷積神經網絡;深度學習
中圖分類號:TP391 文獻標識碼:A 文章編號:1007-9416(2018)04-0097-02
目標檢測技術是通過目標特征提取、分割等技術來確定圖像中目標物體具體位置的技術,隨著目標檢測技術的不斷發展,其內涵和范疇也在不斷豐富拓展。目前,針對目標檢測技術的研究引起了持續而普遍的關注,已成為計算機視覺領域中的研究熱點和難點。深度神經網絡模型通過模擬人腦的視覺感知系統,從輸入圖片中提取邊緣特征,并將邊緣特征逐層向上抽象傳遞,以此獲得更高級的特征。隨著深度神經網絡日趨火熱,深度學習模型也被廣泛應用于圖像識別領域,如目標分割、識別和檢測等問題。隨著模型的改進和算法的發展,基于卷積神經網絡(Convolutional Neural Network,CNN)的目標檢測技術突破了傳統算法的瓶頸,準確度和效率大幅提升,成為當前的主流算法。
1 基于卷積神經網絡的目標檢測系統技術流程
目標檢測主要分為兩個步驟:目標分類和目標定位,分類主要用于判斷出輸入圖像中具有所需特征的物體,定位則是對目標物體確定位置和范圍,這兩個步驟保證了系統目標識別的準確性和實時性。不同于傳統的手動特征提取,深度卷積網絡提供了一種端到端的學習模型,模型中的參數可以通過梯度下降方法進行訓練,使網絡模型能夠自主學習圖像特征,完成對圖像特征的提取和分類。在CNN的卷積層中,一個神經元只與部分鄰層神經元連接。基于深度神經網絡的目標檢測系統在設計過程中,主要涉及到三個流程:圖像選擇性預處理、基于CNN的圖像特征提取及候選框優化、特征分類。圖像選擇性預處理主要分為候選區域搜索和回歸兩種方法,經過CNN提取圖像目標特征后,又依據第一步預處理方法的不同,特征分類又分為分類器分類以及直接計算類別概率兩種方法。圖1為基于深度卷積網絡的目標檢測系統技術流程圖。
2 基于卷積神經網絡的目標檢測技術發展
現代第一個結構較為完整的CNN是由加拿大多倫多大學LeCun 教授提出的LeNet[1]網絡,該模型使用ReLU代替了傳統的激活函數,另外使用可疊加的池化層以及Dropout減小過擬合,LeNet-5在手寫字符識別領域的成功應用引起了學術界對于CNN的關注;隨后,Geoffrey和他學生Alex利用AlexNet[2]在ImageNet的競賽中一舉奪冠,在top-5錯誤率上達到歷史性突破;2014年,Andrew Zisserman等人提出的VGG-Net[3]在ILSVRC localization的問題上獲得第一名; GoogLeNET[4]為了解決網絡中巨量參數過擬合問題和減小計算量,將全連接以及一般的卷積層轉為稀疏連接,保證了網絡結構的稀疏性和密集矩陣的高計算性能。CNN通過卷積運算使得計算機能夠自動從圖像中提取目標特征,這使得網絡獲得的特征更自然,并且通用性好,對一定程度的扭曲形變有良好的魯棒性。隨著卷積神經網絡技術的發展及在目標檢測領域的應用廣泛,很多基于加深網絡模型的層數、增強卷積模的計算功能等算法思路的改進,許多優秀的網絡模型也不斷涌現。表1是基于Region Proposal和Bounding Boxes方法下的深度卷積網絡在目標檢測方面的性能對比。
2.1 基于Region Proposal的方法
2.1.1 RCNN
目標檢測的思路通常是采用滑動窗口檢測器,通過所有的滑動窗口提取特征,再傳送至分類器,但這種方法存在極大的計算復雜度挑戰。Region CNN(RCNN)[5]利用微調后的訓練分類模型,使用Region Proposals的理念,修正圖像中提取的候選框,使其達到適合CNN的輸入,再利用回歸器優化候選框,在VOC2007上取得了顯著的效果。RCNN借助CNN良好的特征提取和分類性能,通過Region Proposal方法對候選區域進行特征提取,降低了傳統滑動窗口方法的算法復雜度,大幅提高檢測率。
2.1.2 SPP-NET
SPP-Net[6]在RCNN的基礎上做了實質性的改進。通過采用空間金字塔池化替換了全連接層之前的最后一個池化層,有效解決了RCNN的重復提取特征的計算問題,突破了速度瓶頸。SPP-Net在設計上借助分塊兼容特征的思路,在固定輸入的全連接層前,接入網絡層,拼接特征解決CNN需要的固定輸入問題,然而SPP-Net仍然存在訓練多階段和花費大的問題。
2.1.3 Fast-RCNN
Fast-RCNN[7]借鑒SPP思路,提出基于感興趣區域分割的池化層映射的特征向量,使得圖像的各區域均可提取固定維數的特征,有效解決SPP-Net存在的整體網絡訓練問題。Fast-RCNN通過建立用多任務模型,使用神經網絡來進行分類操作,實現實時的端到端聯合訓練。同時,Fast-RCNN利用網絡末端同步訓練提高準確度,然而在分類步驟的性能提升方面并沒有顯著的表現。
2.1.4 Faster-RCNN
Faster-RCNN[8]在Fast-RCNN的基礎上,添加區域建議網絡(Region Proposal Network, RPN),將候選框提取合并到深度神經網絡中,通過交替訓練建立統一的深度神經網絡框架,減少重復計算,大大提高運行速度,幾乎達到了效果上的最優。Faster RCNN 的提出已有兩年多時間,但引入的RPN實現了端到端的訓練,生成了高質量的區域建議框,使得該框架仍舊是行人檢測領域的主流框架之一。
2.2 基于Bounding Boxes的方法
2.2.1 YOLO
YOLO[9]的思想是采用單個神經網絡直接對整張輸入圖像作為輸入進行訓練,更加快速地區分背景區域和目標,它不同于2.1中生成候選區域的中間步驟,能夠更加簡單、快速地對目標物體進行實時監測。該方法將輸入圖像分成 S×S大小的網格,每一個網格單元預測邊界框和這些邊界框的可信度。YOLO從本質上解決了目標檢測領的實時性問題,真正實現“端到端”的CNN結構。
2.2.2 SSD
SSD[10]改進了YOLO目標位置準確性比較差的問題,并基于Faster-RCNN中的Anchor機制,在識別階段,該方法通過整張圖像的輸入選定若干個邊界框的位置信息和類別信息,并在特征圖像中使用幾種不同尺度形狀的邊界框對目標物體進行預測。在測試階段,該網絡對每每邊界框中各個類別的物體存在可能性進行預測,并且通過對邊界框的調整以適應目標物體的形狀,最后經過非極大抑制(NMS, Non Maximum Suppression)的方法篩選得到最終的檢測結果。
3 目標檢測數據庫
近年來,有關目標檢測的研究不僅提出了大量算法模型,而且也收集了很多用于訓練、測試網絡模型的數據庫。圖像數據庫是一種通過有效標注及精準分類完成的寶貴資源,權威的數據集為模型的建立和完善打下了堅實的基礎。以下列出了目前研究中常用的目標檢測數據庫,并對每個數據庫進行簡要說明:
(1)PASCAL VOC[11]:2005年由Everingham等人建立,作為一個供機器識別和訓練的大型圖片數據庫,共包含20個大類別,每類圖片數量在一千至一萬張不等。(2)LableMe[12]:2008年由Russell等人收集而成的物體及場景識別數據集,原始數據集包含至少183個類別、3萬幅圖像、11萬個標記對象,對于監督學習和定量分析有巨大的幫助。(3)ImageNet[13]:由Li Fei-Fei及其團隊于2012年為了讓機器學習避免過擬合并盡量滿足更多實例,構建的一個視覺信息復雜、模型趨于高維、并配以大量參數的數據集。(4)Caltech[14]行人數據集:由總共約10小時的640×480 30Hz視頻組成,該系列視頻是在城市環境中通過常規交通工具拍攝的。其中包含大約25萬幀(約137分鐘長的片段)的35萬個邊框和2300個姿態各異的行人。(5)INRIA[15]行人數據集:在2005年由Navneet Dalal等人提出,用于檢測圖像和視頻中行人。數據集主要包含GRAZ 01數據集的圖像與相應的注釋文件、標準化64×128像素的正樣本圖像兩種格式,原始的正面高分辨率圖像可以突出人物。
4 結語
傳統的目標檢測任務主要通過不同尺度的滑動窗口提取特征模型,在建立特征模型后通過SVM或者Adaboost進行分類任務,最終得到目標結果。但是由于傳統特征模型的局限性,近年來,通過CNN與目標檢測技術的結合得到的特征信息,在精準度和測試速度上都獲得了極大突破。盡管基于卷積神經網絡方面的研究已經取得了一些成功,但是距離廣泛實際應用還有一段距離。基于CNN的目標檢測是當今形勢下一個具有挑戰性的課題,有十分重要的研究意義和應用價值。隨著大數據和人工智能時代的到來,有理由相信,在未來的目標檢測問題中,如果將現有的網絡模型多層特征表示融合優化,更好地解決在復雜場景下的魯棒性和網絡計算復雜性的問題,那么基于深度卷積網絡的目標檢測技術將會得到更廣泛的實際應用。
參考文獻
[1]Y. Lecun, L. Bottou, Y. Bengio, and P. Haffner, “Gradient-based learning applied to document recognition”, Proceedings of the IEEE vol. 86, no. 11, pp. 2278-2324, 1998.
[2]A. Krizhevsky, I. Sutskever, and G. Hinton, “ImageNet classification with deep convolutional neural networks”, International Conference on Neural Information Processing Systems (NIPS), vol. 60, no. 2, pp. 1097-1105, 2012.
[3]K. Simonyan and A. Zisserman, “Very deep convolutional networks for large-scale image recognition,” arXiv preprint: 1409.1556, 2014.
[4]C. Szegedy, W. Liu, and Y. Jia, “Going Deeper with Convolutions”, Conference on Computer Vision and Pattern Recognition (CVPR), pp. 1-9, 2014.
[5]R. Girshick, J. Donahue, and T. Darrel, “Rich feature hierarchies for accurate object detection and semantic segmentation”, Conference on Computer Vision and Pattern Recognition (CVPR), pp.119-135, 2014.
[6]K. He, X. Zhang, and S. Ren, “Spatial pyramid pooling in deep convolutional networks for visual recognition”, European Conference on Computer Vision (ECCV), pp.346-361, 2014.
[7]R. Girshick, “Fast R-CNN”, arXiv1504.08083, 2015.
[8]S. Ren, K. He, and R. Girshick,“Faster R-CNN: towards real-time object detection with region proposal networks”, Advances in Neural Information Processing Systems (NIPS), pp.1137-1149, 2015.
[9]J. Rendmon, S. Divvala, and R. Girshick,“You only look once: unified, real-tme object detection”, arXiv: 1506.02640,2015.
[10]W. Liu, D. Anguelov, and D. Erhan, “SSD: single shot multibox detector”, European Conference on Computer Vision. Springer, Cham, pp.21-37.2016.
[11]M. Everingham, L. V. Gool, C. Williams, J. Winn, and A. Zisserman, “The pascal visual object classes challenge,” International Journal of Computer Vision (IJCV), vol. 88, no. 2, pp.303-338, 2010.
[12]B. Russell, A. Torralba, K. Murphy, and W. Freeman, “Labelme: a database and web-based tool for image annotation,” International Journal of Computer Vision (IJCV), vol. 77, no.1-3, pp. 157-173, 2008.
[13]J. Deng, W. Dong, R. Socher, L. J. Li, K. Li, and F. F.Li, “Imagenet: a large-scale hierarchical image database,” Conference on Computer Vision and Pattern Recognition (CVPR), pp. 248-255, 2009.
[14]N. Dalal, and B. Triggs, “Histogram of oriented gradients for human detection”, Conference on Computer Vision and Pattern Recognition (CVPR), pp. 886-893, 2005.
[15]P. Dollar, C. Wojek, and B. Schiele, “Pedestrian detection: An evaluation of the state of the art”, IEEE Transactions on Pattern Analysis and Machine Intelligence (TPAMI), vol. 24, no. 4, pp. 743-761, 2012.