本發(fā)明涉及的是一種智能動作識別領域的技術,具體是一種駕駛員危險行為識別方法及系統(tǒng)。
背景技術:
檢測車內駕駛員的危險或疏忽行為的方法主要分為兩類,一類為通過攝像頭,另一類通過傳感器。通過智能終端上的攝像頭,提取圖像信息來識別疏忽行為。通過設置于車輛上的傳感器,即加速度計和陀螺儀,得到傳感器數(shù)據(jù)來識別疏忽或危險行為。傳感器只能監(jiān)測車輛的狀態(tài),無法直接獲得駕駛員的行為狀態(tài),且對智能終端的要求過高。
技術實現(xiàn)要素:
本發(fā)明針對現(xiàn)有技術在檢測過程中對圖像采集的要求較高,魯棒性交叉的缺陷,提出一種駕駛員危險行為識別方法及系統(tǒng),能夠在保證識別精度的同時能夠在危險行為的早期階段即可識別結果出并給出警報,不需要依賴任何附加的外部設備,不容易受天氣等外界環(huán)境的干擾。
本發(fā)明是通過以下技術方案實現(xiàn)的:
本發(fā)明涉及一種駕駛員危險行為識別方法,首先在車輛內設置超聲波場,得到危險行為在多普勒頻譜上的不同模式,然后經(jīng)主成分分析提取主要特征,通過支持向量機算法得到識別不同危險行為的多分類器,并根據(jù)危險行為的完成度和持續(xù)時間建立梯度模型森林,最后將實時超聲波信號經(jīng)窗口切割算法進行切片后通過梯度模型森林識別出危險行為并發(fā)出警告。
所述的駕駛員危險行為識別方法具體包括以下步驟:
1)接收車內超聲波信號并處理,獲得超聲波信號頻譜結構的數(shù)據(jù)矩陣X';
2)對若干數(shù)據(jù)矩陣X'通過主成分分析提取d個主要特征δ={δ1,δ2,....δd};
3)基于主要特征δ和支持向量機模型構建多分類器模型θ;
4)針對危險行為的完成度α和持續(xù)時間τ,結合多分類器模型θ建立梯度模型森林Θ;
5)通過窗口切割算法將持續(xù)時間τ內的動作數(shù)據(jù)Xτ送入梯度模型森林Θ,識別出危險行為則發(fā)出警報。
所述的步驟1)具體包括以下步驟:
1.1)使用揚聲器放出單頻超聲波信號;
1.2)通過麥克分進行信號采樣;
1.3)通過快速傅里葉變換得到頻率-幅度向量xt',加上時間維度后得到數(shù)據(jù)矩陣X'。
所述的單頻超聲波信號頻率為20KHz,采樣頻率為44.1KHz。
所述的步驟2)具體包括以下步驟:
2.1)對每個數(shù)據(jù)矩陣X'進行去中心化和向量化處理得到去中心化數(shù)據(jù)向量xk,并整合所有m個去中心化數(shù)據(jù)向量xk得到訓練數(shù)據(jù)矩陣X;
2.2)通過奇異值分解將訓練數(shù)據(jù)矩陣X分解為奇異值矩陣Σ和兩個特征值矩陣U和W,即X=UΣWT,矩陣W為的列為奇異值σ的特征屬性的方向;
2.3)選取矩陣W的前d列構成投影矩陣W'=[w1,w2,…,wd];
2.4)通過公式δ=XW'得到d個主要特征δ={δ1,δ2,….δd}。
所述的d通過公式來求取,其中:σi為訓練數(shù)據(jù)矩陣X中第i大的奇異值,t為重構閥值。
所述的多分類器模型θ包括個二分類器,每個二分類器針對一個特定的危險行為,其分類結果為v,v∈{0,1},多分類器模型θ的分類結果其中:k為危險行為種類,表示對所有二分類器分類結果的投票,多分類器模型的分類結果c滿足Vc(e)=k-1則為對應的危險行為。
所述的森林梯度模型為其中:τ1,τ2,…,τn為一個離散的梯度時間,通過不同危險行為的完成度α和持續(xù)時間τ之間的關系得到,k∈{1,2,...,n}即為對應的第k個多分類器模型。
所述的步驟5)具體包括以下步驟:
5.1)在20KHz頻率點上通過窗口切割算法,將滑動窗口內平均能量E與閾值λ進行比較,將E≥λ的部分對應的數(shù)據(jù)進行增量切割,不斷得到持續(xù)時間為τ的動作數(shù)據(jù)Xτ;
5.2)代入森林梯度模型,若輸出的分類結果顯示屬于危險駕駛行為,則為危險行為發(fā)出警報。
本發(fā)明涉及一種駕駛員危險行為識別系統(tǒng),包括:數(shù)據(jù)采集處理模塊、主要特征提取模塊、森林梯度模型訓練模塊以及在線危險行為識別模塊,其中:數(shù)據(jù)采集處理模塊與主要特征提取模塊相連并傳輸經(jīng)過預處理之后得到的數(shù)據(jù)矩陣,主要特征提取模塊與森林梯度模型訓練模塊相連并傳輸提取的主要特征,森林梯度模型訓練模塊與在線危險行為識別模塊相連并傳輸森林梯度模型信息,在線危險行為識別模塊基于在線采集的數(shù)據(jù)和森林梯度模型實時給出危險行為的識別結果。
附圖說明
圖1為本發(fā)明流程示意圖;
圖2為四種危險行為示意圖;
圖3為四種危險行為的頻譜;
圖4為前傾行為與其它危險行為在二維空間上的數(shù)據(jù)分布對比圖;
圖5為危險行為的完成度與持續(xù)時間的擬合關系曲線;
圖6為前傾行為的能量均值圖;
圖7為危險行為識別的準確率、召回率以及F值示意圖;
圖8為不同危險行為的負正類率箱形圖;
圖9為危險行為識別時間的累積分布率示意圖;
圖10為識別準確率示意圖;
圖11為智能終端不同位置下的準確率示意圖。
具體實施方式
下面對本發(fā)明的實施例作詳細說明,本實施例在以本發(fā)明技術方案為前提下進行實施,給出了詳細的實施方式和具體的操作過程,但本發(fā)明的保護范圍不限于下述的實施例。
實施例1
如圖1所示,本實施例中,首先在車輛內設置超聲波場,得到危險行為在多普勒頻譜上的不同模式,然后經(jīng)主成分分析提取主要特征,通過支持向量機算法得到識別不同危險行為的多分類器,并根據(jù)危險行為的完成度和持續(xù)時間建立梯度模型森林,最后將實時超聲波信號經(jīng)窗口切割算法進行切片后通過梯度模型森林識別出危險行為并發(fā)出警告。
如圖2所示,所述的典型危險行為包括前傾(Fetching Forward)、進食(Eating&Drinking)、轉頭(Turning Back)以及拾物(Picking up Drops)等四類。
具體包括以下步驟:
1)接收車內超聲波信號并處理,獲得超聲波信號頻譜結構的數(shù)據(jù)矩陣X'。
1.1)使用揚聲器放出單頻超聲波信號。使用智能終端中的揚聲器發(fā)出20KHz的單頻超聲波信號。
1.2)通過麥克分進行信號采樣。以44.1KHz頻率采樣,得到信號在時域上的信息。
1.3)通過快速傅里葉變換得到頻率-幅度向量x′t,加上時間維度后得到數(shù)據(jù)矩陣X'。
如圖3所示,通過窗寬為2048個點的快速傅里葉變換得到1024維頻率-幅度向量x′t,其表示t時刻從0Hz到22.05KHz的平均分布的離散頻率所對應的幅值。加上時間維度后,得到表示一端時間內超聲波信號頻譜結構的數(shù)據(jù)矩陣X'。
2)對若干數(shù)據(jù)矩陣X'通過主成分分析提取主要特征δ={δ1,δ2,....δd}。
2.1)對每個數(shù)據(jù)矩陣進行去中心化處理,得到訓練數(shù)據(jù)矩陣X。對每個數(shù)據(jù)矩陣X'進行去中心化處理,即將矩陣X'k向量化,展開成向量xk,合成訓練數(shù)據(jù)矩陣X。
2.2)通過奇異值分解將訓練數(shù)據(jù)矩陣X分解為奇異值矩陣Σ和兩個特征值矩陣U和W,即X=UΣWT,矩陣W的列即為特征屬性的方向。奇異值矩陣Σ是對角矩陣,其中的元素,即奇異值σi在主對角線上按從大到小排列,而矩陣W的第i列即為奇異值σi對應的特征屬性,奇異值σi越大,對應矩陣W的第i列代表的特征屬性對于訓練數(shù)據(jù)矩陣X來說越重要。
2.3)選取矩陣W的前d列構成投影矩陣W'=[w1,w2,…,wd]。
2.4)通過δ=XW'得到d個主要特征δ={δ1,δ2,....δd}。
為了避免學習過程中出現(xiàn)過擬合,需要在保留足夠原數(shù)據(jù)信息的條件下使得主要特征數(shù)目d盡可能小,此時可以考慮主成分分析的重構性原則,即其中:σi為訓練數(shù)據(jù)矩陣X中第i大的奇異值,t為重構閥值。為保證主要特征的有效性,t取0.95,d取17。如圖4所示,d取2時,四個危險行為在二維特征空間上分布顯示了只需要兩個主要特征就可以使得危險行為之間兩兩可分。
3)基于主要特征和支持向量機模型構建多分類器模型θ。
基于提取的二維主要特征和支持向量機模型,對每兩個典型的危險行為動作之間訓練得到一個二分類器,共可得到個二分類器,k為典型危險行為的種類,對某一個特定的危險行為的類別投1,其他類投0。對于一個行為e,其得到的所有票為分類結果為同時分類結果還需要滿足Vc(e)=k-1,此時分類結果c即為對應結果的第c種危險行為,若不滿足Vc(e)=k-1則分為“其他行為”類,此即為多分類器模型θ。
4)針對危險行為的完成度α和持續(xù)時間τ整合多個多分類器模型θ建立梯度模型森林。
定義一個開始于t0結束于t1的動作e在t時刻的完成度為針對不同危險行為的完成度α和持續(xù)時間τ之間的關系進行建模,即梯度模型森林。
如圖5所示,每種不同的危險行為的完成時間T都近似滿足一個高斯分布,故對不同的行為的完成時間以高斯分布進行擬合。高斯分布中,均值μ附近兩倍方差σ的范圍可以涵蓋95%以上的數(shù)據(jù),本發(fā)明對每個危險行為取T=μ,T=μ-2σ和T=μ+2σ三個特異點的完成時間得到三條完成度α和持續(xù)時間τ之間的關系直線。之后在這三條直線上各取一點(T=μ-2σ對應的起點,T=μ對應的中點,T=μ+2σ對應的終點),以這三個點擬合一個二次函數(shù)作為完成度α和持續(xù)時間τ之間的關系曲線。
將動作持續(xù)時間離散為一個n維的梯度時間向量T={τ1,τ2,…,τn},根據(jù)這個向量以及每類危險行為完成度α和持續(xù)時間τ之間的關系,對訓練數(shù)據(jù)矩陣X進行切分,得到梯度訓練數(shù)據(jù)再通過上述方法進行訓練,得到梯度模型森林
所述的梯度模型森林即為n個多分類器模型θ的整合。
5)通過窗口切割算法將持續(xù)時間τ的動作數(shù)據(jù)Xτ送入梯度模型森林,識別出危險行為則發(fā)出警報。
5.1)在20KHz頻率點上通過窗口切割算法,將滑動窗口內平均能量E與閾值λ進行比較,將E≥λ的部分對應的數(shù)據(jù)進行增量切割,不斷得到持續(xù)時間為τ的動作數(shù)據(jù)Xτ;
5.2)代入森林梯度模型,若輸出的分類結果顯示屬于危險駕駛行為,則為危險行為發(fā)出警報。
如圖6所示,當有動作發(fā)生時,20kHz頻率附近的頻率點上的能量由于多普勒效應的影響明顯變高。因此,取20kHz頻率附近的頻率點上的能量的均值作為判斷依據(jù),通過滑動窗口將窗口內的能量值的大小與閾值進行比較,從而確定一個駕駛行為動作的開始和結束。
在確定一個行為動作的開始后,按照時間不斷地將這個動作的數(shù)據(jù)Xτ以及當前的持續(xù)時間τ增量式地送入梯度模型森林進行識別,直到系統(tǒng)給出識別結果或是監(jiān)測到該駕駛行為動作的結束。
對于一個持續(xù)時間為τ∈[τi,τi+1]的動作數(shù)據(jù)切片,系統(tǒng)分別調用梯度模型森林中第i和i+1個分類器模型和對這一動作進行識別,只有模型和的識別結果相同,才被記為一次有效的識別。同時,需要連續(xù)數(shù)次給出相同結果的有效識別才能輸出結果,這個連續(xù)的次數(shù)定義為置信長度l。而在系統(tǒng)不能滿足置信長度無法給出識別結果時,系統(tǒng)采用梯度模型森林中最后一個分類器的識別結果作為最終結果,此時系統(tǒng)模型退化為未使用梯度模型森林的多分類器模型θ。
本實施例中的駕駛員危險行為識別系統(tǒng),包括:數(shù)據(jù)采集處理模塊、主要特征提取模塊、森林梯度模型訓練模塊以及在線危險行為識別模塊,其中:數(shù)據(jù)采集處理模塊與主要特征提取模塊相連并傳輸經(jīng)過預處理之后得到的數(shù)據(jù)矩陣,主要特征提取模塊與森林梯度模型訓練模塊相連并傳輸提取的主要特征,森林梯度模型訓練模塊與在線危險行為識別模塊相連并傳輸森林梯度模型信息,在線危險行為識別模塊基于在線采集的數(shù)據(jù)和森林梯度模型實時給出危險行為的識別結果。
評估駕駛員危險行為識別方法時,8個司機駕駛安裝加載本發(fā)明的系統(tǒng)的智能終端的車輛,進行測試。
評估駕駛員危險行為識別方法的指標主要分為危險行為動作識別地準確率和識別時間兩個方面。識別的準確率用F-score(F值)和False Positive Rate(負正類率)來刻畫。F-score是一個綜合了precision(精度)和recall(召回率)的指標,可代表識別的準度,公式為而False Positive Rate刻畫的是不屬于某類的動作被誤識別為該類動作的概率。識別時間則可以用CDF(累積分布函數(shù))圖來表示。
如圖7所示,對于整個測試數(shù)據(jù)集來說,對不同的典型危險行為動作而言,本發(fā)明的識別準確率是非??捎^。具體來說,對于所有典型危險行為動作,識別的precision都在89%以上,recall都大于91%,而在最具綜合性的指標F-score上都不低于92%。顯示了本發(fā)明的系統(tǒng)保證了基本的識別準確率,是一個實際可用的方法。
如圖8所示,對于所有8位參加測試數(shù)據(jù)收集的司機,顯示了本發(fā)明識別過程中的False Positive Rate。這個指標對于實際系統(tǒng)而言是非常重要的,因為系統(tǒng)要盡量避免將正常駕駛行為誤識別為危險行為而對駕駛員產生困擾。可以看出,系統(tǒng)對于不同的典型危險行為動作最高的False Positive Rate也沒有超過2.5%,平均值更是低達1.4%,可見系統(tǒng)對于用戶來說是非常友好的。
如圖9所示,對于不同的典型危險行為動作和所有典型危險行為動作的綜合,顯示了識別時間的累積分布函數(shù)??梢钥闯?,50%的典型危險行為動作可以在1.4s內被識別出來,而當這個時間到達2.3s,超過80%的典型危險行為動作可以被系統(tǒng)識別。而典型危險行為動作的平均完成時間為4.6s。也就是說,超過80%的典型危險行為動作可以在完成度不到50%時即被系統(tǒng)識別,實現(xiàn)了系統(tǒng)所追求的早期識別。
如圖10所示,針對不同的交通狀況和道路狀況,顯示了系統(tǒng)對于不同的典型危險行為動作的識別準確率??梢钥闯?,系統(tǒng)的識別準確率相對穩(wěn)定,而隨著交通狀況和道路狀況的不同略有不同。具體來說,在交通的高峰期相對非高峰期識別準確率略有下降;同時在普通道路相對于高速路識別率也略低。表明系統(tǒng)對于不同的交通狀況和道路狀況有著較好的魯棒性。
如圖11所示,針對智能終端在車輛內的不同放置位置,顯示了系統(tǒng)對于不同的典型危險行為動作的識別準確率??梢钥闯?,系統(tǒng)的識別準確率相對穩(wěn)定,而隨著智能終端放置位置的不同略有差異。放置在車輛的操作面板附近效果最佳,放置在駕駛員的左右側位置效果次之,放在駕駛員的衣服口袋內效果稍差。但差距都很小,最差的情況下也有88%以上的識別精度。表明系統(tǒng)對于智能終端在車內的放置位置沒有嚴格要求,各個位置下系統(tǒng)均可正常工作,顯示了系統(tǒng)的便利性和魯棒性。
與現(xiàn)有技術相比,本發(fā)明能夠在保證識別精度的同時能夠在危險行為的早期階段即可識別結果出并給出警報,并且本發(fā)明利用智能手機發(fā)出超聲波信號,不需要依賴任何附加的外部設備,不容易受天氣等外界環(huán)境的干擾。