一種行人檢測方法
【專利摘要】一種行人檢測方法,包括:準備訓練卷積神經(jīng)網(wǎng)絡所需的行人正樣本集以及負樣本集;對樣本集預處理并且歸一化為統(tǒng)一尺度,并生成數(shù)據(jù)文件;設計卷積神經(jīng)網(wǎng)絡的結構,進行訓練,獲取網(wǎng)絡收斂時的權重連接矩陣;對視頻進行自適應背景建模,獲取每一幀中運動目標的信息,首先對于檢測到的運動目標區(qū)域進行粗選,排除高度和寬度比值不符合要求的區(qū)域,產(chǎn)生候選區(qū)域;將每一個候選區(qū)域輸入到卷積神經(jīng)網(wǎng)絡中,判斷是否有行人存在。
【專利說明】一種行人檢測方法
【技術領域】
[0001]本發(fā)明屬于計算機視覺和模式識別領域,具體涉及一種適用于智能視頻監(jiān)控的行人檢測方法。
【背景技術】
[0002]智能視頻監(jiān)控技術是計算機視覺領域近年來新興的一個研究方向,它是一種基于機器學習和人工智能的計算機視覺技術,以視頻場景中的行人、車輛等運動物體為主要研究分析對象。在智能視頻監(jiān)控研究領域,關于行人的檢測技術的研究備受行業(yè)的關注。
[0003]在安全和法律方面,智能視頻監(jiān)控系統(tǒng)通過對從監(jiān)控攝像機傳來的監(jiān)控場景的視頻信息進行處理分析,對場景中可疑的人和事件進行預警,從而阻止犯罪、群體性事件的發(fā)生,以保障人民群眾的生命和財產(chǎn)安全;在交通應用上,智能視頻監(jiān)控系統(tǒng)通過分析交通監(jiān)控視頻監(jiān)測交通中行人的違法或不安全行為,根據(jù)實時交通狀況合理分配警力,達到效率最大化;在商業(yè)活動中,智能視頻監(jiān)控系統(tǒng)可以實時統(tǒng)計各購物場所和娛樂場所人數(shù),監(jiān)視公眾場合中行人的阻塞情況和擁擠程度,控制人群密度,以免發(fā)生踩踏事件;在軍事上的應用包括測量沖突地區(qū)的難民流入流量,監(jiān)視和平談判,和軍事基地是否存在異常人員。在針對行人的視頻監(jiān)控場景中,人是活動主體,所以監(jiān)控系統(tǒng)必須能實時地檢測出行人;在出現(xiàn)行人姿勢變換,人和環(huán)境遮擋,光照變化等情況時,也應該能正常工作。
[0004]國外在行人檢測方面的研究工作開展得較早,主要研究內容包括行人分類技術、行人識別技術、行人跟蹤技術、行人意圖分析與預測、人車碰撞機理研究等。這些研究單位主要使用機器視覺算法和傳感器結合的方式來進行行人檢測與識別。目前國外行人檢測所使用的主流方法仍然是計算機視覺算法和傳感器結合。與國外相比存在明顯的差距,我國目前針對行人安全檢測的研究大多集中在運動行人的檢測和跟蹤方面,且實驗場景大都比較理想,對復雜環(huán)境和混合交通下的行人檢測還沒取得實時性、魯棒性、高效性都比較好的算法。在行人檢測的技術方法上,國內普遍采用基于單目視覺的方法,利用人體邊緣、紋理、形狀等特征建立模板并綜合運用支持向量機、級聯(lián)分類器這些機器學習方法。
[0005]現(xiàn)有的基于模式識別的行人檢測技術在產(chǎn)生具有較高魯棒性的行人檢測器上主要面臨四大問題:1)從特定的場景下提取該場景下行人樣本,需逐一地手工裁切出行人樣本,需花費大量的時間等;2)如除去I)所述問題,使用國內外開源的行人樣本庫產(chǎn)生得到的行人檢測器只具備普適性,無法在特定場景下獲得理想的效果;3)對于現(xiàn)代生活中較為豐富的視頻場景,怎樣才能獲得適應于各類場景而且據(jù)又能高效魯棒的行人檢測器;4)大部分行人識別方法沒有充分利用行人特征,只是使用部分特征進行檢測,不能夠保證高效性。
[0006]CN102043953A公開了一種針對特定場景下行人檢測的方法,通過利用特定背景下的行人圖像對SVM行人分類器進行訓練,主要利用了行人的頭肩梯度直方圖特征和局部二值化模型特征,然后對利用背景差分模型獲取的候選窗口進行檢測獲取行人的存在與否。
[0007]該發(fā)明但實際上該發(fā)明具有以下三個缺點:1)該專利利用的背景差分模型獲取候選檢測窗口過程中,并沒有對背景進行實時更新,只是選取視頻中沒有行人的第一幀視頻幀作為背景,當場景有較大變化時不能夠保證魯棒性;2)訓練SVM行人分類器時并沒有充分利用行人的特征,只是利用了頭肩這一個整體性特征,沒有利用行人的整個輪廓像素信息,使得該方法無法適用于多個場景,特征提取不夠充分,訓練時沒有充分利用已有樣本,準確性無法保證;3) SVM分類器對于樣本線性可分的情況效果較好,但是對于樣本線性不可分的情況就不夠理想,而且SVM對于大規(guī)模的訓練樣本無法實施。
[0008]CN103324955A公開了一種基于視頻處理的行人檢測方法,通過對背景建模、篩選前景,確定候選行人區(qū)域,提取候選區(qū)域的HOG特征,然后利用行人SVM分類器對其進行分類。
[0009]該發(fā)明實際上該發(fā)明是行人檢測領域內一種公認的基礎方法:基于H0G+SVM行人分類方法。但是由于提取HOG特征時要進行圖像的灰度化操作,并沒有較好地利用圖像的RGB像素信息,另外該發(fā)明也不適用于多場景下行人檢測。
【發(fā)明內容】
[0010]本發(fā)明針對現(xiàn)有行人檢測方法的不足進行改進,以產(chǎn)生適應于場景多變的魯棒、高效的行人檢測器,提出了一種行人檢測方法。
[0011]本發(fā)明的方案具體包括以下步驟:
[0012]步驟S1:準備訓練卷積神經(jīng)網(wǎng)絡所需的行人正樣本集以及負樣本集;
[0013]步驟S2:對樣本集預處理并且歸一化為統(tǒng)一尺度,并生成數(shù)據(jù)文件;
[0014]步驟S3:設計卷積神經(jīng)網(wǎng)絡的結構,進行訓練,獲取網(wǎng)絡收斂時的權重連接矩陣;
[0015]步驟S4:對視頻進行自適應背景建模,獲取每一幀中運動目標的信息,首先對于檢測到的運動目標區(qū)域進行粗選,排除高度和寬度比值不符合要求的區(qū)域,產(chǎn)生候選區(qū)域;
[0016]步驟S5:將每一個候選區(qū)域輸入到卷積神經(jīng)網(wǎng)絡中,判斷是否有行人存在;
[0017]進一步地,所述目標信息包括目標位置和目標大小。
[0018]本發(fā)明提出了一種行人檢測方法,具體采用自適應背景差分方法對運動目標進行檢測,實時更新背景模型;訓練時采用三通道的整個行人RGB彩色圖像作為樣本,充分利用行人樣本的輪廓等信息;使用卷積神經(jīng)網(wǎng)絡代替?zhèn)鹘y(tǒng)的特征提取、特征分類過程,利用softmax分類器判斷是否有行人存在;其中自適應背景差分建模保證了獲取運動目標區(qū)域的準確性,通過篩選降低目標區(qū)域的冗余度,進而保證了檢測過程的高效性。
【專利附圖】
【附圖說明】
[0019]圖1為現(xiàn)有技術的訓練流程圖。
[0020]圖2為現(xiàn)有技術的行人檢測流程圖。
[0021]圖3為卷積神經(jīng)網(wǎng)絡訓練流程圖。
[0022]圖4為基于卷積神經(jīng)網(wǎng)絡的視頻中行人檢測流程圖。
[0023]圖5為卷積神經(jīng)網(wǎng)絡結構。
[0024]圖6是利用自適應背景差分模型檢測到的背景。
[0025]圖7是根據(jù)背景進行建模獲取的前景圖像。
[0026]圖8是視頻中行人檢測的效果圖。
【具體實施方式】
[0027]本發(fā)明實施例提出了一種行人檢測方法,如圖3所示,包括以下步驟:
[0028]步驟S1:準備訓練卷積神經(jīng)網(wǎng)絡所需的行人正樣本集P (包含正面、側面、背面)、負樣本集N,收集的是行業(yè)內公開并公認的效果良好且姿態(tài)豐富的正、負樣本數(shù)據(jù)集和一些監(jiān)控視頻中的行人樣本;
[0029]步驟S2:對樣本集預處理并且歸一化為統(tǒng)一尺度,并生成數(shù)據(jù)文件,用于卷積神經(jīng)網(wǎng)絡的訓練;所述尺度為64*128像素;
[0030]步驟S3:設計卷積神經(jīng)網(wǎng)絡的結構,進行訓練,獲取網(wǎng)絡收斂時的權重連接矩陣W,用于以后的檢測過程;
[0031]步驟S4:對視頻進行自適應背景建模,獲取每一幀中運動目標的信息,首先對于檢測到的運動目標區(qū)域進行粗選,排除高度h和寬度w比值不符合要求的區(qū)域,產(chǎn)生候選區(qū)域;所述目標信息包括目標位置和目標大??;所述不符合要求的區(qū)域指不在制定寬高比范圍內的區(qū)域,在步驟S43中具體說明;
[0032]步驟S5:將每一個候選區(qū)域輸入到卷積神經(jīng)網(wǎng)絡中,判斷是否有行人存在。
[0033]根據(jù)本發(fā)明進一步的實施例:
[0034]上述步驟S1:中包括:搜集的行人樣本是多姿態(tài)、多光照變化、多背景變化條件下的,充分保證了樣本的多樣性;
[0035]上述步驟S2:中包括:
[0036]步驟S21:對搜集到的樣本進行裁剪,使其邊緣區(qū)域占比較小,所述占比較小是指行人邊緣和樣本圖像邊緣之間的距離較小,一般為5個像素點;
[0037]步驟S22:將正樣本集P標記為I,將負樣本集N標記為O ;
[0038]步驟S23:將樣本文件進行隨機打包,提取每一幅圖片的R、G、B像素數(shù)值,保存為數(shù)據(jù)文件用于卷積神經(jīng)網(wǎng)絡訓練,所述R表示紅色,所述G表示綠色,所述B表示藍色;為了保證卷積神經(jīng)網(wǎng)絡訓練時,網(wǎng)絡能夠較好的收斂,經(jīng)過每一次訓練過程(由于訓練時是依次去取每一個batch樣本)誤差都能夠減少,所以對樣本進行隨機打包,分為6個數(shù)據(jù)batch,依次循環(huán)取這6個數(shù)據(jù)batch進行訓練,直到收斂
[0039]上述步驟S3中包括:
[0040]步驟S31:設計一個具有兩層卷積操作層、兩層池化操作層、一層全連接層、一層soft max分類器、一層邏輯回歸對象層的卷積神經(jīng)網(wǎng)絡;
[0041]步驟S32:各個神經(jīng)元的激活函數(shù)采用f (X) = max (O, x)代替?zhèn)鹘y(tǒng)的sigmoid函數(shù)和正弦雙曲函數(shù)加快網(wǎng)絡收斂速度;傳統(tǒng)的神經(jīng)元激活函數(shù)主要分為三種:線性函數(shù)(f (x) = X)、sigmoid函數(shù)和正弦雙曲函數(shù),本發(fā)明所采用的神經(jīng)元的激活函數(shù)f (X)=max (O, X)是改進的分段線性函數(shù);
[0042]步驟S33:每一次迭代取一個數(shù)據(jù)batch,然后以128個樣本為單位利用BP算法對卷積神經(jīng)網(wǎng)絡進行訓練(迭代過程中每一個樣本對應著圖像處理器GPU中的每一個線程),直到網(wǎng)絡達到收斂。
[0043]上述步驟S4中包括:
[0044]步驟S41:根據(jù)視頻中的每一幀圖像進行背景更新,以期對運動目標檢測能夠取得較好效果;
[0045]步驟S42:對視頻中的每一幀圖像利用自適應背景更新方法進行建模,獲取所有可能的候選運動目標區(qū)域;
[0046]步驟S43:根據(jù)檢測到的運動目標區(qū)域的寬高比排除不合要求的區(qū)域,a〈 (h/w) <b,其中,a、b為預先設定的閾值,h、w分別是目標區(qū)域的高度和寬度;
[0047]步驟S44:將獲取的候選區(qū)域信息存到向量中,用于步驟S5進行檢測,所述向量是指一個保存候選區(qū)域信息的全局變量。
[0048]上述步驟S5中包括對向量中的每一個成員利用步驟S3構建好的的卷積神經(jīng)網(wǎng)絡模型進行特征提取,利用soft max分類器進行目標分類,進而檢測行人存在與否。
[0049]根據(jù)本發(fā)明的更進一步的實施例:
[0050]上述步驟S3中通過對卷積神經(jīng)網(wǎng)絡進行訓練得到卷積神經(jīng)網(wǎng)絡行人檢測器。卷積神經(jīng)網(wǎng)絡的權值共享網(wǎng)絡結構使得它最相似于生物神經(jīng)元,降低了網(wǎng)絡模型的連接復雜度,減少了權值數(shù)目,一定程度上提高了模型運算速度。另一方面卷積神經(jīng)網(wǎng)絡可以直接使用圖片進行輸入,避免了傳統(tǒng)的識別方法復雜的特征提取和數(shù)據(jù)重建過程。卷積神經(jīng)網(wǎng)絡是為識別二維形狀而特殊設計的一個多層感知器,這種網(wǎng)絡結構對平移、比例縮放、傾斜或者共他形式的形變具有高度不變性。
[0051]其訓練步驟如下:
[0052]步驟31’:初始化卷積神經(jīng)網(wǎng)絡的所有權重W ;
[0053]步驟32’:前向傳播過程:通過將每一個訓練樣本輸入到網(wǎng)絡模型中計算實際的網(wǎng)絡輸出;
[0054]步驟33’:計算網(wǎng)絡實際輸出和樣本期望輸出的差作為網(wǎng)絡模型的誤差;
[0055]步驟34’:按照極小化誤差的方法反向依次調整各層的權值矩陣。
[0056]循環(huán)執(zhí)行步驟32’、步驟33’、步驟34’直到網(wǎng)絡達到收斂。
[0057]上述步驟S4中自適應背景差分建模。背景差分建模法,就是將每個輸入視頻幀和背景圖像相比較,如果相同位置的像素特征、像素區(qū)域特征或其他特征的差別大于預先設定的閥值,則新視頻幀中這些位置的像素點或像素區(qū)域就構成前景運動目標區(qū)域,若對這些前景像素點做進一步處理,即可得到運動目標位置、大小、形狀等信息,以便進行目標檢測。
[0058]本實施例中具體使用的是基于自適應更新模型進行建模:
[0059]Bn+1 (x, y) = αΒη(χ, y) + (1-α ) Ιη(χ, y);
[0060]其中,Βη+1 (χ, y)、Βη(χ, y)分別代表時刻η+1、η位置(χ, y)處背景的像素值,In(χ, y)代表時刻η位置(x,y)處圖像像素數(shù)值,α為預先設定的系數(shù),具體取值范圍為:0〈 α〈1,即是根據(jù)輸入的每一個視頻幀對原背景圖像進行更新,充分保證背景的適應性,特別是在監(jiān)控區(qū)域光照變化強烈時表現(xiàn)出較好效果。
[0061]下面詳細描述本發(fā)明的實施例,所述實施例是基于已實例化的工程項目進行闡述,相關實例圖表在附圖中示出。
[0062]如圖3中,對于卷積神經(jīng)網(wǎng)絡的訓練,準備的正樣本集P包含4萬張行人圖像,負樣本集N包含4萬張非行人圖像,行人邊緣和圖像邊緣之間一般不超過5個像素點,正負樣本集內的圖像均歸一化為64*128像素。
[0063]實例化所使用的卷積神經(jīng)網(wǎng)絡結構:具有兩層卷積層(convl、conv2)、兩層池化操作層(P00ll、p0012)、一層全連接(fc)、一層soft max分類器層、一層邏輯回歸層(用于計算網(wǎng)絡輸出和樣本期望輸出的差值),網(wǎng)絡結構如圖5所示。
[0064]其中,convl層有12個卷積核,每一個卷積核為3X3大小,convl和輸入行人樣本之間全連接,每一個卷積核分別對應輸入樣本的R、G、B通道圖像。conv2層有16個卷積核,每一個卷積核大小為3X3, conv2層與pooll層之間連接方式也為全連接。pooll層、pool2層池化窗口大小為2X2,步長為2。
[0065]網(wǎng)絡收斂后,使用1560張歸一化過的正樣本測試圖片進行測試,誤報的為8張;使用1135張歸一化的負行人樣本圖片進行測試,誤報的為7張。
[0066]實施例詳細步驟如圖4所示,首先取視頻中的如圖6所示的第一幀作為背景,然后取視頻中的第二幀,利用自適應背景差分模型對背景建模,獲取前景信息如圖7所示,得到運動物體的輪廓信息,利用運動物體的區(qū)域大小信息篩選排除部分區(qū)域,然后對候選區(qū)域進行采樣輸入到卷積神經(jīng)網(wǎng)絡中,獲取分類器分類結果,依次檢測每一幀圖像直到視頻幀讀取完畢,視頻中行人檢測的效果圖如圖8所示。實際上卷積神經(jīng)網(wǎng)絡檢測時較為耗時(實施中所用模型為300ms),為了提高檢測的速度,由于行人的高度和寬度在一定范圍內,先用這一先驗知識對自適應背景差分模型獲取的運動目標區(qū)域進行篩選排除一部分候選區(qū)域,得到較優(yōu)檢測區(qū)域用于檢測。另外,由于檢測每一幀時都會對當前幀的背景進行更新,所以當視頻場景變化較大時該方法仍然具有較好的魯棒性。
[0067]本發(fā)明提出了一種行人檢測方法,通過對視頻中的每一幀圖像進行自適應背景差分建模、篩選候選區(qū)域以獲取最終候選區(qū)域,最后通過對候選區(qū)域進行卷積神經(jīng)網(wǎng)絡行人檢測器計算,判斷出行人的存在與否。其中自適應背景差分建模保證了獲取運動目標區(qū)域的準確性,通過篩選降低目標區(qū)域的冗余度,進而保證了檢測過程的高效性。本發(fā)明在工程應用上展現(xiàn)了良好的效果,針對卷積神經(jīng)網(wǎng)絡訓練收斂較慢的問題,在卷積神經(jīng)網(wǎng)絡訓練過程中我們對神經(jīng)元激活函數(shù)進行改進,用激活函數(shù)f(x) = max (O, χ),為已知的神經(jīng)網(wǎng)絡中的神經(jīng)元激活函數(shù),代替?zhèn)鹘y(tǒng)的sigmoid函數(shù),并且在GPU上進行訓練,極大地提高了卷積神經(jīng)網(wǎng)絡的收斂速度。
[0068]本領域的普通技術人員將會意識到,這里所述的實施例是為了幫助讀者理解本發(fā)明的原理,應被理解為本發(fā)明的保護范圍并不局限于這樣的特別陳述和實施例。對于本領域的技術人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的權利要求范圍之內。
【權利要求】
1.一種行人檢測方法,其特征在于,包括以下步驟: 步驟S1:準備訓練卷積神經(jīng)網(wǎng)絡所需的行人正樣本集以及負樣本集; 步驟S2:對樣本集預處理并且歸一化為統(tǒng)一尺度,并生成數(shù)據(jù)文件; 步驟S3:設計卷積神經(jīng)網(wǎng)絡的結構,進行訓練,獲取網(wǎng)絡收斂時的權重連接矩陣; 步驟S4:對視頻進行自適應背景建模,獲取每一幀中運動目標的信息,首先對于檢測到的運動目標區(qū)域進行粗選,排除高度和寬度比值不符合要求的區(qū)域,產(chǎn)生候選區(qū)域; 所述目標信息包括目標位置和目標大?。? 步驟S5:將每一個候選區(qū)域輸入到卷積神經(jīng)網(wǎng)絡中,判斷是否有行人存在。
2.根據(jù)權利要求1的一種行人檢測方法,其特征在于,所述步驟S2包括以下分步驟: 步驟S21:對搜集到的樣本進行裁剪,使其邊緣區(qū)域占比較??;所述占比較小是指行人邊緣和樣本圖像邊緣之間的距離較小,一般為5個像素點; 步驟S22:將正樣本集標記為I,將負樣本集標記為O ; 步驟S23:將樣本文件進行隨機打包,提取每一幅圖片的R、G、B像素數(shù)值,保存為數(shù)據(jù)文件;所述R表示紅色,所述G表示綠色,所述B表示藍色。
3.根據(jù)權利要求1的一種行人檢測方法,其特征在于,所述步驟S3設計卷積神經(jīng)網(wǎng)絡的結構具體包括以下分步驟: 步驟S31:設計一個具有兩層卷積操作層、兩層池化操作層、一層全連接層、一層softmax分類器、一層邏輯回歸對象層的卷積神經(jīng)網(wǎng)絡; 步驟S32:各個神經(jīng)元的激活函數(shù)采用f (X) = max (O, x)代替?zhèn)鹘y(tǒng)的sigmoid函數(shù)和正弦雙曲函數(shù)加快網(wǎng)絡收斂速度; 步驟S33:每一次迭代取一個數(shù)據(jù),然后以128個樣本為單位利用BP算法對卷積神經(jīng)網(wǎng)絡進行訓練,直到網(wǎng)絡達到收斂; 所述迭代過程中每一個樣本對應著圖像處理器GPU中的每一個線程。
4.根據(jù)權利要求3的一種行人檢測方法,其特征在于,步驟S3所述訓練包括以下分步驟: 步驟31’:初始化卷積神經(jīng)網(wǎng)絡的所有權重; 步驟32’:通過將每一個訓練樣本輸入到網(wǎng)絡模型中計算實際的網(wǎng)絡輸出; 步驟33’:計算網(wǎng)絡實際輸出和樣本期望輸出的差作為網(wǎng)絡模型的誤差; 步驟34’:按照極小化誤差的方法反向依次調整各層的權值矩陣,循環(huán)執(zhí)行步驟32’、步驟33’、步驟34’直到網(wǎng)絡達到收斂。
5.根據(jù)權利要求1的一種行人檢測方法,其特征在于,所述步驟S4具體包括以下分步驟: 步驟S41:根據(jù)視頻中的每一幀圖像進行背景更新; 步驟S42:對視頻中的每一幀圖像利用自適應背景更新方法進行建模,獲取所有可能的候選運動目標區(qū)域; 步驟S43:根據(jù)檢測到的運動目標區(qū)域的寬高比排除不符合要求的區(qū)域:a〈(h/w)〈b ; 其中,a、b為預先設定的閾值,h、w分別是目標區(qū)域的高度和寬度; 步驟S44:將獲取的候選區(qū)域信息存到向量中。
6.根據(jù)權利要求5的一種行人檢測方法,其特征在于,所述自適應背景更新模型公式:Bn+1 (x, y) = a Bn(x, y) + (l-a ) In(x, y); 其中,Bn+1(X,y)、Bn(X,y)分別代表時刻n+l、n位置(x,y)處背景的像素值,In(x,y)代表時刻η位置(x,y)處圖像像素數(shù)值,a為預先設定的閾值,且0〈 a〈I。
7.根據(jù)權利要求1的一種行人檢測方法,其特征在于,所述步驟S5中包括對向量中的每一個成員利用步驟S3構建好的的卷積神經(jīng)網(wǎng)絡模型進行特征提取,利用soft max分類器進行目標分類,進而檢測行人是否存在。
8.根據(jù)權利要求1的一種行人檢測方法,其特征在于,所述步驟S2尺度為64*128像素。
【文檔編號】G06K9/46GK104166861SQ201410393335
【公開日】2014年11月26日 申請日期:2014年8月11日 優(yōu)先權日:2014年8月11日
【發(fā)明者】葉茂, 王夢偉, 李旭東, 彭明超, 茍群森 申請人:葉茂