陳一民 鄒國志 鄒一波 高雅平 趙林林
(上海大學計算機工程與科學學院 上海 200444)
基于3DKAZE通道特征的實時行人檢測
陳一民 鄒國志 鄒一波 高雅平 趙林林
(上海大學計算機工程與科學學院 上海 200444)
將二維非線性擴散濾波方法擴展到三維時空域,提出一種新的3DKAZE特征點檢測與描述方法。同時提出一種基于3DKAZE通道特征的實時行人檢測算法。利用雙目視覺的方式獲取輸入圖像對中行人的深度信息進而排除了地面和天空等自由區域,采用HOG+LUV+3DKAZE的積分檢測算子進行檢測,最后通過訓練得到的SoftCascade分類器對得到的描述子進行分類,最終得到目標行人。在Caltech、ETH、INRIA以及TUD-Brussels四個公共基準數據集中的實驗結果表明,所提出的行人檢測算法的檢測結果在準確性上達到了較好的水準,同時也得到了快速實時的效果。
快速行人檢測 積分通道特征 3DKAZE 雙目視覺
隨著Google、特斯拉、沃爾沃等科技公司在無人駕駛領域的研究,無人駕駛越來越成為一個前沿的并具有挑戰的領域。毫無疑問,如何快速地對路面物體進行檢測感知是無人駕駛的重點。路面目標物體被檢測的效率越高,車輛的“反應”也就越快,留給車輛進行換檔加速的時間也就越多。于此同時,安全性也是無人駕駛不容重視的,如何有效地降低安全隱患從而避免無謂的事故就要求檢測效果要盡可能的準確。這就需要我們在目標檢測算法的準確性和實效性之間進行有效地平衡。
目前,行人檢測主要受到兩個因素的影響:機器學習分類算法和設計的圖像特征表示。
從分類器的設計上大體可以分為DPM變體、Deep Networks和Decision Forests三種形式。在足夠多的特征環境下,目前還尚且沒有直接的結果表明一個特定的分類器壓迫比其他分類器更適合行人檢測。ConvNet[1]在INRIA數據集構建一個卷積神經網絡,直接在原始像素值上通過自學習底層特征來泛化為高層次的特征。盡管目前尚沒有相關實驗直接表明深度神經網絡善于從行人檢測中學習特征,但許多成功的方法都使用這個架構來構造更高層次的特征,且實驗結果接近了DPM和決策森林等方法[2-3]。
從選取人為設計的圖像特征表示來看,目前大部分方法關注的都是邊緣紋理、顏色通道、局部形狀信息和協方差特征信息等,而對于立體信息、光流信息以及跟蹤信息的研究還有待進一步深入。文獻[4]在基于遞歸的二值圖像連通區域像素標記算法基礎上,加入運動目標的幾何特征,很好地實現了多運動目標的檢測。研究表明,使用額外的信息對于提高檢測結果確實具有重要的意義,大約30%的方法都是通過在輸入圖像中增加或多樣化特征,采用更豐富和更高維度的表示來提高檢測質量的。
在快速行人檢測方面,Benenson等[5]通過引入stixels世界模型的先驗知識縮小目標物體的檢測范圍。通過對地面信息進行檢測,快速地排除地面以下以及行人以上的天空區域等自由空間,縮小檢測范圍,從而起到快速檢測的效果。在目標檢測階段,基于積分通道特征對輸入圖像進行線性或非線性轉換,并利用積分圖快速地計算出每個通道的局部矩形區域從而生成相應的特征信息。
在多尺度方面,傳統的方法是通過對圖像進行縮放得到單模型。但是,這樣得到的最優模型的大小很難把握,同時,由于像素的離散化,小尺度的圖像會出現“模糊”問題,而在進行檢測的時候也需要對輸入圖像再進行縮放。Dollár等[6]提出一種新的方法,由于相鄰尺度之間可以相互近似,這樣我們只需對圖像縮放N/K次,并用其近似剩下的N-N/K。Benenson等[5]將Dollar的方法進行了“逆轉”,訓練出N/K個分類器,然后用這N/K個分類器近似余下的N-N/K個不同尺度的分類器,這樣在測試階段就不需要對輸入圖片重復縮放,從而通過這種將縮放圖片的任務從測試階段轉移到訓練階段來達到快速檢測的效果。
本文將二維非線性擴散濾波方法擴展到三維時空域,提出了一種新的3DKAZE特征點檢測與描述方法,從而更好地適應視頻序列。同時,提出了一種基于3DKAZE通道特征的行人檢測算法,通過雙目視覺的方式獲取輸入圖像對中行人的深度信息,映射到v-disparity圖中并利用Hough線檢測到地面進而排除了地面和天空等非目標區域,從而縮減了行人檢測范圍。再采用HOG+LUV+3DKAZE的積分檢測算子進行檢測,最終通過訓練得到的SoftCascade分類器對得到的描述子進行分類,進而獲得行人目標。
傳統的高斯線性核在構建高斯線性尺度空間的同時也破壞了圖像的邊緣細節,降低了圖像的局部準確率和辨別率。相比之下,KAZE[7]等非線性核方法的效果要好得多。通過非線性的擴散濾波,KAZE特征檢測與描述算法在降噪的同時也保留了很好的目標物體的邊緣細節。但是,KAZE特征是基于二維的空間域,這就使得KAZE方法丟失了視頻序列的時間維度信息。基于此,本文提出了一種新的3DKAZE特征檢測和描述方法,通過非線性時空轉換來完善視頻序列中的時空信息。
1.1 非線性尺度空間的構建
非線性擴散濾波是由Perona等[8]提出的。通過在擴散過程中引入電導率函數的概念,從而更好地適應圖像的局部結構來減少邊緣位置的擴散,這就使得圖像是在一個區域內做平滑操作而不是跨過邊界做平滑。擴展到三維的電導率系數c為:
(1)
非線性擴散方法通常都是以非線性偏微分方程的形式給出。本文擴展的三維電導率系數c的非線性擴散方程定義如下:

c(x,y,t,e)·△I+▽c·▽I
(2)
其中,div是散度算子, ▽和△分別是時空變量對應的梯度算子和拉普拉斯算子。為了能夠維持算法得穩定性,我們將像素級的離散尺度單元σ轉換成時間單元,即有e=σ2/2。從理論上來說,這些非線性擴散濾波的偏微分方程式沒有解析解的。Perona等提出了一種半隱式的機制,該機制基于非線性擴散尺度空間的框架通過加性運算分離AOS(Additive Operator Splitting)算法來近似微分方程。
1.2 特征檢測與描述
在已構建的三維時空非線性尺度中檢測特征點的想法源自于傳統的二維空間域特征點檢測,目的是找到那些在視頻序列中的空間和時間維度上都發生大的變化的點。為了能夠快速地檢測這些興趣點,我們計算一個尺度歸一化的時空二階Hessian矩陣的響應值,通過在時空維度的不同閾值以及響應值閾值來判定興趣點。
(3)
其中,Lxx、Lyy、Ltt分別是水平、垂直方向、時間維度的二階導數,而Lxy、Lxt、Lyt分是三個維度的混合二階導數。假設H(·;δ2)的三個特征值分別為λ1、λ2、λ3,(λ1<λ2<λ3),計算擴展的時空角點Hessian響應值為:
H=det(H)-ktrace3(H)
=λ1λ2λ3-k(λ1+λ2+λ3)3
(4)
為了得到一個具有旋轉不變性的描述子,我們給興趣點的鄰域指定一個主方向。通過計算時空維度方向的Haar小波響應 ,Lx、Ly、Lt。對應的時空梯度表示如下:
(5)
到目前為止,每個像素點具有三個變量來表示梯度在時空維度上的幅值和方向了。如圖1所示,在以興趣點為中心,半斤為6δ的球形區域內,我們均勻地將球體分成20等份。對于其中的每一塊,計算以興趣點為中心呈高斯分布計算分權的小波響應,響應結果以平行于時空維度軸向的Haar小波Lx、Ly、Lt的向量來表示。其中最長的向量就是興趣點的主向量。最終可以得到描述子v:
v=(∑Lx,∑Ly,∑Lt,∑Lxx,∑Lyy, ∑Ltt,∑Lxy,∑Lxt,∑Lyt)

圖1 主方向計算示意圖
傳統的圖像深度圖目標檢測是通過立體圖像對建立一個密集的深度圖,該深度圖可以被用作特征檢測以增強檢測質量,或者被用來減少搜索空間以提高檢測速度。如圖2所示。

圖2 傳統的圖像深度圖計算過程
由于傳統的圖像深度圖計算的高復雜度成為了快速檢測過程的一個瓶頸,并且密集深度圖的信息遠遠多于我們需要的信息。而stixels世界模型可以對真實世界進行簡化,它假設地面都是局部平坦的,并且所有的物體都可以被描述成一個平的“sticks”,垂直于地面,每個這樣的垂直的sticks對應著圖片中的一列,被稱作stixels[5]。stixels世界模型通過利用幾何信息計算出地面上的物體區域,也就是物體的最小世界模型。通過stixels世界模型的先驗知識,我們可以大大縮小目標行人的搜索范圍。
stixels世界模型會假設地面是局部平坦的,并且地面上的目標物體的高度是限制在一定的范圍,通常在0.5~3 m。從模型簡化角度來說,stixels世界模型可以分解成三個部分:獲取地平面、計算地平面上行人間的距離、計算目標行人的高度。
2.1 地平面評估
stixels世界模型為路平面提供了很好的幾何表示[12],它對路平面上的障礙物的相對高度以及立體傳感器相對于路面的俯仰角都給出了評估,進而對公路縱剖面圖進行分析,抽取出路平面上的目標物體。
通過雙目立體圖像對,可以計算得到視差圖I△。如圖3所示,定義視差圖I△的函數H,有H(I△)=Iv△,其中H對圖像中某一行中具有相同的視差進行累積。我們稱Iv△為v視差圖(v-disparity image)。對于圖像中的第i行來說,II△中的點M的橫坐標uM就對應著視差△M,它的灰度級IM則對應著第i行具有相同視差△M的像素點數。所以,通過視差圖I△,就可以沿著v軸計算出v視差圖Iv△。

圖3 v-disparity圖計算過程
2.2stixels距離和高度評估
地平面的評估是通過計算水平軸方向上投影的損失量。獲取stixels的深度信息從而得到stixels之間的距離信息就需要沿著垂直方向投影,并計算垂直方向的損失量。對于每個u坐標和可能的視差d,通過計算stixels損失量cs(u,d),損失值越小則stixels出現在(u,d)位置的可能性越大。cs(u,d)是有兩部分組成的:co(u,d)的物體損失和cg(u,d)的地面損失,即cs(u,d)=co(u,d)+cg(u,d),而:
(6)
其中,|v|表示圖像的行數。通過二維動態規劃可以計算出每個stixels的視差[5]:
(7)
相比較圖像強度,SAD和SSD雖然對光源的一致性依賴性比較強,邊緣方向對光的敏感性也要好很多,但是面對遮擋問題或者路面潮濕出現反射時,檢測就會出現嚴重誤差。所以在計算損失量的時候添加了一項平滑項,有效地解決部分遮擋問題。由于損失量cm(u,v,d)計算出后都被保存在內存中,并且這個步驟是基于像素計算的,所以可以很好地實現并行計算,從而達到快速檢測的效果。圖4給出了實驗的結果示意圖。

圖4 stixels距離計算以及目標的高度評估
積分通道特征ICF(Integral Channel Features)是指通過對輸入圖片進行非線性轉換計算得到多個圖像通道[6],然后在每個通道上使用局部矩形區域和的特征抽取,這些局部和以及特征可以通過積分圖像得到有效的計算,其中包括Haar小波、泛化特征以及局部直方圖等,我們把這些特征叫做積分通道特征。
對于輸入圖像I來說,相應的通道就是原圖像的一個映射。使用符號Ω表示通道生成函數,記C=Ω((I)。那么最普通的通道就是通道C=Ω(I)=I的一張原圖像的灰色圖;類似的,對于彩色圖中的每個顏色通道都可以作為一個特征通道;其他的通道可以通過對原圖像進行非線性轉化計算得到。大量實驗結果表明,積分通道特征結合標準的Boosting分類算法對行人檢測的效果要好于其他方法。因為其具有以下優點:(1) 不同的通道信息之間具有高度異構性,所以ICF天生具有整合異構信息的能力;(2) 只需極少個參數,所以對參數設置沒有那么敏感;(3) 檢測階段考慮到更加準確的空間位置;
本文采用的是HOG+LUV+3DKAZE等11個積分通道特征,即HOG量化后的6個梯度方向、1個梯度幅值,LUV 3個顏色通道以及3DKAZE局部特征通道信息。從某種意義上來說,積分通道特征可以被看作是經典的VJ和DT(HOG+SVM)的結合。
在分類器的設計方面,平衡分類器的準確性和實時性一直是研究的難點。一個常用的方法就是Cascade分類器:將復雜的分類器分解成一系列二分類的子分類器,形成了這種分類器中的決策樹,通過由粗到細的逐步分解,以減少復雜度。但是Cascade在通過二分類的子分類器的時候并沒有考慮到樣本在當前子分類器中表現的好壞,而且如果樣本在任一子分類器中沒有通過的話,該樣本就會被丟棄。對于一個10個階段的Cascade分類器來說,如果想要在假陽性(false positive rate)為下達到90%的檢測率,則每個子分類器階段都要達到99%的檢測率。鑒于此,SoftCascade訓練出的是一個單一的由T個特征組成的持續的階段,分類器的結果形式如下:
(8)
通過計算部分和,構成每個樣本的特征“軌跡”,為不同特征之間形成一個很強的統計獨立性。在“軌跡”線上的每個特征點設置閾值,如果累積和小于閾值,該樣本就被判定為負樣本。而“軌跡”線上的每個輸出函數都是通過AdaBoost選擇的,輸出函數對應的權重代表著這個弱分類器的重要性。
為了實現實時行人檢測,我們利用stixels世界模型的先驗信息,縮小視頻的檢測范圍,從而加快檢測速度。在模型分類上,SoftCascade分類器能夠有效地終止那些不可能的檢測,減少計算量,提高了檢測速度。本文實現了兩種檢測方法:CPU版和GPU加速版。實驗環境是在一臺高性能圖形工作站中進行的,配有i7-3770K的CPU、24 GB的RAM、Nvidia Quadro 4 000 的專業顯卡。在Caltech數據集中的整個訓練階段(CPU+GPU)大約花了5個小時。GPU加速運行的測試下,檢測速率可達到100 fps。
4.1 公共數據集
過去幾年中,很多公共的行人檢測數據集被提了出來,其中最常用的幾個有:INRIA,ETH以及Caltech。INRIA是最久的一個數據集,相對來說其圖片數量要少,但是它的優點是在不同場景下(城市、沙灘、高山等)對行人的標記都有很高的準確率,這也是其經常被用來作為訓練集的又一原因。ETH規模相對來說屬于中等。除了INRIA,其他的數據集都是通過視頻的方式采集的,所以當考慮光流信息的時候很有用處。在這些數據集中,最流行的要數Caltech這個基準數據集了。目前,大部分視頻檢測方法都在Caltech上進行評估。
4.2 模型訓練
本文的方法是基于Benenson的VeryFast檢測子,VeryFast的思想是通過計算圖像矩形區域的特征響應的積分通道圖來實現的。在這些矩形特征上構建了一系列兩層的決策樹,其中每棵樹上有三個樹樁分類器,在這2 000個二層的決策樹的弱分類器中通過Boosting進行線性加權得到一個強分類器。這些決策樹和他們的權值都是通過離散AdaBoost得到,特征是從30 000個矩形池中隨機選取的。訓練剛開始是隨機選取5 000個負樣本,然后boostraps兩次,每次增加額外的5 000個負樣本。整個訓練和測試都是在Caltech數據集下進行的。
圖5中,(a) 是所有特征中的權重最大的前10個的特征在矩形區域的局部反應,不同顏色表示正方形的面積是其權重的反應;(b) 顯示的是HOG+LUV+3DKAZE的11個通道特征在最后訓練模型中所占特征比例圖。

圖5 特征分布情況
4.3 檢測結果
為了對不同的目標檢測子進行評估,常用的是從兩個方面進行評估:基于窗口的檢測子用的是DET(Detection Error Tradeoff)和ROC(Receiver Operating Characteristics)曲線對分類器性能進行量化。而從整體上來說,目標檢測子是通過Precision-Recall曲線來衡量檢測子對目標位置的檢測準確率。不管從什么角度來說,檢測子都會得到一個置信度值,通過從一個很低的可能值開始,評估得到參數,如假陽性數(False Positives)、召回率(Recall Rate)或者準確率(Precision Rate),然后逐步增加閾值直到達到可能的最高值,這樣就得到一個曲線。
實驗中采用DET評估方法。DET衡量的是檢測結果與假陽性的比例,在log-log尺度下畫出一條MR(Miss Rate,沿著x軸方向)與FPPI(False Positives Per Image,沿著y軸方向)的對應曲線,其中MR值越小,表示分類器效果越好。其值包含的信息與ROC曲線相同,其優點是可以讓小概率FPPI的辨別率更容易,尤其是在滑動窗口數量在1 000~10 000級別之間的時候就顯得更有必要了。比如通常會使用的假陽性作為檢測結果的參考點。
在數據集的選用上,我們分別在Caltech、ETH以及INRIA三個基準數據集中進行了測試。并將結果分別與ConvNet[1]、VeryFast[5]、FPDW[6]、RandForest[9]、Franken[10]、WordChannels[11]、MultiFtr+Motion[12]、JointDeep[13]、InformedHaar[14]、ACF[15]等檢測子進行了比較。從圖6可以看出,本節中提出的加入3DKAZE新特征通道后的目標檢測算法的檢測結果達到了很好的水準。圖7給出了檢測算法在CPU和GPU下的檢測結果。

(a) Caltech

(b) ETH

(c) INRIA圖6 不同檢測子與本文的檢測子的比較結果

圖7 檢測結果示意圖
本文提出了一種基于3DKAZE通道特征的行人檢測算法,在stixels世界模型中利用雙目視覺將輸入圖像對映射到v-disparity圖中進而排除地面和天空等非目標區域,從而縮減了行人檢測范圍,并采用HOG+LUV+3DKAZE的積分檢測算子進行檢測,最終通過訓練得到的SoftCascade分類器對得到的描述子進行分類檢測。
本文提出的檢測算法是通過添加人為設計的新特征來提高檢測精度的。相比之下,深度神經網絡通過對原始像素值進行特征抽取從而進行自學習底層特征以泛化為高層次的特征,盡管目前尚沒有確切的證據表明深度神經網絡善于從行人檢測中學習特征,但是深度學習在探索到底是什么讓現在這些人為設計的特征具有很好的表征特性方面具有重大意義,進而設計出更好的特征。
[1] Russakovsky O, Deng J, Su H, et al. ImageNet large scale visual recognition challenge[J]. International Journal of Computer Vision, 2015, 115(3): 211-252.
[2] Szegedy C, Liu W, Jia Y, et al. Going deeper with convolutions[C]//Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition, 2015: 1-9.
[3] Girshick R, Iandola F, Darrell T, et al. Deformable part models are convolutional neural networks[C]//Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition, 2015: 437-446.
[4] 崔金魁,宋旭,楊揚.視頻監控中多運動目標的檢測與跟蹤[J].計算機應用與軟件, 2013, 30(3): 278-279,290.
[5] Benenson R, Mathias M, Timofte R, et al. Pedestrian detection at 100 frames per second[C]//Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on, IEEE, 2012: 2903-2910.
[6] Dollár P, Belongie S, Perona P. The Fastest Pedestrian Detector in the West[C]//Proceedings of the British Machine Vision Conference, 2010: 1-11.
[7] Alcantarilla P F, Bartoli A, Davison A J. KAZE features[C]//Proceedings of the 12thEuropean Conference on Computer Vision. Springer, 2012: 214-227.
[8] Perona P, Malik J. Scale-space and edge detection using anisotropic diffusion[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1990, 12(7): 629-639.
[9] Marin J, Vázquez D, López A M, et al. Random forests of local experts for pedestrian detection[C]//Computer Vision (ICCV), 2013 IEEE International Conference on, IEEE, 2013: 2592-2599.
[10] Mathias M, Benenson R, Timofte R, et al. Handling occlusions with franken-classifiers[C]//Computer Vision (ICCV), 2013 IEEE International Conference on, IEEE, 2013: 1505-1512.
[11] Costea A D, Nedevschi S. Word channel based multiscale pedestrian detection without image resizing and using only one classifier[C]//Computer Vision and Pattern Recognition (CVPR), 2014 IEEE Conference on, IEEE, 2014: 2393-2400.
[12] Ouyang W, Wang X. Single-pedestrian detection aided by multi-pedestrian detection[C]//Computer Vision and Pattern Recognition (CVPR), 2013 IEEE Conference on, IEEE, 2013: 3198-3205.
[13] Ouyang W, Wang X. Joint deep learning for pedestrian detection[C]//Computer Vision (ICCV), 2013 IEEE International Conference on, IEEE, 2013: 2056-2063.
[14] Zhang S, Bauckhage C, Cremers A B. Informed haar-like features improve pedestrian detection[C]//Computer Vision and Pattern Recognition (CVPR), 2014 IEEE Conference on, IEEE, 2014: 947-954.
[15] Dollár 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.
REAL TIME PEDESTRIAN DETECTION BASED ON 3DKAZE CHANNEL FEATURE
Chen Yimin Zou Guozhi Zou Yibo Gao Yapin Zhao Linlin
(CollegeofComputerEngineeringandScience,ShanghaiUniversity,Shanghai200444,China)
A new 3DKAZE feature point detection and description method is proposed by extending the two-dimensional nonlinear diffusion filtering method to three-dimensional space-time domain. At the same time, a real-time pedestrian detection algorithm based on 3DKAZE channel feature is proposed. Using binocular vision to obtain the depth of pedestrian information in the input image and then exclude the free area of the ground and the sky, and using HOG + LUV + 3DKAZE integral detection operator for detection. Finally, we classify the descriptors by training SoftCascade classifier, and finally get the target pedestrians. The experimental results in Caltech, ETH, INRIA and TUD-Brussels four common benchmark datasets show that the pedestrian detection algorithm proposed in this paper achieves a good level of accuracy in the detection results, and also has a fast real-time effect.
Fast pedestrian detection Integral channel feature 3DKAZE Binocular vision
2016-03-15。上海市國際科技合作基金項目(12510708400);上海市自然科學基金項目(14ZR1419700)。陳一民,教授,主研領域:網絡與多媒體技術,計算機控制技術。鄒國志,碩士生。鄒一波,博士生。高雅平,碩士生。趙林林,碩士生。
TP391
A
10.3969/j.issn.1000-386x.2017.05.022