0 引言
行人檢測是計算機視覺領域的一個重要方向,在自動駕駛、智能監(jiān)控和智能機器人等方面有著廣泛應用。然而,環(huán)境的復雜性、行人姿態(tài)的多樣性和行人遮擋等因素,使得行人檢測極具挑戰(zhàn)性。
傳統(tǒng)的行人檢測方法主要以DALAL N和TRIGGS B等提出的梯度方向直方圖(Histogram of Oriented Gradient, HOG)和支持向量機(Support Vector Machine, SVM)結(jié)合的算法為代表[1],但這類方法基于手工設計特征,特征表達能力有限,難以適應復雜的場景。近年來,隨著深度學習的快速發(fā)展,越來越多的研究者試著用該類方法去解決行人檢測問題。在文獻[2]中,SERMANET P等人首次將深度學習應用于行人檢測,提出了基于卷積稀疏編碼的ConvNet模型。文獻[3]將特征提取、變形處理、遮擋處理和分類統(tǒng)一于一個深度學習框架JointDeep進行聯(lián)合學習。文獻[4]和[5]將行人檢測與語義分割任務聯(lián)系起來,實現(xiàn)了行人檢測和語義分割的聯(lián)合優(yōu)化。而隨著目標檢測技術的發(fā)展,涌現(xiàn)出了很多優(yōu)秀的目標檢測框架,如R-CNN(Region-based Convolutional Neural Network)[6]、Fast R-CNN[7]和Faster R-CNN[8]等。有些研究者致力于改進通用的目標檢測框架,使其適用于行人檢測。在文獻[9]中,作者將Fast R-CNN進行改進,提出了具有尺度感知的行人檢測模型,該模型分為大小兩個子網(wǎng)絡,分別檢測不同尺度的行人。文獻[10]將Faster R-CNN框架中的區(qū)域建議網(wǎng)絡(Region Proposal Network, RPN)與級聯(lián)的隨機森林分類器結(jié)合,達到當時最好的檢測效果。
雖然基于深度學習的行人檢測取得了很多突破性的進展,但對小尺度行人的檢測效果并不理想。這主要是由于卷積神經(jīng)網(wǎng)絡的一系列卷積池化操作,使得小尺度行人的特征圖變得更小,分辨率低,信息丟失嚴重,導致檢測失敗。而在智能監(jiān)控和自動駕駛等應用場景,小尺度行人占了很大的比重,以車載攝像頭拍攝的Caltech[11]數(shù)據(jù)集為例,高度在20~80像素的行人超過了總數(shù)的70%。所以小尺度行人的檢測非常重要。
本文在Faster R-CNN框架的基礎上,對RPN進行了改進,使其適用于行人檢測;并提出了一種多層次特征提取和融合方式,用來提高小尺度行人的檢測效果。
1 相關知識
1.1 卷積神經(jīng)網(wǎng)絡
卷積神經(jīng)網(wǎng)絡是受到貓的視覺皮層細胞工作機制的啟發(fā)而提出的[12]。CNN一般由卷積層、池化層和全連接層組成。在卷積層中,下一層的神經(jīng)元只與上一層的部分神經(jīng)元相連接,同一特征相關的神經(jīng)元之間通過卷積核來共享權值。相比于全連接神經(jīng)網(wǎng)絡,CNN大大減少了參數(shù)的數(shù)量并且降低了過擬合的概率。而池化層相當于對輸入圖像不同位置特征進行聚合統(tǒng)計,能夠進一步減少計算量,簡化模型。CNN在特征提取方面表現(xiàn)出了巨大的優(yōu)勢,被廣泛應用于圖像識別、目標檢測和場景分割等領域,并取得了很多突破性的進展。
1.2 Faster R-CNN目標檢測框架
Faster R-CNN是最為經(jīng)典的基于候選區(qū)域的目標檢測框架之一,它是R-CNN和Fast R-CNN框架的升級版?;诤蜻x區(qū)域的檢測方法一般包含三個部分:候選區(qū)域的選擇、特征提取和分類器分類。R-CNN用選擇性搜索(Selective Search)算法[13]來生成候選區(qū)域,用CNN提取特征,SVM作為分類器來檢測目標??梢钥闯鯮-CNN的訓練是分階段的,步驟繁瑣,而且每個候選區(qū)域都要用CNN提取特征,導致重復計算。Fast R-CNN改進了R-CNN框架,它將Selective Search算法產(chǎn)生的候選區(qū)域的坐標映射到最后一層卷積層,然后用感興趣區(qū)域采樣層(Regions of Interest Pooling Layer, ROI-Pooling層)將這些區(qū)域分別下采樣為7×7的特征向量,再輸入后續(xù)的全連接層。Fast R-CNN將特征提取和分類器分類都用CNN來實現(xiàn),而且加入了分類和邊框回歸的多任務學習機制,進一步簡化了模型。在此基礎上,F(xiàn)aster R-CNN提出了RPN,用CNN來替代Selective Search生成候選區(qū)域,并且RPN和檢測網(wǎng)絡共享前端的卷積層。Faster R-CNN將候選區(qū)域的選擇、特征提取和分類器分類都統(tǒng)一到了一個深度學習框架,實現(xiàn)了端到端的快速目標檢測。
通用目標檢測和行人檢測之間有一定的關聯(lián)性,深度神經(jīng)網(wǎng)絡在目標檢測任務中學習到的知識可以遷移到行人檢測。對經(jīng)典的訓練充分的深度神經(jīng)網(wǎng)絡進行改進和微調(diào),使其適用于新的任務,是深度學習中常用的手段之一。本文以Faster R-CNN目標檢測框架為基礎,根據(jù)行人檢測任務的特點,對其進行了改進,提出了兼顧小尺度行人檢測的網(wǎng)絡SP-CNN(Convolutional Neural Network for Small-size Pedestrian)。
2 檢測方法
2.1 網(wǎng)絡結(jié)構
本文提出的SP-CNN的網(wǎng)絡架構如圖1 所示,它包含兩個部分:行人區(qū)域建議網(wǎng)絡和檢測網(wǎng)絡。行人區(qū)域建議網(wǎng)絡是在對RPN進行改進的基礎上提出的。在檢測網(wǎng)絡部分,本文從不同的層提取不同層次的特征并進行融合,提出了適用于行人檢測的ROI-Pooling方式。如圖1所示,conv1~conv5是VGG-16[14]網(wǎng)絡的一部分,是行人區(qū)域建議網(wǎng)絡和檢測網(wǎng)絡的共享卷積層部分。行人區(qū)域建議網(wǎng)絡在RPN的基礎上進行了改進,可以生成不同大小的行人參照框,進而生成候選區(qū)域。這些候選區(qū)域的坐標再映射到卷積特征層,用來提取相應位置的特征。SP-CNN將這些候選區(qū)域坐標映射至conv3_3、conv4_3和conv5_3多個卷積層的特征圖上,用ROI-Pooling層將對應位置的特征采樣為5×10(區(qū)別于Fast R-CNN的7×7)的特征圖。由于不同層的特征尺度不同,SP-CNN引入了L2范數(shù)歸一化層[15]對其進行歸一化,然后用連接層將不同層的特征進行連接和融合。之后用1×1的卷積層將其轉(zhuǎn)化為512×5×10的格式輸入到后續(xù)的全連接層。由于SP-CNN是在Faster R-CNN的基礎上提出的,更多細節(jié)可參考文獻[8]。
2.2 行人區(qū)域建議網(wǎng)絡
在RPN中,候選區(qū)域是根據(jù)“錨”(Anchor)機制提供的參照框生成的[8],參照框的設計對于候選區(qū)域的生成和后續(xù)的訓練至關重要。在Faster R-CNN中,RPN能夠提供3種尺度(128, 256, 512)和3種寬高比(1:1, 1:2, 2:1)共9種大小的參照框。顯然,這些參照框并不適用于行人檢測任務,因為行人的尺度分布范圍比較大而其寬高比較為固定。本文就是從這方面出發(fā)改進了RPN,使其適用于行人檢測,改進后的RPN稱為行人區(qū)域建議網(wǎng)絡。行人區(qū)域建議網(wǎng)絡將提供1種寬高比和12種尺度共12種大小的參照框。本文將寬高比設置為行人平均寬高比0.41[11]。行人區(qū)域建議網(wǎng)絡提供12種尺度的參照框,但具體的尺度大小可根據(jù)數(shù)據(jù)集中行人高度分布來調(diào)整。本文在Caltech數(shù)據(jù)集上進行實驗,而Caltech中行人高度主要分布在20~128像素之間,故本文設計的參照框的高度從25像素起,以1.25倍遞增,得到12種尺度的行人參考框。圖2展示了RPN提供的參照框和行人區(qū)域建議網(wǎng)絡提供的參照框,可以看出,行人區(qū)域建議網(wǎng)絡的參照框可以和行人進行更好的對齊,進而提供質(zhì)量更高的候選區(qū)域。
2.3 多層次特征融合
2.3.1 多層次特征的選擇
Faster R-CNN只從conv5_3卷積層提取候選區(qū)域特征,這對于小尺度行人來說,所提供的特征信息是遠遠不夠的。為此,本文提出了多層次特征融合策略來豐富行人特征信息。低層特征分辨率高,對精準定位有幫助,而高層特征包含豐富的語義信息,對目標識別有幫助,將低層特征和高層特征相融合,有利于小尺度行人的檢測。但隨之而來的一個問題是選擇哪幾個層去進行融合。在Fast R-CNN中,包含conv1~conv5共5個卷積部分,每個部分包含2~3個卷積層,并且同一部分的卷積層特征圖分辨率相同。考慮到在特征圖分辨率相同的情況下,越深層的特征其語義信息越豐富,故本文將conv2_2、conv3_3、conv4_3和conv5_3作為特征融合的候選層??紤]到過多的底層信息可能會降低融合后特征的效果,本文將從conv3_3、conv4_3和conv5_3來提取特征進行融合。
2.3.2 改進的ROI-Pooling
確定了選擇哪些層的特征進行融合后,下一步則是要從這些層提取特征。在Faster R-CNN中,映射在卷積層的不同大小的候選區(qū)域需要提取為同樣尺寸的特征才能輸入后續(xù)的全連接層。Faster R-CNN是通過7×7的ROI-Pooling來實現(xiàn)這一操作的。但7×7的ROI-Pooling并不適用于行人檢測任務,對于映射在conv5_3層的寬或高小于7的候選區(qū)域,它會直接拋棄,使得很多小尺度的行人得不到訓練,進而導致小尺度行人檢測效果不好。在SP-CNN中,結(jié)合行人的特點,改進了ROI-Pooling方式,將映射在不同層特征圖上的候選區(qū)域分別下采樣為5×10的特征圖。改進的ROI-Pooling的采樣機制為:對于輸入到ROI-Pooling層的特征圖,首先將其劃分為5×10個塊,然后對每個塊取最大值,得到ROI-Pooling之后的5×10的特征圖。可以看出,改進的ROI-Pooling充分考慮了行人的形狀和尺度等因素。
2.3.3 歸一化
在深度卷積神經(jīng)網(wǎng)絡中,來自不同層的特征圖往往具有不同大小的激活值,如果直接進行特征融合,數(shù)值比較大的特征就會占據(jù)主導地位,從而影響特征融合的效果。本文引入了L2范數(shù)歸一化層[15]對不同層的特征進行了歸一化,將其激活值的大小統(tǒng)一到一個數(shù)量級,從而在特征融合中獲得平等的地位。假設L2范數(shù)歸一化層的輸入為X,經(jīng)過L2范數(shù)歸一化層之后,輸出為 ,其中,m為縮放系數(shù),
為X的二范數(shù)。在SP-CNN中,從不同層經(jīng)過5×10的ROI-Pooling得到的特征圖首先要經(jīng)過L2范數(shù)歸一化,然后用連接層將其連接聚合,再通過1×1的卷積進行融合和通道調(diào)整,最后輸入到全連接層進行分類。
3 實驗結(jié)果與分析
考慮到Caltech數(shù)據(jù)集中小尺度行人比較多,且環(huán)境比較復雜,具有挑戰(zhàn)性,故本文在Caltech上進行實驗。
行人檢測算法一般用漏檢率(Miss Rate, MR)和平均每張圖片上錯誤正例(False Positive Per Image, FPPI)的關系曲線來評估。本文用FPPI的對數(shù)在區(qū)間[10-2, 100]上時MR的對數(shù)平均值作為量化評估標準,簡稱為對數(shù)平均漏檢率(Log-average Miss Rate, LAMR)。本文先用文獻[11]提出的Reasonable 指標來衡量算法的綜合性能,然后用行人高度在20~80像素的行人檢測結(jié)果來衡量算法對小尺度行人的檢測效果。Reasonable 指標只考慮高度大于50像素且遮擋小于35%的行人。
3.1 行人區(qū)域建議網(wǎng)絡的作用
相比于RPN,行人區(qū)域建議網(wǎng)絡可以提供更適合行人的參照框,從而生成質(zhì)量更高的候選區(qū)域。表1顯示了在Reasonable 指標下,行人區(qū)域建議網(wǎng)絡對檢測結(jié)果的影響。
3.2 不同層次特征融合的影響
多層次特征融合的一個首要問題就是選擇哪些層的特征進行融合,表2顯示了SP-CNN不同層特征融合對行人檢測結(jié)果的影響,證明了SP-CNN網(wǎng)設計的合理性。
3.3 與其他行人檢測算法的比較
為了驗證所提算法的有效性,本文將SP-CNN與一些具有代表性的行人檢測算法如HOG[1]、ACF[15]、SpatialPooling[16]、JointDeep[3]和Faster R-CNN等進行了比較。實驗分為Reasonable 指標下的行人檢測和小尺度行人檢測兩個部分,它們分別用來評估算法的綜合性能和對小尺度行人的檢測效果。
3.3.1 在Reasonable 指標下的比較
如圖3所示,在Reasonable 指標下,SP-CNN取得了優(yōu)于其他算法的檢測效果。SP-CNN的對數(shù)平均漏檢率低至14.37%,表明SP-CNN的算法綜合性能很好。特別是與Faster R-CNN相比,SP-CNN的對數(shù)平均漏檢率降低了約10%,充分體現(xiàn)了本文對Faster R-CNN所做改進的有效性。
3.3.2 小尺度行人檢測的比較
圖4為不同行人檢測算法在小尺度行人(高度在20~80像素)檢測上的結(jié)果比較。SP-CNN的對數(shù)平均漏檢率為48.52%,比Faster R-CNN低18.92%,而其他算法的對數(shù)平均漏檢率都超過了70%。由此可知,SP-CNN的結(jié)果遠優(yōu)于其他方法,表明了SP-CNN在小尺度行人檢測方面的優(yōu)越性。
4 結(jié)論
本文將Faster R-CNN通用目標檢測框架遷移到了行人檢測領域,在RPN的基礎上,提出了行人區(qū)域建議網(wǎng)絡,同時為了進一步提高小尺度行人檢測效果,提出了一種適合于行人檢測的特征提取和融合方式。實驗結(jié)果表明,本文的方法具有良好的綜合性能,并且在小尺度行人檢測上有明顯的優(yōu)勢。
參考文獻
[1] DALAL N, TRIGGS B. Histograms of oriented gradients for human detection[C]//IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2005. IEEE, 2005, 1: 886-893.
[2] SERMANET P, KAVUKCUOGLU K, CHINTALA S, et al. Pedestrian detection with unsupervised multi-stage feature learning[C]//2013 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2013: 3626-3633.
[3] OUYANG W, WANG X. Joint deep learning for pedestrian detection[C]//2013 IEEE International Conference on Computer Vision (ICCV), IEEE, 2013: 2056-2063.
[4] TIAN Y, LUO P, WANG X, et al. Pedestrian detection aided by deep learning semantic tasks[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2015: 5079-5087.
[5] COSTEA A D, NEDEVSCHI S. Semantic channels for fast pedestrian detection[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2016: 2360-2368.(下轉(zhuǎn)第57頁)
[6] GIRSHICK R, DONAHUE J, DARRELL T, et al. Region-based convolutional networks for accurate object detection and segmentation[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2016, 38(1): 142-158.
[7] GIRSHICK R. Fast R-CNN[C]//2015 IEEE International Conference on Computer Vision (ICCV). IEEE, 2015: 1440-1448.
[8] REN S, HE K, GIRSHICK R, et al. Faster R-CNN: towards real-time object detection with region proposal networks[C]//Advances in Neural Information Processing Systems, 2015: 91-99.
[9] LI J, LIANG X, SHEN S M, et al. Scale-aware fast R-CNN for pedestrian detection[J]. IEEE Transactions on Multimedia, 2018, 20(4): 985-996.
[10] ZHANG L, LIN L, LIANG X, et al. Is faster R-CNN doing well for pedestrian detection?[C]//European Conference on Computer Vision. Springer, Cham, 2016: 443-457.
[11] DOLLAR P, WOJEK C, SCHIELE B, et al. Pedestrian detection: an evaluation of the state of the art[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012, 34(4): 743-761.
[12] LECUN Y, BOSER B E, DENKER J S, et al. Handwritten digit recognition with a back-propagation network[C]//Advances in Neural Information Processing Systems, 1990: 396-404.
[13] UIJLINGS J R R, SANDE K E A, GEVERS T, et al. Selective search for object recognition[J]. International Journal of Computer Vision, 2013, 104(2): 154-171.
[14] SIMONYAN K, ZISSERMAN A. Very deep convolutional networks for large-scale image recognition[J]. arXiv preprint arXiv:1409.1556, 2014.
[15] LIU W, RABINOVICH A, BERG A C. Parsenet: looking wider to see better[J]. arXiv preprint arXiv:1506.04579, 2015.
[16] DOLLR P, APPEL R, BELONGIE S, et al. Fast feature pyramids for object detection[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2014, 36(8): 1532-1545.
(收稿日期:2018-03-26)
作者簡介:
郭愛心(1991-),女,碩士研究生,主要研究方向:深度學習、行人檢測。
殷保群(1962-),男,博士,教授,主要研究方向:離散事件動態(tài)系統(tǒng)、深度學習。
李運(1993-),男,碩士研究生,主要研究方向:深度學習、網(wǎng)絡壓縮。