官术网_书友最值得收藏!

1.3 國內外基于視覺的行人檢測技術的研究現狀

基于視覺的行人檢測目前仍舊是計算機視覺領域內一個很具有挑戰性的課題,原因在于以下幾點。

(1)行人姿態變化萬千:可能會站立、行走或者奔跑等,在行走時可能會不可預測地改變運動方向。

(2)行人的服飾多樣化:穿著各種款式、顏色的衣服,而衣服的顏色有時很容易和背景混淆,行人可能戴著帽子、挎著背包等。

(3)行人所處的背景非常復雜:包括建筑物、移動或停泊的車輛、道路標志牌和信號燈、電線桿、樹木等,有些背景的形狀與行人也很相似。

(4)運動狀態的攝像機:這是由于其特定的應用領域決定的,這樣廣泛應用于智能監控領域中檢測動態目標的方法便不能直接使用。

(5)算法的頑健性和實時性要求:行人檢測面臨的是一個開放的環境,要考慮不同的路況、天氣和光線變化,這些對算法的頑健性提出了很高的要求,另外實時性也是系統必須滿足的,這就要求采用的圖像處理算法不能太復雜。

基于視覺的行人檢測通常分為兩種模式。第一類檢測方法分成以下兩個步驟:感興趣區域分割(ROI, Regions of Interest)和目標識別階段。感興趣區域的分割是用粗略的檢測方法從圖像中快速分割出所有可能含有行人的候選區域,而后續精確的目標識別都在這些候選區域中進行,從而大大減少了所需處理的數據量;第二類方法對行人的檢測在一個階段內完成,用不同大小的窗口遍歷整幅圖像,對所有的窗口進行檢測,判斷其是否為行人。出于實時性的需要,本文采用基于感興趣區域分割和目標識別的兩階段檢測方法,避免了窮盡搜索,提高系統的速度。下面分別從這兩個方面來介紹一些常用的檢測方法。

1.3.1 感興趣區域分割

感興趣區域分割是行人檢測的第一階段,其目的在于剔掉一些明顯不具備行人特征的檢測窗口,縮小目標識別階段的檢測范圍,從而大大減少了所需處理的數據量。根據分割所用的信息,可將ROI分割的方法分為基于運動信息、基于距離信息和基于圖像特征信息三種方法。各種方法具有不同的約束環境,在實際系統中,也可以將各種方法結合在一起使用,彼此互補。

(1)基于運動信息

運動信息是在一個場景中檢測感興趣區域的常用線索。它主要使用了圖像序列的時域信息。同樣由于攝像機運動的原因,基于圖像差分的方法很難直接用于智能汽車的行人檢測。大部分基于運動信息的區域分割算法都是使用基于光流分析的運動檢測來進行行人候選區域的分割。

光流(Optical Flow)是指時變圖像中模式運動的速度。因為當物體運動時,它在圖像上對應點的亮度模式也在運動。這種圖像亮度模式的表觀運動(Apparent Motion)就是光流。光流表達了圖像的變化,包含了目標運動的信息,因此可用來確定目標的運動情況。由光流的定義可以引申出光流場,它是指圖像中所有像素點構成的一種二維瞬時速度場,其中的二維速度矢量是場景中可見點的三維速度矢量在成像表面的投影。光流場的不連續性可以用來將圖像分割成對應于不同運動物體的區域。首先在圖像中計算表征相鄰幀間像素運動的光流場,然后根據光流場估計出攝像機的主運動,最后通過分析光流場中與主運動不一致的光流,檢測出障礙物。

例如,Stein等[41]首先利用光流法估計車的運動,補償車輛的運動后再利用時間差分從而得到運動物體。Heisele等[42]根據行人走路時腿部周期性的運動特征,從彩色序列圖像中對運動的行人進行檢測和識別。它首先對每幅圖像依據其顏色特征進行聚類分塊,然后采用實時立體算法檢測和跟蹤可能包含行人的圖像區域,最后基于行人腿部的特定運動模式使用時滯神經網絡的分裂式聚類算法來對行人進行分類。這種方法要求假設行人的雙腿必須是可見的,而且只能檢測運動的行人,對于靜止行人的檢測是失效的。Bregler[43]的分析基于相同顏色像素小區域的連貫運動,每個像素點都被賦予了一個屬于某給定小區域的可能概率,而且每個小區域的移動都被按照運動的概率模型進行分類以準備下一階段的行人識別。

基于運動信息來獲取ROI的方法的優點是不受行人姿態的影響,頑健性較好。缺點是只能檢測運動的行人。所以目前主要應用在智能監控領域,在智能汽車系統中往往只作為一個輔助的手段[44]

(2)基于距離信息

基于距離信息的方法是通過測量目標到智能汽車的距離來獲取ROI。一般可以通過立體視覺來完成基于距離信息的ROI分割。20世紀80年代初期,Marr[45]提出了一種視覺計算理論并應用在雙眼匹配上,使兩張有視差的平面圖產生有深度的立體圖形,奠定了雙目立體視覺發展的理論基礎。立體視覺是仿照人類利用雙目線索感知距離的方法,實現對三維信息的感知。在實現上采用基于三角測量的方法,用兩個或多個攝像機對同一景物從不同位置成像,并進而從視差中恢復距離。

Zhao等[13]利用基于立體視覺獲得的視差圖像對目標區域進行分割,然后將子目標候選圖像合并和分離成滿足行人尺寸和形狀約束的子圖像,最后將所有探測到的可能含有行人目標的矩形區域輸入到前饋神經網絡進行行人的識別。

Liu等[46]結合了運動信息和距離信息來獲取行人的ROI。首先基于立體視覺獲取圖像的視差圖,然后根據連續圖像幀的視差圖,可以獲得圖像中運動物體的分割,最后通過基于形狀特征的分類器對ROI進行識別,剔除其他移動目標(如車輛等)。相關的實驗結果表明了該算法的有效性。

基于距離信息的ROI的分割算法的優點是受行人姿態變化的影響較小,受周圍環境、光照等條件的影響也不大,但是由于需要額外的設備,增加了系統的成本,同時計算量也相應增加,不利于滿足系統實時性的要求。

(3)基于圖像特征信息

基于圖像特征信息來獲取ROI的方法是指通過檢測與行人相關的圖像特征從而得到ROI。對于一般的可見光圖像來說,常用的特征包括行人的形狀輪廓特征、局部區域的熵和紋理等,如Broggi等[47]提出將圖像中的垂直對稱性與站立行人(運動或靜止)的候選區域關聯起來。進一步的信息從對稱圖的水平邊緣及每列的數目得到。然后用一個邊界框將感興趣區域封閉起來以用于一個獨立的識別步驟。Curio等[48]提出了一個更復雜的系統,該系統使用一個由局部圖像熵組成的激活域。一個有著Λ形狀的基于模型匹配的模板被用來代表行人的雙腿,通過逆投影映射(雙目視覺)來得到短距離域。得到的信息被組合進時間動態激活域以進行后續的分析。再如Shashua等[44]將圖像的紋理特征引入ROI的檢測,將圖像中缺乏紋理、或者位置和尺寸不滿足先驗知識的區域剔除,將剩余的區域作為ROI使用。

對于紅外圖像來說,主要根據人體尤其是人臉的溫度比周圍環境溫度較高這一特征,通過檢測一些熱點(Hot Spot)來得到ROI。例如,Xu等[49]提出根據紅外圖像中的熱點獲取ROI,然后利用支持向量機的方法對行人候選區域進行分類,最后結合卡爾曼預測估計和Mean-shift算法對行人進行跟蹤。另外,Bertozzi等[50, 51]提出了利用紅外立體成像對行人進行檢測,由于傳統的CCD攝像機采集的圖像易受光照的影響,對圖像中目標的識別變得困難,且在夜晚、雨天或有霧的天氣情況下根本無法使用。而紅外成像基本不受上述因素的影響,同時依據人體的特殊形狀及對稱性的特征,可排除其他物體如車輛干擾,利用雙目系統同時還能獲得行人的距離信息。

基于圖像特征信息獲取ROI方法的優點是直接利用了圖像信息,不需要額外的傳感器。缺點是由于智能汽車的應用環境復雜多變,很難定義每種場景都適合的特征信息。

1.3.2 目標識別

經過感興趣區域分割從原始圖像中得到可能含有行人的一些小區域后,目標識別的目的就是從這些小區域中找出真正的行人。根據利用信息的不同,目標識別可以分為基于運動信息的識別和基于形狀信息的識別兩種方法[52]

(1)基于運動信息的方法

基于運動信息的識別方法指通過分析人運動時的步態(Gait)特征來識別行人。行人步態的周期性是識別行走中行人的非常有用的線索。特別是在視覺方向上橫向移動時,步幅一般平行于攝像機平面而且特征比較明顯,這樣就提供了一個有效的方法來減少之前感興趣區域中的誤檢。

一些系統通過對圖像區域進行頻率分析來提取行人的步態特征。提取的步態特征經過分類器或簡單閾值化(類似于帶通濾波器的處理方法)的統計方法做出最終的判斷[53, 54]。Cutler等[55]首先將t時刻圖像與在t-τ時刻同樣穩定的圖像相減,通過選擇合適的閾值,得到代表運動目標像素點的映射圖。通過跟蹤感興趣的運動目標,計算出目標隨著時間變化的自相關特性,然后使用一個帶有Hanning窗函數的短時傅里葉變換來分析得到的相關信號,進而識別出行人。Curio等[48]提出了一種綜合步態和統計分析的方法。在感興趣區域內跟蹤行人的軀干部位,根據人體各部位之間的位置關系,對軀干部位的底部進行運動分析,得到關于腿部的運動特性。兩條腿的粗糙模型包括兩條棒狀的部分,在膝蓋處有連接,并列在跟蹤得到的軀干部位下方的圖像區域中。將周期性的運動檢測與從行人步態周期的統計平均中得到的實驗曲線進行相關,相關函數曲線的頂點處就表示有行人的存在。Wohler等[56]提出將一個執行局部時空處理的自適應時間延遲神經網絡算法用于對圖像序列進行分析,以識別典型的運動模式。在該方法中,行人在一個完整步態周期中的形狀通過網絡學習得到。

基于運動信息的目標識別算法,具有較強的頑健性,不受行人紋理特征和環境光照變化的影響,但該算法也常常依賴于一個清晰的行人側視圖,因此經常用于對車輛前方橫穿馬路的行人進行檢測。另外,應用該算法是無法檢測到靜止的行人的。

(2)基于形狀信息的方法

通過分析目標的灰度、邊緣和紋理等信息來對目標進行識別。基于形狀信息的方法的優點是不需要考慮圖像序列時間域的信息,可以檢測出靜止的行人,但是缺點是容易產生大量的虛警(False Poisitve)。現將基于形狀信息的行人識別方法進一步細分為基于模板匹配(Template Matching)的方法和基于統計分類(Statistical Classification)的方法。

① 基于模板匹配的方法

該方法使用預先定義的行人類別的模板與感興趣區域進行比較,通過度量模板與感興趣區域之間的距離來檢測出真正的行人。不同的文獻對模板的定義不盡相同,有的松散,有的嚴格。基于模板匹配的算法的優點是計算簡單,缺點是由于行人姿態的復雜性,很難構造出足夠的模板以處理不同的姿態,因而算法的不確定性較高。基于模板匹配的典型算法是由Gavrila[57]提出的兩階段行人檢測算法,該算法已經應用于PROTECTOR項目的UTA(Urban Traffic Assistant)系統中。第一階段是基于輪廓特征的分層匹配,有效地獲取行人目標。系統中使用了大約2 500個輪廓模板,這些模板可以是參考模板的幾何變形或者行人常表現的輪廓形狀。為了解決眾多模板引起的匹配速度下降問題,Gavrila采用了由粗到細的分層搜索策略以加快搜索速度。匹配的時候不是直接計算模板與原始圖像的距離,而是首先對原始圖像進行距離變換(DT, Distance Transform),然后再計算模板與經過距離變換之后的圖像之間的Chamfer距離。采用DT圖像而不是原始圖像計算距離的好處是,得到的距離測度是模板變換參數的平滑函數,方便了快速搜索。算法的第二階段,對模板匹配成功的區域提取其亮度信息,運用徑向基(RBF, Radial Basis Function)函數對其進行進一步的驗證。再如Broggi等[47]和Beymer[58]等對頭和肩膀使用了一個?模板。這種方法對比例變化很敏感,所以需要不同比例的多個模板。在這兩個系統中,分別使用了按照距物體不同的估計距離從粗糙到精細分辨率的3和5個不同的模板。Fujiyoshi和Lipton[54]使用了一個提取骨架的過程來表示之前檢測到的前景物體的形狀。對每個物體,首先計算該區域的質心,然后計算每個邊界點距離質心的距離。距離函數的局部最大值就被作為骨架的外部點。

② 基于統計分類的方法

基于統計分類方法的原理是從一系列反映行人不同外觀的訓練圖像(通常也會有一些非行人的訓練圖像用以改善性能)中學習行人的特征從而用于檢測。首先,每幅訓練圖像被一系列局部或全局的特征表示,接著行人和非行人的判決邊界通過訓練的分類器或每類特征的概率分布模型來學習。基于統計分類的方法的優點是適用范圍很廣,頑健性強,缺點是需要很多訓練數據,并且很難解決姿態變化和遮擋的問題。基于統計分類的方法主要包括兩個步驟:特征提取和分類器設計。特征提取的基本任務是如何從許多的特征中找出最有效的特征。一般針對小樣本集,用很多的特征進行分類器設計,無論從計算的復雜度還是分類器的性能來看都是不適宜的。因此降低數據的維數,得到能反映模式本質屬性的特征,方便后面的分類是特征提取階段的重要任務。分類器設計屬于機器學習領域的范疇,其目的是得到一個計算復雜度較低,并且推廣性較好的分類器。針對行人識別問題,可根據分類器的設計方法將現有的基于統計分類的方法分為基于神經網絡(NN, Neural Networks)的方法、基于支持向量機(SVM, Support Vector Mechine)的方法和基于Adaboost的方法[52]

神經網絡對外界輸入樣本具有很強的識別與分類能力。對輸入樣本的分類實際上是在樣本空間找出符合分類要求的分割區域,每個區域內的樣本屬于一類。神經網絡可以很好地解決對非線性曲面的逼近,因此比傳統的分類器具有更好的分類與識別能力[59]。神經網絡已經成功地應用在模式識別領域中的光柵字符識別和人臉檢測上,它在行人的檢測上也有廣泛的應用。例如,Zhao等[13]利用基于立體視覺獲得的視差圖像對目標區域進行分割,然后將子目標候選圖像合并和分離成滿足行人尺寸和形狀約束的子圖像,最后提取候選圖像的梯度信息作為特征訓練,得到一個三層的前饋神經網絡用于行人的識別。采用梯度信息而不是原始灰度圖像或者二值圖像作為特征的原因是為了消除光照的影響,同時避免二值化時閾值的選擇問題。又如Szarvas等[60]采用卷積神經網絡(Convolutional Neural Network)訓練得到行人檢測分類器。卷積神經網絡可以避免顯式的特征提取,而隱式地直接從訓練數據中進行學習,通過結構重組和減少權值將特征提取功能融合進多層感知機(MLP, Multi-Layer Perceptron)。系統能夠通過自動優化檢測過程中的特征來獲得高準確度并自動調整網絡,網絡輸入直接為行人樣本的灰度圖像。

支持向量機(SVM)是在統計學習理論的基礎上發展起來的一種新的模式識別方法。在解決小樣本、非線性及高維模式識別問題中表現出許多特有的優勢。傳統模式識別理論認為,分類器的識別能力可以用樣本訓練中得到的經驗風險來衡量,即只要經驗風險足夠小,那么對未知數據識別時所產生的實際風險一定也小。支持向量機理論卻認為[61],分類器對未知數據進行分類時所產生的實際風險不是由經驗風險單獨決定的,而是由兩部分組成:一部分是訓練時得到的經驗風險(如果經驗風險很小,而實際風險很大,就叫過學習問題);另一部分稱作置信范圍,它和分類器的VC維及訓練樣本數有關。支持向量機使用結構風險最小化準則來選取VC維,使每一類別數據之間的分類間隔最大,最終使實際風險最小。所以基于結構風險最小化的SVM分類方法,相比較基于經驗風險最小化的神經網絡方法具有更好的泛化能力。

SVM被廣泛地應用于模式分類問題,在行人檢測方面也有許多成功的應用。例如,Mohan等[62]提出了一個基于部位(Component-based)的行人檢測框架,通過用部位檢測器在單幀圖片中檢測人體。行人檢測系統由4個部位檢測器和一個裝配檢測器組成。4個部位檢測器分別為頭部、腿部、左臂和右臂檢測器,部位和裝配檢測器都是基于Haar小波特征,采用SVM方法訓練得到。實驗結果顯示這個系統的檢測性能明顯優于單個檢測器,它能夠檢測出部分被遮擋的行人和某些部位跟背景對比度低的行人,如Cheng等[39]利用稀疏Gabor濾波器提取行人樣本中的特征,然后利用SVM方法來訓練分類器進行行人檢測,Dalal等[63]提出了一個在單幀圖像中用面向梯度的直方圖描述子為特征以SVM為訓練方法的行人檢測算法。這種新方法對原始的MIT行人數據庫[64]得到了接近完美的檢測效果。

Adaboost是一種分類器組合的策略,其基本思想是利用大量的分類能力一般的弱分類器通過一定的方法疊加(Boost)起來,構成一個分類能力很強的強分類器。Adaboost得到的分類器具有較好的推廣性能,現在廣泛地應用于模式識別和計算機視覺領域。最早將Adaboost應用到計算機視覺領域的是Viola等人,他們提出基于Haar-like特征和Adaboost的層疊人臉檢測器,成功地實現了第一個實時人臉檢測系統[65]。Viola后來將該方法應用到了監控系統的行人檢測上[66],該方法同時利用連續兩個圖像幀的信息,提取訓練樣本關于外貌和運動信息,從而實現了監控系統中的低分辨率的行人檢測。從Viola開始,基于Adaboost的分類算法受到越來越多學者的重視,提出了許多針對該算法的改進方案,其中也有部分被應用于行人檢測領域,如Wu等[67]采用Edgelet特征集描述行人的輪廓,提出了一個基于部位的行人檢測方法。利用改進的Adaboost算法分別訓練3個部位(頭部、軀干和腿部)分類器和1個人體訓練器。最后將得到的部位檢測器響應值利用聯合似然概率進行融合。他們的集成檢測方法對單個人體的檢測效果很好,而且能夠處理人群擁擠的場景。除了方便快速計算的類Haar特征外,SIFT(Scale Invariant Feature Transform)特征[68]由于其尺度不變的良好特性,與Adaboost的結合也越來越受到學者的重視。Mikolajczyk等[69]將人體分成7個部分,針對每一個部件利用類SIFT特征和Adaboost建立起一個檢測器,然后將檢測結果利用概率圖模型進行融合從而識別站立的行人。Zhu等[70]對Dalal提出的梯度直方圖描述子特征進行了改進,并且將其引入Adaboost層疊分類器的檢測框架下,顯著提高了行人檢測的速度。

基于統計分類的方法尤其是SVM和Adaboost算法,頑健性較強,近幾年被廣泛地應用于文本分類、自然語言識別、圖像檢索和行人檢測等領域。但是,上述提到的統計分類算法都是基于離線學習的,分類器的學習需要大量的訓練樣本,這些樣本大多是通過手工標識得到的,標識樣本是一項耗時且代價昂貴的工作,特別是對于行人檢測工作來說更是如此。另外,離線方式生成的分類器參數固定,不能隨著場景和樣本的變化進行更新。針對上述問題,近幾年人們開始研究基于在線學習的統計分類方法。例如,Tax等[71]提出了基于SVM的在線學習算法,將該算法用于非監督的學習,解決了人工標注樣本的問題,Oza等[72, 73]提出了基于Adaboost的在線學習算法,分類器中的弱分類器根據當前的訓練樣本依次地完成在線更新,當前樣本學習結束后不再保存,隨著樣本數目的增多,分類器的性能得到提高。Oza在文章中證明對于相同的訓練樣本集,基于在線學習的Boosting分類器,其性能漸進于離線方式得到的分類器。Huang等[74]提出基于Domain-Partitioning型弱分類器的Real Adaboost在線學習算法,并將其用于人臉檢測,得到了良好的效果。

主站蜘蛛池模板: 都昌县| 花莲县| 汉中市| 涞源县| 大关县| 罗定市| 金溪县| 东阳市| 红原县| 莱西市| 新营市| 汤阴县| 汾阳市| 营山县| 凤城市| 清涧县| 连南| 洞口县| 凌源市| 比如县| 出国| 永丰县| 丹凤县| 鹿泉市| 北宁市| 明水县| 星子县| 汶上县| 怀化市| 合江县| 景泰县| 双流县| 左贡县| 汕头市| 屯昌县| 长寿区| 南阳市| 双鸭山市| 安吉县| 榆树市| 左权县|