作者:何許梅,舒小華,谷志茹,韓 逸,肖習雨
0 引言
行人檢測是目標檢測領域中重要的研究課題,其在智能駕駛系統、視頻監控、人流量密度監測等領域有廣泛應用。但由于行人背景的復雜以及個體本身的差異,行人檢測成為目標檢測領域的研究難點之一。
目前行人檢測方法主要分為兩類:傳統的行人識別主要通過人工設計特征結合分類器的方式進行。比較經典的方法有HOG+SVM、HOG+LBP 等。此類方法可以避免行人遮擋帶來的影響,但是泛化能力和準確性較低,難以滿足實際需求。另一類是基于深度學習的方法。通過多層卷積神經網絡(CNN) 對行人進行分類和定位。與傳統特征算子相比,CNN 能根據輸入的圖像自主學習特征,提取圖像中更豐富和更抽象的特征。目前已有許多基于深度學習的目標檢測框架,如R-CNN(Region Convolutional Neural Network) 系列、YOLO(You Look at Once) 系列。R-CNN 系列算法又被稱為二階段算法,該類算法通過網絡找出待檢測目標可能存在的位置,即疑似區域,然后利用特征圖內的特征信息對目標進行分類,優點是檢測準確率較高,但實時性較差。YOLO 系列算法又稱為一階段算法,此類算法所有工作過程在一個網絡內實現,采用端到端的方式,將目標檢測問題轉換為回歸問題,使其網絡的實時性得到了較好的提高,但準確率卻不及Faster R-CNN(Faster Region Convolutional Neural Network,更快速的區域卷積神經網絡)。
本論文借鑒目標檢測的R-CNN 系列算法,在Faster R-CNN 網絡的第一層卷積層前加入一個預處理層,其次使用K-means 算法聚類分析anchor 框中行人的寬高比,選出適合行人的寬高比作為anchor 的尺寸,提出交通場景下基于Faster R-CNN 的行人檢測算法。所提方法在自制的交通場景下的數據集上進行測試,實驗表明網絡的檢測效果有明顯提升。
1 Faster R-CNN檢測方法
Faster R-CNN 的檢測框架如圖1 所示。其檢測流程主要分為4 部分:卷積網絡、RPN(Region Proposal Network)、感興趣區域池化(RoI Pooling) 以及目標檢測分類。
卷積網絡由卷積層、池化層和輸出層構成,各網絡層之間權值共享,從訓練的數據集中學習并自動提取目標特征。與傳統手工設計特征相比,具有更好的泛化能力。
RPN 使用一個3×3 的塊在最后一個卷積層輸出的特征圖上滑動來獲得區域建議框即anchor 框,FasterR-CNN中的anchor 框有3 種比例尺寸,分別為0.5、1、2。
Faster R-CNN 的全連接層需要固定大小的輸入,因此通過RoI 池化將不同大小的RoI 轉成固定的大小。圖2 為RoI 的池化過程。
在檢測分類階段,分類函數計算得分,得到目標的所屬類別,同時通過邊界框回歸計算出檢測框的位置偏移量,得到更精確的位置。
2 改進的行人檢測方法
Faster R-CNN 是針對通用目標的檢測網絡,識別的類別數為20,但在行人檢測中只需要識別“行人”及“背景”這兩個類別。由于圖片中的行人在圖片中所占的比例較小,因此設計一個預處理層,提取一層底層特征(本文提取紋理特征),再與原始圖像一起輸入到卷積網絡中,能夠減少訓練所需的時間。
2.1 預處理層
選擇傳統行人檢測方法中的紋理特征(LBP 特征) 作為預處理部分要提取的特征。LBP 特征描述了圖片的局部紋理,它以每個像素值為中心取一個局部鄰域區域,比較該區域內的每個像素的灰度值與中心像素的灰度值,得到一個二進制碼,即該中心像素的LBP 值。但會導致二進制模式種類過多,所以等價模式(Uniform Pattern) 應運而生。等價LBP(ULBP) 在LBP 算子的基礎上,統計二進制數中“01”或“10”跳變的次數,若跳變次數在2 次以內,則稱為一個等價模式類,定義式為:
式中, gp 表示鄰域像素值, gc 表示中心像素值,U(LBP ) P,R 代表“01”或“10”的跳變次數。
從圖3 中可以看出,圖像中行人與背景的區別轉換成了紋理上的差異。
(a)原圖
(b)ULBP圖
圖3 原圖與ULBP圖
2.2 anchor框聚類分析
使用k-means 聚類對訓練集中所有行人目標的真實框進行聚類分析。anchor 框聚類分析算法的主要流程:
Step1:將訓練集中所有目標框的寬高構成數據集D,再從D 中隨機選擇一個聚類中心ci false;
Step2:求D 中每個樣本s 到ci 的距離,記為di ,將使di 最小的那個樣本歸到ci 中;
Step4:循環執行Step2 和Step3,直到聚類中心不變。
取出所有行人標注框的坐標信息,計算出每一個標注框的寬和高,并對其進行聚類統計,這里取聚類數k = 3 。隨后,計算寬與高的比值,使用統計直方圖的方法求出其均值,得到寬高比的均值μ = 0.39 ,也就是說訓練集中目標的anchor 框的合適的寬高比是0.39,即w ≈ 0.39h。圖 4 為行人 anchor 框的寬高統計結果。
因此,本文將原Faster R-CNN 算法中anchor 框的寬高比修改為(0.39:1)。
a)寬高統計圖
(b)寬高比統計圖
圖4 寬高聚類分析
3 實驗結果與分析
3.1 實驗數據集
實驗數據集來源有:車載攝像頭拍攝的圖片、手機拍攝的圖片,選取光照條件比較好的圖片作為數據集,采用LabelImg 圖像標注工具對采集到的圖片進行標注,標注的區域包含行人的輪廓,得到帶標簽的行人數據集,共計1 304 張。標簽名統一采用person 表示。在模型的訓練階段,選取數據集的80% 來訓練模型,20% 作為測試集。部分實驗數據集如圖5 所示。
圖5 數據集樣本
3.2 實驗平臺及訓練
實驗所使用的軟硬件環境如表1 所示。
表1 軟硬件配置
訓練參數如表2 所示。
表2 訓練參數設置
3.3 實驗結果分析
實驗采用平均準確度(mAP)作為判斷算法性能的標準。在自制的數據集上進行實驗,檢測精度達到了90.1%。所提方法檢測結果與直接使用Faster R-CNN的檢測效果對比如圖6 所示,圖6(a) 表示直接使用Faster R-CNN 的檢測效果,圖6(b) 表示所提算法的檢測效果,通過左右圖片對比可以看出,使用所提算法檢測出來的目標個數要優于調整前的檢測個數。
(a) Faster R-CNN檢測結果
(b)本文方法結果
圖6 測試結果對比
為了比較調整寬高比對模型準確率的影響,在自制數據集上對原算法和所提算法分別訓練40 000 次。得到的檢測準確率如表3 所示,所提算法的準確率較原算法提高了1.8%。
表3 調整寬高比前后測試結果
4 結語
以Faster R-CNN 為基礎,通過在卷積層之前加入一個預處理層成功實現行人檢測的目標。以自制數據集為訓練和測試網絡所需的數據,針對漏檢和誤檢,提出將紋理特征作為底層特征對原圖進行預處理,同時使用K-means 算法對行人寬高比進行統計分析,得出適合數據集中行人的寬高比尺寸,達到降低漏檢的目的。實驗測試結果表明,本文算法可以有效提高交通場景下行人檢測的準確率,在漏檢率和誤檢率上,分別提高了5%、6.1%。但存在訓練樣本還不夠豐富,因此下一步研究工作的重點將放在提高檢測模型的實時性和魯棒性上。
責任編輯:tzh
-
視頻監控
+關注
關注
17文章
1710瀏覽量
64951 -
網絡
+關注
關注
14文章
7553瀏覽量
88731 -
檢測
+關注
關注
5文章
4480瀏覽量
91443 -
深度學習
+關注
關注
73文章
5500瀏覽量
121113
發布評論請先 登錄
相關推薦
評論