胡金辰 王雨晨 蔣江紅 張鍥石
摘要:目前,基于計(jì)算機(jī)視覺分析的目標(biāo)檢測技術(shù)已被廣泛研究并應(yīng)用在眾多學(xué)科領(lǐng)域中。本文從卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)(CNN)演化的角度,對基于深度卷積網(wǎng)絡(luò)的目標(biāo)檢測技術(shù)進(jìn)行分析、比較和總結(jié)。首先簡要介紹了基于CNN的目標(biāo)檢測技術(shù)流程;其次重點(diǎn)分析和比較了以CNN為基礎(chǔ)的基于深度卷積網(wǎng)絡(luò)模型的目標(biāo)檢測技術(shù)的發(fā)展,針對不同選擇的預(yù)處理方法進(jìn)行分類、縱向和橫向?qū)Ρ?;最后總結(jié)了目前研究中存在的問題,并對目標(biāo)檢測技術(shù)未來發(fā)展進(jìn)行了展望。
關(guān)鍵詞:目標(biāo)檢測;卷積神經(jīng)網(wǎng)絡(luò);深度學(xué)習(xí)
中圖分類號:TP391 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-9416(2018)04-0097-02
目標(biāo)檢測技術(shù)是通過目標(biāo)特征提取、分割等技術(shù)來確定圖像中目標(biāo)物體具體位置的技術(shù),隨著目標(biāo)檢測技術(shù)的不斷發(fā)展,其內(nèi)涵和范疇也在不斷豐富拓展。目前,針對目標(biāo)檢測技術(shù)的研究引起了持續(xù)而普遍的關(guān)注,已成為計(jì)算機(jī)視覺領(lǐng)域中的研究熱點(diǎn)和難點(diǎn)。深度神經(jīng)網(wǎng)絡(luò)模型通過模擬人腦的視覺感知系統(tǒng),從輸入圖片中提取邊緣特征,并將邊緣特征逐層向上抽象傳遞,以此獲得更高級的特征。隨著深度神經(jīng)網(wǎng)絡(luò)日趨火熱,深度學(xué)習(xí)模型也被廣泛應(yīng)用于圖像識別領(lǐng)域,如目標(biāo)分割、識別和檢測等問題。隨著模型的改進(jìn)和算法的發(fā)展,基于卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)的目標(biāo)檢測技術(shù)突破了傳統(tǒng)算法的瓶頸,準(zhǔn)確度和效率大幅提升,成為當(dāng)前的主流算法。
1 基于卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測系統(tǒng)技術(shù)流程
目標(biāo)檢測主要分為兩個步驟:目標(biāo)分類和目標(biāo)定位,分類主要用于判斷出輸入圖像中具有所需特征的物體,定位則是對目標(biāo)物體確定位置和范圍,這兩個步驟保證了系統(tǒng)目標(biāo)識別的準(zhǔn)確性和實(shí)時性。不同于傳統(tǒng)的手動特征提取,深度卷積網(wǎng)絡(luò)提供了一種端到端的學(xué)習(xí)模型,模型中的參數(shù)可以通過梯度下降方法進(jìn)行訓(xùn)練,使網(wǎng)絡(luò)模型能夠自主學(xué)習(xí)圖像特征,完成對圖像特征的提取和分類。在CNN的卷積層中,一個神經(jīng)元只與部分鄰層神經(jīng)元連接。基于深度神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測系統(tǒng)在設(shè)計(jì)過程中,主要涉及到三個流程:圖像選擇性預(yù)處理、基于CNN的圖像特征提取及候選框優(yōu)化、特征分類。圖像選擇性預(yù)處理主要分為候選區(qū)域搜索和回歸兩種方法,經(jīng)過CNN提取圖像目標(biāo)特征后,又依據(jù)第一步預(yù)處理方法的不同,特征分類又分為分類器分類以及直接計(jì)算類別概率兩種方法。圖1為基于深度卷積網(wǎng)絡(luò)的目標(biāo)檢測系統(tǒng)技術(shù)流程圖。
2 基于卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測技術(shù)發(fā)展
現(xiàn)代第一個結(jié)構(gòu)較為完整的CNN是由加拿大多倫多大學(xué)LeCun 教授提出的LeNet[1]網(wǎng)絡(luò),該模型使用ReLU代替了傳統(tǒng)的激活函數(shù),另外使用可疊加的池化層以及Dropout減小過擬合,LeNet-5在手寫字符識別領(lǐng)域的成功應(yīng)用引起了學(xué)術(shù)界對于CNN的關(guān)注;隨后,Geoffrey和他學(xué)生Alex利用AlexNet[2]在ImageNet的競賽中一舉奪冠,在top-5錯誤率上達(dá)到歷史性突破;2014年,Andrew Zisserman等人提出的VGG-Net[3]在ILSVRC localization的問題上獲得第一名; GoogLeNET[4]為了解決網(wǎng)絡(luò)中巨量參數(shù)過擬合問題和減小計(jì)算量,將全連接以及一般的卷積層轉(zhuǎn)為稀疏連接,保證了網(wǎng)絡(luò)結(jié)構(gòu)的稀疏性和密集矩陣的高計(jì)算性能。CNN通過卷積運(yùn)算使得計(jì)算機(jī)能夠自動從圖像中提取目標(biāo)特征,這使得網(wǎng)絡(luò)獲得的特征更自然,并且通用性好,對一定程度的扭曲形變有良好的魯棒性。隨著卷積神經(jīng)網(wǎng)絡(luò)技術(shù)的發(fā)展及在目標(biāo)檢測領(lǐng)域的應(yīng)用廣泛,很多基于加深網(wǎng)絡(luò)模型的層數(shù)、增強(qiáng)卷積模的計(jì)算功能等算法思路的改進(jìn),許多優(yōu)秀的網(wǎng)絡(luò)模型也不斷涌現(xiàn)。表1是基于Region Proposal和Bounding Boxes方法下的深度卷積網(wǎng)絡(luò)在目標(biāo)檢測方面的性能對比。
2.1 基于Region Proposal的方法
2.1.1 RCNN
目標(biāo)檢測的思路通常是采用滑動窗口檢測器,通過所有的滑動窗口提取特征,再傳送至分類器,但這種方法存在極大的計(jì)算復(fù)雜度挑戰(zhàn)。Region CNN(RCNN)[5]利用微調(diào)后的訓(xùn)練分類模型,使用Region Proposals的理念,修正圖像中提取的候選框,使其達(dá)到適合CNN的輸入,再利用回歸器優(yōu)化候選框,在VOC2007上取得了顯著的效果。RCNN借助CNN良好的特征提取和分類性能,通過Region Proposal方法對候選區(qū)域進(jìn)行特征提取,降低了傳統(tǒng)滑動窗口方法的算法復(fù)雜度,大幅提高檢測率。
2.1.2 SPP-NET
SPP-Net[6]在RCNN的基礎(chǔ)上做了實(shí)質(zhì)性的改進(jìn)。通過采用空間金字塔池化替換了全連接層之前的最后一個池化層,有效解決了RCNN的重復(fù)提取特征的計(jì)算問題,突破了速度瓶頸。SPP-Net在設(shè)計(jì)上借助分塊兼容特征的思路,在固定輸入的全連接層前,接入網(wǎng)絡(luò)層,拼接特征解決CNN需要的固定輸入問題,然而SPP-Net仍然存在訓(xùn)練多階段和花費(fèi)大的問題。
2.1.3 Fast-RCNN
Fast-RCNN[7]借鑒SPP思路,提出基于感興趣區(qū)域分割的池化層映射的特征向量,使得圖像的各區(qū)域均可提取固定維數(shù)的特征,有效解決SPP-Net存在的整體網(wǎng)絡(luò)訓(xùn)練問題。Fast-RCNN通過建立用多任務(wù)模型,使用神經(jīng)網(wǎng)絡(luò)來進(jìn)行分類操作,實(shí)現(xiàn)實(shí)時的端到端聯(lián)合訓(xùn)練。同時,F(xiàn)ast-RCNN利用網(wǎng)絡(luò)末端同步訓(xùn)練提高準(zhǔn)確度,然而在分類步驟的性能提升方面并沒有顯著的表現(xiàn)。
2.1.4 Faster-RCNN
Faster-RCNN[8]在Fast-RCNN的基礎(chǔ)上,添加區(qū)域建議網(wǎng)絡(luò)(Region Proposal Network, RPN),將候選框提取合并到深度神經(jīng)網(wǎng)絡(luò)中,通過交替訓(xùn)練建立統(tǒng)一的深度神經(jīng)網(wǎng)絡(luò)框架,減少重復(fù)計(jì)算,大大提高運(yùn)行速度,幾乎達(dá)到了效果上的最優(yōu)。Faster RCNN 的提出已有兩年多時間,但引入的RPN實(shí)現(xiàn)了端到端的訓(xùn)練,生成了高質(zhì)量的區(qū)域建議框,使得該框架仍舊是行人檢測領(lǐng)域的主流框架之一。
2.2 基于Bounding Boxes的方法
2.2.1 YOLO
YOLO[9]的思想是采用單個神經(jīng)網(wǎng)絡(luò)直接對整張輸入圖像作為輸入進(jìn)行訓(xùn)練,更加快速地區(qū)分背景區(qū)域和目標(biāo),它不同于2.1中生成候選區(qū)域的中間步驟,能夠更加簡單、快速地對目標(biāo)物體進(jìn)行實(shí)時監(jiān)測。該方法將輸入圖像分成 S×S大小的網(wǎng)格,每一個網(wǎng)格單元預(yù)測邊界框和這些邊界框的可信度。YOLO從本質(zhì)上解決了目標(biāo)檢測領(lǐng)的實(shí)時性問題,真正實(shí)現(xiàn)“端到端”的CNN結(jié)構(gòu)。
2.2.2 SSD
SSD[10]改進(jìn)了YOLO目標(biāo)位置準(zhǔn)確性比較差的問題,并基于Faster-RCNN中的Anchor機(jī)制,在識別階段,該方法通過整張圖像的輸入選定若干個邊界框的位置信息和類別信息,并在特征圖像中使用幾種不同尺度形狀的邊界框?qū)δ繕?biāo)物體進(jìn)行預(yù)測。在測試階段,該網(wǎng)絡(luò)對每每邊界框中各個類別的物體存在可能性進(jìn)行預(yù)測,并且通過對邊界框的調(diào)整以適應(yīng)目標(biāo)物體的形狀,最后經(jīng)過非極大抑制(NMS, Non Maximum Suppression)的方法篩選得到最終的檢測結(jié)果。
3 目標(biāo)檢測數(shù)據(jù)庫
近年來,有關(guān)目標(biāo)檢測的研究不僅提出了大量算法模型,而且也收集了很多用于訓(xùn)練、測試網(wǎng)絡(luò)模型的數(shù)據(jù)庫。圖像數(shù)據(jù)庫是一種通過有效標(biāo)注及精準(zhǔn)分類完成的寶貴資源,權(quán)威的數(shù)據(jù)集為模型的建立和完善打下了堅(jiān)實(shí)的基礎(chǔ)。以下列出了目前研究中常用的目標(biāo)檢測數(shù)據(jù)庫,并對每個數(shù)據(jù)庫進(jìn)行簡要說明:
(1)PASCAL VOC[11]:2005年由Everingham等人建立,作為一個供機(jī)器識別和訓(xùn)練的大型圖片數(shù)據(jù)庫,共包含20個大類別,每類圖片數(shù)量在一千至一萬張不等。(2)LableMe[12]:2008年由Russell等人收集而成的物體及場景識別數(shù)據(jù)集,原始數(shù)據(jù)集包含至少183個類別、3萬幅圖像、11萬個標(biāo)記對象,對于監(jiān)督學(xué)習(xí)和定量分析有巨大的幫助。(3)ImageNet[13]:由Li Fei-Fei及其團(tuán)隊(duì)于2012年為了讓機(jī)器學(xué)習(xí)避免過擬合并盡量滿足更多實(shí)例,構(gòu)建的一個視覺信息復(fù)雜、模型趨于高維、并配以大量參數(shù)的數(shù)據(jù)集。(4)Caltech[14]行人數(shù)據(jù)集:由總共約10小時的640×480 30Hz視頻組成,該系列視頻是在城市環(huán)境中通過常規(guī)交通工具拍攝的。其中包含大約25萬幀(約137分鐘長的片段)的35萬個邊框和2300個姿態(tài)各異的行人。(5)INRIA[15]行人數(shù)據(jù)集:在2005年由Navneet Dalal等人提出,用于檢測圖像和視頻中行人。數(shù)據(jù)集主要包含GRAZ 01數(shù)據(jù)集的圖像與相應(yīng)的注釋文件、標(biāo)準(zhǔn)化64×128像素的正樣本圖像兩種格式,原始的正面高分辨率圖像可以突出人物。
4 結(jié)語
傳統(tǒng)的目標(biāo)檢測任務(wù)主要通過不同尺度的滑動窗口提取特征模型,在建立特征模型后通過SVM或者Adaboost進(jìn)行分類任務(wù),最終得到目標(biāo)結(jié)果。但是由于傳統(tǒng)特征模型的局限性,近年來,通過CNN與目標(biāo)檢測技術(shù)的結(jié)合得到的特征信息,在精準(zhǔn)度和測試速度上都獲得了極大突破。盡管基于卷積神經(jīng)網(wǎng)絡(luò)方面的研究已經(jīng)取得了一些成功,但是距離廣泛實(shí)際應(yīng)用還有一段距離。基于CNN的目標(biāo)檢測是當(dāng)今形勢下一個具有挑戰(zhàn)性的課題,有十分重要的研究意義和應(yīng)用價值。隨著大數(shù)據(jù)和人工智能時代的到來,有理由相信,在未來的目標(biāo)檢測問題中,如果將現(xiàn)有的網(wǎng)絡(luò)模型多層特征表示融合優(yōu)化,更好地解決在復(fù)雜場景下的魯棒性和網(wǎng)絡(luò)計(jì)算復(fù)雜性的問題,那么基于深度卷積網(wǎng)絡(luò)的目標(biāo)檢測技術(shù)將會得到更廣泛的實(shí)際應(yīng)用。
參考文獻(xiàn)
[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.