夏金銘 范伊紅 柳昌志 段高輝



摘要:在校舍環境下,行人密集、遮擋、多尺度等問題比較常見,本文使用Faster R-CNN進行校舍復雜環境下的行人檢測,訓練樣本時,引入了一種困難樣本挖掘訓練策略,在挑出困難樣本的同時,對困難樣本的權重進行調整,使訓練更有側重點;使用LabelImg對數據集進行標注,將VOC2007及標注樣本進行合并得到VOC2007擴充數據集,在此數據集上進行訓練及測試。實驗結果顯示,與Faster R-CNN常用的四步訓練法相比,使用本文訓練方進行訓練,泛化性能得到明顯的提升。
關鍵詞 :卷積神經網絡;Faster R-CNN;困難樣本挖掘;行人檢測;LabelImg
中圖分類號:TP391? ? ? ? 文獻標識碼:A
文章編號:1009-3044(2019)24-0218-04
開放科學(資源服務)標識碼(OSID):
An Algorithm based on Faster R-CNN for Pedestrian Detection
XIA Jin-ming, FAN Yi-hong*, LIU Chang-zhi, DUAN Gao-hui
(School of Software, Henan University of Science and Technology,Luoyang 471000,China)
Abstract: In the school environment, pedestrian-intensive, sheltered, multi-scale problems are common.In this paper, Faster R-CNN is used for pedestrian detection in complex environment of school buildings. When training samples,? A training strategy for Difficult Sample Mining is introduced, which adjusts the weight of difficult samples while picking out difficult samples, so as to make training more focused. LabelImg is used to lable the data sampled in complex environment. Then VOC2007 and the annotated samples are merged to obtain extended VOC2007 data set. Training and testing are carried out on this basis to establish the model with good performance. The experimental results show that compared with the four-step training method commonly used in Faster R-CNN, the generalization performance is improved by using this training method.
Key words: Convolutional Neural Network;Faster R-CNN;Difficult Sample Mining;Pedestrian detection;LabelImg
校舍安保是寄宿制學校安全問題的重中之重,雖然現今學校對校舍安保極為重視,但安保人員數目畢竟有限。校舍監控輔助系統可以更好地協助安保人員的工作,因此,智能安保系統得到了廣泛的關注。該系統中行人檢測算法必不可少,行人檢測的過程可以分為特征提取和分類兩個階段。傳統行人檢測常用的特征描述算子有HOG(Histogram Of Gradients)[1]、積分通道特征[2]等,其中HOG由于自身的優越性能,在行人檢測特征提取方面,最為常用。分類器的選擇也會直接影響檢測的準確性,SVM[3]分類器由于其實現簡單,效果好,也被廣泛用于各種分類任務。
本文使用Faster R-CNN[5]算法進行行人識別,并且引入了困難樣本挖掘訓練策略提升算法泛化性能。
1 Faster R-CNN介紹
1.1 總體介紹
Faster R-CNN[5]總體可以分為三個部分:用于獲取輸入圖片特征的卷積神經網絡、用于區域建議的RPN(Region Proposal Network)、用于分類的剩余部分網絡。整體結構如圖1所示。
1.2 卷積層(Conv Layers)
本文算法使用VGG16[6]提取圖像特征。VGG16(圖2)中共有13個卷積層,13個ReLu層,4個pooling。最終輸出的特征圖為原始圖像尺寸的1/16,輸出的特征圖被RPN使用進行預測。
RPN的整體架構如圖3,其中最重要的處理為Proposal。
Proposal的具體過程:1.生成anchor;2.對anchor進行邊框回歸(Border Box Regression) ;3按照step1中預測邊框的得分值,對第2步中的邊框回歸結果進行第一次由大到小的排序,并提取前6000個前景定位信息;4.對超出圖像邊界的前景定位信息進行修正,使其處于圖像內;5.剔除寬高非常小的前景定位信息;6.進行非極大值抑制(Non-Maximum Suppression ,NMS);7.將NMS后的前景定位信息按照第3步中相同的方法進行排序,并取前300個前景定位信息作為下一層的輸入。
anchor生成過程:把給定的初始正方形anchor的面積進行1:2:0.5的變化形成三種不同面積的anchor后|將其邊長在保持面積不變的情況下進行1:1、1:2、2:1的比值變化,最終形成9種不同比例的anchor。為了使anchor更準確,可使用邊框回歸(Border Box Regression) [5] 提升精確度。
整體網絡的函數優化目標為:
[w*=argminW*iN(ti*-WT**?(Ai))2+k|W*|2]
即對目標函數進行凸優化獲得F的參數,使用梯度下降方法容易實現。
整個網絡的損失函數如下:
[LossRPN=1NclsiLclspi,p*i+k1Nregip*iLregti,t*i]
其中的:
[p*i=1,? IoUi>0.70,? IoUi<0.3]
[Lregti,t*i=i∈(x,y,w,h)smoothL1(ti-t*i)]
[smoothL1x=0.5x2,? |x|<1x-0.2,? others]
上式中分類的損失值是在RPN層中計算的,是前景的softmax結果,由于[Lcls]和[Lreg]結果差距過大,引入k平衡二者的值。
1.3 Faster R-CNN的訓練
Faster R-CNN的訓練方式有兩種,一種是聯合訓練;另一種是將RPN和Fast-RCNN分開訓練來提高模型的泛化性能,即四部法訓練。
2 困難樣本挖掘訓練策略
在對Faster R-CNN進行訓練時,每一次的訓練僅僅是對這個訓練集中的每個樣本進行均等可能的選擇。即在一輪訓練中訓練樣本所占的權重相等,這種訓練方式最大的問題在于沒有側重點。由于訓練樣本規模有限,學習器想要在小規模樣本下對于校舍環境下行人密集,遮擋,多尺度,模糊等樣例有較好的預測結果很困難。困難樣本挖掘訓練策略的思想來源于Adaboost [7-8],以及難負樣本挖掘[9]。本文訓練策略綜合以上方法優點,對于困難樣本權重進行定量改變。
Adaboost的目的是將弱可學習算法轉換成非常精確的強可學習算法。其算法過程是:
(1)對于給定的數據集及其分布訓練出一個分類器;
(2)通過這個分類器更新樣本的權值,即將分類錯誤的樣本的權值進行增加,形成一個新的數據集;
(3)用新的數據集重復1,2過程直到所需的T次;
(4)通過加權的方式將所有的分類器結果結合起來;
文獻[10]中針對難負樣本挖掘方法進行了優化,其創新在于挑選出了難正樣本。本文提出的訓練策略進一步對困難樣本的權重進行調整。
本文訓練策略分多個步驟,首先使用四步訓練法訓練得到模型[At],然后計算此模型[At]在訓練數據集[Dt]上的誤差:
[?t=Px~Dt(At(x)≠F(x))]
計算此模型的權重:
[αt=12ln (1-?t?t)]
對于在這一輪學習器中挑選出的困難樣本進行調整,其中[F(x)]為真實結果:
[Dt+1x=DtZteαt? ? ? ? ? ?,? ? ? ?At(x)≠F(x)]
最后通過加權的方式確定最后一輪使用訓練集樣本的權重:
[D'=αt×Dt]
然后將此過程中的模型進行性能評估后挑選最合適的模型進行使用。圖5表示了訓練過程。
對于[At(x)≠F(x)]的判斷,本文同時考慮單個樣本的漏檢及錯檢情況。我們將每張圖片中,前景區域分類得分小于0.3的歸類于非人,即這些預測結果被歸類于反例,若這些得分小于0.3的預測結果中有和真實情況一致的,其歸類于漏檢。
在分類時,送入Fast-RCNN的是RPN區域建議結果映射到卷積層輸出的特征圖。區域建議的結果會直接影響分類的準確率,根據這一特性,在單個樣本的IoU均值小于整體樣本的均值時,我們更傾向于把那些樣本作為困難樣本,在單個樣本IoU大于整體IoU均值時,我們更傾向于把單個樣本比分類平均得分低的那些作為困難樣本的主要考察點。綜上所述,可以得到以下篩選圖像的方法:
[II11+e-θEU-ui+EP-pi>1]
由于我們僅僅取[pij>0.3]的部分([pij]是第i個樣本中第j個前的分類得分值)。綜合考慮,當[θ=30]時比較合適。其中[ pi]為單個樣本的分類平均得分,即真正例得分的和除以正例數。E(U)為訓練集整體的IoU均值,E(P)為訓練集整體的預測平均得分,計算方法同[ pi]。
3 實驗分析
3.1數據集
本文訓練集采用了VOC2007中person分類的2095張圖片,同時使用LabelImg進行校舍環境下采樣,并對得到的數據集進行標注,從而得到擴充的新的數據集。詳細情況如表1所示。
數據集中的樣本:80%用于訓練,剩余的20%用于測試。以下段落中,將此合并數據集稱為VOC2007擴充數據集。
3.2 訓練
本文實驗在Tensorflow(GPU)上進行,操作系統使用Win10,硬件信息為:CPU為Intel i7-6700HQ,顯卡是NVIDIA GTX1060(3G),內存16G。
訓練共進行六輪。前五輪中,第一輪使用VOC2007擴充數據集不改變訓練集樣本的權重進行50000次的訓練,生成的模型作為對比組。剩下的四輪,每一輪訓練30000次后,使用此輪訓練得到的模型對訓練集樣本進行預測,進而生成下一輪訓練的數據集。第一次生成的訓練集樣本的分布情況如圖7。最后一輪訓練所使用的訓練集是考慮前四輪訓練集中訓練集樣本的權值而生成的。
3.3檢測結果分析
由表2和表3可知,相較于四步訓練法,本文訓練方法查全率有1.67%的提升,并且mAP也有些許提升。在本文訓練方法第四輪中,mAP有0.71%的提升,并且查全率也有1.23%的提升。
由圖8可以看出,第一組對照樣本人與人之間出現了遮擋且密集。相比較之下,本文訓練方法在保證前景建議區域位置準確的情況下,查全性能也更好一些。
分析第二組對照圖片可得出:Faster R-CNN更傾向于把密集的人群當作是單個的人,習得人的特征并不是特別好,造成這種情況的主要原因是RPN的輸出不準確。相較于四步訓練法,本文訓練方法由于對RPN輸出與GT(Ground Truth)偏差較大的樣本權值進行了增大,在訓練時更多次的訓練了偏差較大的樣本,所以RPN的輸出也更加的準確,這種預測不準的情況也稍有改善。
由圖9可以看出,在小尺度、密集情況下,Faster R-CNN表現情況欠佳。相比較于四步訓練法,困難樣本挖掘方法檢測出了更多的人。即在行人小尺度的情況下,本文訓練方法適性更強,泛化性能也相對更好。
4 結束語
本文使用Faster R-CNN來替代傳統的行人檢測算法,并且提出困難樣本挖掘訓練策略,改變樣本權重,使訓練更有側重點。相對于四步法訓練,用本文訓練方法的學習器在30000iters下的查全率比普通訓練法的查全率有1.67%的提升,mAP也有所提升。在mAP提升0.71%的情況下查全率有1.29%的提升。速度上,由于沒有改變神經網絡整體結構,仍然保持了RPN計算速度快的優點。在本文實驗環境下,平均每張圖片的處理速度為52ms,提升硬件性能后完全可以用于實時檢測。
參考文獻:
[1] Dalal N; Triggs B.Histograms of oriented gradients for human detection[C]//Computer Vision and Pattern Recognition, 2005. CVPR 2005. IEEE Computer Society Conference on. IEEE, 2005, 1: 886-893.
[2] P. Doll?ar, Z. Tu, P. Perona and S. Belongie.Integral Channel Features[C].BMVC 2009, London, England. 1
[3]MASSA A,BONI A,DONELLI M. A classification approach based on SVM for electromagnetic subsurface sensing[J]. IEEE Transaction on Geoscience &Remote Sensing, 2004,43(9):2084-2093.
[4] 常玲玲,馬丙鵬,常虹,等.深度網絡結構在行人檢測任務中的性能對比[J].計算機仿真,2017,34(7):373-377+411.
[5] Shaoqing Ren; Kaiming He; Ross Girshick; Jian Sun.Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks,IEEE Transactions on Pattern Analysis and Machine Intelligence,2017,39(6):1137-1149.
[6] Karen Simonyan, Andrew Zisserman. Very Deep Convolutional Networks for Large-Scale Image Recognition[C], in International Conference on Learning Representations (ICLR), 2015.
[7]Peng Wang; Chunhua Shen; Barnes, N.Fast and Robust Object Detection Using Asymmetric Totally Corrective Boosting[C], IEEE Transactions on Neural Networks and Learning Systems, 2012,23(1):33-46.
[8] Zhu Ji;Arbor Ann;Hastie Trevor. Multi-class AdaBoost[J].Statistics & Its Interface,2009,2(3):200-205
[9]SUNG K K.Learning and example selection for object and pattern detection[M].Cambridge:Massachusetts Institute of Technology,1996.
[10] 艾拓,梁亞玲,杜明輝.基于難負樣本挖掘的改進Faster RCNN訓練方法[J].計算機科學,2018,45(5):250-254.
【通聯編輯:唐一東】