田全 陳嬌
摘要:文章提出對行車記錄儀捕捉的畫面進行分析,將不安全的因素出現(xiàn)的情形作為危險事件檢測出來。檢測方案是通過事先提取視頻畫面的三維梯度特征建立安全事件模型,并計算當前畫面中是否存在危險事件。實驗結(jié)果表明,本策略能夠在正常行駛的汽車前方出現(xiàn)危險時,有效對汽車進行制動。
關(guān)鍵詞:輔助駕駛;隱馬爾科夫模型;三維梯度特征
車輛在行駛過程中時,行車記錄儀捕捉的畫面為一個整體、平穩(wěn)的事件,而典型的危險事件因其突發(fā)性、偶然性的特點,在整體畫面中異常突出,具體表現(xiàn)為:畫面中目標速度的異常、目標出現(xiàn)在危險區(qū)域等,包含了在時間域和空間域上的特征‘1]。為了識別危險狀態(tài),本文首先將事件發(fā)生的過程模擬為對應的模型,然后提取圖像的三維梯度信息,將畫面分割為大小相同的時空單元,計算每個單元在實際和空間軸上的梯度變化,并作為當前畫面的特征信息。當畫面中存在不符合安全模型的事件,則系統(tǒng)判定當前駕駛環(huán)境不安全,并立即發(fā)出制動信號。
1 隱馬爾科夫模型
1.1隱馬爾科夫模型的定義
隱馬爾可夫模型描述的是通過隱藏的馬爾科夫鏈生成觀測序列的過程,是一種生成模型,表示為:λ=(A,B,兀)。其中,A代表狀態(tài)轉(zhuǎn)移矩陣,B為觀測概率分布。兀為初始概率分布。隱馬爾科夫模型的組成示意如圖1所示。
A,B,兀3個參數(shù)可以有效地表示出一個完整的隱馬爾可夫模型。隱馬爾科夫模型的核心問題為:概率計算問題、學習問題和預測問題,根據(jù)需要解決的問題的不同,使用模型的方式也不相同。
1.2隱馬爾科夫模型的概率計算問題
隱馬爾科夫模型中最重要的是概率計算問題,計算觀測結(jié)果由當前模型生成的概率。同時,這個概率可以理解為某個觀測結(jié)果與現(xiàn)模型的匹配度,即若某觀測結(jié)果由現(xiàn)模型生成的概率低,則判定此觀測結(jié)果與模型匹配度不高。
隱馬爾科夫模型的概率計算方式有兩種:直接計算法和前向后向算法。直接計算法計算量相對較大,本文采用的是前向后向算法。前向概率的定義為at(i)=P(o1,o2,…,oi=q),表示在給定模型的前提下,到時刻t部分觀測序列o1,o2,…,oi對應狀態(tài)為97的概率。后向概率的計算與前向概率的計算在時間上相反,將數(shù)據(jù)信息逐步導入概率計算中進行迭代,即可得到條件概率P(O|λ)。
1.3隱馬爾科夫模型的學習問題
隱馬爾科夫的參數(shù)學習過程是在給定輸入觀測數(shù)據(jù)O={o1,o2,…,oT)的條件下,定義初始參數(shù),計算觀測數(shù)據(jù)由此模型生成的概率進行迭代,使得最終模型λ= (A,B,兀)生成觀測數(shù)據(jù)的概率最大化。
一般來說,隱馬爾科夫模型參數(shù)學習的方式有兩種:監(jiān)督學習方法、半監(jiān)督學習方法。由于監(jiān)督學習方式在實際應用中效率過低,半監(jiān)督模式的Baum-Welch算法是應用最普遍的算法。Baum-Welch算法可以理解為期望最大化算法的應用,通過對數(shù)據(jù)的迭代計算事先參數(shù)的約束,最大化期望值,得到最后的模型參數(shù)λ= (A,B,兀)。
1.4隱馬爾科夫模型的預測問題
在某些研究領域中,使用隱馬爾科夫模型估算狀態(tài)序列的情形也有很多。其原理是使用己知的隱馬爾科夫模型對觀測結(jié)果進行計算分析,判斷其生成的流程,得到狀態(tài)序列的具體分布。常用的預測算法為Viterbi算法,用動態(tài)規(guī)劃進行隱馬爾科夫模型的預測問題,從每個節(jié)點逐步推測,使得每個節(jié)點生成的路徑狀態(tài)生成觀測序列的概率最大,則觀測結(jié)果是按照最優(yōu)的狀態(tài)路徑逐步生成[2]。
2 算法框架
車輛的行車記錄儀記錄車前方的畫面,通過提取的視頻畫面進行特征分析,建立僅包含安全情形的安全模型;對測試視頻進行分析,檢測出畫面中是否出現(xiàn)異于常態(tài)的危險事件,并在危險事件發(fā)生時及時發(fā)出制定信號,保汪行車安全。
2.1訓練階段
2.1.1視頻特征提取
提取視頻圖像的三位梯度特征作為樣本特征。為了保證保存圖像的全局信息和局部信息,將畫面縮放到3個不同的尺度,并分割為大小相同的區(qū)域。同時將時間上連續(xù)的5幀對應區(qū)域組成一個時空單元D,其中的像素d的特征為:
其中,x,y,t代表像素d的橫向、縱向和實踐維度
2.1.2特征篩選
當前使用的行車記錄儀獲取的視頻數(shù)據(jù)存在信息冗余的問題,為提高檢測速率、降低算法復雜度,本文采用主成分分析法進行信息篩選處理,僅保留原始信息中的主要成分,將原始維度過高的特征信息根據(jù)精確度要求進行選擇。
2.1.3建立安全事件模型
隱馬爾科夫模型λ=(A,B,π)神的各項參數(shù)通過所有觀測的安全事件的特征進行迭代,使用Baum-Welch算法進行計算,使得訓練數(shù)據(jù)庫的所有視頻由此模型生成的概率最大。此時的安全事件模型為包含所有安全駕駛情形的模型。
2.2測試階段
2.2.1視頻特征提取及篩選
與訓練數(shù)據(jù)相同,在進行視頻測試時,需要對所有測試視頻進行特征的提取與篩選,與訓練階段的方式相同,最終得到測試視頻的特征信息。
2.2.2安全測試
根據(jù)隱馬爾科夫模型概率計算問題,可以得到所有測試視頻由己建立的安全事件模型經(jīng)一定的概率生成。如果當前視頻樣本存在危險事件,則此樣本由安全模型生成的概率較低,即與安全事件模型匹配度不夠,判定當前畫面中存在危險事件。
2.2.3制動措施
在系統(tǒng)檢測出當前畫面存在危險事件時,立刻發(fā)出安全預警信號,車輛在接收到信號后立即采取制動措施,保障駕駛?cè)说陌踩?/p>
3 實驗結(jié)果
本文將算法策略在真實的車載視頻數(shù)據(jù)庫上進行訓練和測試,驗汪算法的實用性及檢測結(jié)果。本文實驗采用的是市面上普通的行車記錄儀,影像分辨率為1080 P。
本文實驗使用的視頻數(shù)據(jù)均為同一款行車記錄儀錄制的視頻畫面,畫面為市內(nèi)的某條街道。在汽車行駛過程中,汽車前方的目標整體均為背景畫面,當危險事件出現(xiàn)時,需要采取下一步措施。在畫面中,遠處的建筑及路邊??康能囕v都是安全的目標,相對應的危險事件為當前車輛前方突然出現(xiàn)的行人、騎車人、行駛的汽車等情形。在這些危險事件出現(xiàn)時,本文的算法策略就是要立刻檢測出畫面中的危險事件,并發(fā)出制動信號。如圖2所示為一部分危險事件的檢測結(jié)果。
在圖2中,本文將車輛前方突然出現(xiàn)的騎車人、遠處、近處的汽車有效地檢測出來,并發(fā)出警報。
4結(jié)語
本文提出了使用隱馬爾科夫模型進行車輛安全駕駛輔助策略,對行車記錄儀捕捉到的視頻畫面進行特征提取,建立僅包含安全情形的安全事件模型,并在包含危險情形的駕駛過程中進行檢測,實現(xiàn)了當車輛前方突然出現(xiàn)行人及車輛等危害駕駛安全的目標的有效檢測,并在危險出現(xiàn)時立刻發(fā)出制動信號,保證安全駕駛。
[參考文獻]
[1lKRATZ L, NISHINO K.Anomaly detection in extremely crowded scenes using spatio-temporal motion pattern models[C].Miami:
Computer Vision and Pattern Recognition IEEE Conferenc , 2009 : 1446-1453.
[2]XU J, DENMAN S. SRIDHARAN S. et aI.Dynamic texture reconstruction from sparse codes for unusual event detection in crowded
scenes[C] .New York : Joint ACM Workshop on Modeling and Representing Events. 2011 : 25 -30.