張 明 恒, 翟 曉 娟, 朱 有 明, 趙 秀 棟
( 1.大連理工大學 工業裝備結構分析國家重點實驗室, 遼寧 大連 116024; 2.大連理工大學 汽車工程學院, 遼寧 大連 116024 )
疲勞駕駛是引發高速公路交通事故尤其是重大交通事故的主要原因[1].據美國高速公路安全管理局(National Highway Traffic Safety Administration,NHTSA)統計,在美國每年由疲勞駕駛引發約10萬起交通事故,其中約1 500起導致直接死亡[2].研究結果表明[3],如果在危險發生前0.5 s對駕駛人進行預警,則可減少60%左右的碰撞交通事故發生.因此,在完全智能化的無人駕駛技術距離實際應用尚有差距的現階段,研發車載預警輔助駕駛系統是滿足市場需求、有效降低交通事故發生的可行途徑.
駕駛疲勞險態辨識的本質,即是基于相關特征信息識別即將出現的危險狀態,以及時提醒駕駛人或對車輛實施主動干預,其主要包括兩方面:與疲勞形成相關的關鍵特征指標析取和依據相關指標對疲勞險態發生進行動態辨識.
特征指標的檢測總體上可分為主觀和客觀兩類方法.主觀指標檢測大多基于駕駛人主觀感受的調查,統計分析疲勞險態的誘因,評測標準有皮爾遜疲勞量表[4]、斯坦福嗜睡量表[5]等.客觀指標檢測可分為兩種:接觸式和非接觸式.其中,接觸式方法以檢測駕駛人腦電(electroencephalogram,EEG)、心電(electrocardiogram,ECG)等生理參數為主[6-9].該類方法的優點是客觀性強,能比較準確地反映駕駛個體精神狀態的變化;但缺點也很明顯,均需測量裝置與駕駛人身體有關部位接觸,這在很大程度上限制了其推廣應用.基于上述研究局限性,研究人員試圖從駕駛人外在表觀指標推斷駕駛安全性[10-13].其中,卡內基梅隆研究所發現PERCLOS(percent eye closure)特征中的P80特征與駕駛疲勞程度的相關性最好[13],這被NHTSA認可為駕駛疲勞監測的有效方法之一.
在疲勞險態辨識機理研究方面,所采用的模型主要包括貝葉斯網絡[14-15]、神經網絡[16-19]和隱馬爾可夫模型(HMM)[20-21]等.綜合來看,多特征信息融合已經成為該領域當前的研究熱點和趨勢,由于駕駛疲勞的產生是漸進的動態生成過程,利用HMM可以更好地反映該種特性變化.然而,受限于HMM參數優化過程的隨機性及訓練過程易陷入局部最優的問題,基于群集智能方法對相關參數進行優選是該領域較新的研究熱點.
基于此,本文利用粒子群優化(PSO)算法對所構建的HMM駕駛疲勞辨識模型中的相關參數進行優選,以解決參數訓練過程出現的相關問題,并結合模擬實驗數據集對所提出的改進方法進行有效性對比驗證.
為實現對險態的有效監測,首先需尋求能反映駕駛狀態變化的關鍵特征.目前,PERCLOS特征已被證明為反映駕駛疲勞狀態的最有效特征之一,其定義為單位時間內(一般取1 min或30 s)眼睛閉合一定比例(50%、70%或80%)的時間所占的比率[22],包括P70、P80和EM共3個特征指標,分別表示眼瞼蓋過瞳孔的面積超過70%、80%和50%所占的時間比例.其中,P80特征已被證實與疲勞程度的相關性最好,因此在一些基于視覺的疲勞檢測系統中一般采用P80作為疲勞識別的判據.其具體確定方法如圖1所示.

圖1 PERCLOS指標(P80)示意圖Fig.1 Schematic diagram of PERCLOS (P80)
典型HMM問題可簡記為λ=(π,A,B),即HMM由兩部分組成:其一為馬爾可夫過程,由初始概率矢量π和隱含狀態轉移概率矩陣A描述,它直觀地反映了隱含狀態序列的變化情況;其二為觀察值隨機過程,由混淆矩陣B描述,其輸出為觀察值序列.對于離散HMM問題,初始參數π、A對模型準確度影響不大,可隨機分布或均勻分布,但需滿足以下條件:

(1)
式中:aij為隱含狀態從i轉移到j的概率,P(qi=θi)為t時刻對應馬爾可夫鏈上的狀態q屬于有限狀態θ的概率.
對于混淆矩陣B,其初值的選取很大程度上會對最終模型準確度產生影響,分析其主要原因在于HMM訓練過程所基于的BW算法[23]易陷入局部最優.因此,在具體實施時要求選取的初始B恰當才能使結果接近全局最優,這為HMM的實際應用帶來了一定困難.目前,利用近年來發展起來的進化算法(evolutionary algorithm,EA)結合HMM訓練過程對相關參數進行選優逐漸成為該領域的研究熱點問題.考慮到EA中PSO算法實現容易、精度高、收斂快等優點,本文提出一種改進的BW-PSO算法分別對模型參數進行訓練.其基本工作流程如圖2所示.

圖2 基于BW-PSO算法改進的HMM參數訓 練流程Fig.2 Training diagram of improved HMM based on BW-PSO algorithm
BW-PSO算法的基本計算流程為
初始化:依據訓練規模,隨機生成n個A0和B0;
初值選取:對所有A0和B0分別基于傳統BW算法訓練得到更新后的n個A1和B1;
適應度函數:基于更新的所有A1、B1進行最大可能狀態估計并得到對應的狀態估值序列

Q^
=(

q^
1

q^
2…

q^
i),i=1,…,n,則該狀態估值序列與狀態基準序列Q=(q1q2…qi)的差值為X=

Q^
-Q,選擇X的方差作為適應度判定準則,即
(2)
粒子位置和速度更新:通過比較每次更新后的適應度δ大小來調整粒子的位置和速度:


(3)
式中:r為隨機數;微粒群體規模為N,其中每個微粒在D維空間中的坐標位置向量表示為xi=(xi,1xi,2…xi,d…xi,D),速度向量表示為vi=(vi,1vi,2…vi,d…vi,D),微粒個體最優位置(即該微粒經歷過的最優位置)記為pi=(pi,1pi,2…pi,d…pi,D),群體最優位置記為pg=(pg,1pg,2…pg,d…pg,D).
終止條件:以充分保證算法收斂為原則,確定最大訓練次數Tmax,當訓練次數達到上限時,狀態估計值對應的狀態轉移概率矩陣A和混淆矩陣B即為全局最優值.
此外,由于馬爾可夫鏈狀結構可以分為左右鏈型(left-right model)和各態遍歷型(ergodic model),所建立的HMM需針對實際問題進行相應選擇.圖3為一典型的各態遍歷型結構,在該類HMM中,某一時刻可以處于任何狀態,并且都能在有限次數的轉移后處于馬爾可夫鏈中的其他任何狀態.而左右鏈型規定了隨著時間的變化狀態向原狀態轉移,或者向規定大序號狀態轉移,該類HMM能夠更有效地應用到各種隨時間變化的參數數據建模,如語音信號識別、駕駛疲勞險態的生成等.

圖3 各態遍歷型HMM結構Fig.3 Ergodic model of HMM
吻合度分析是驗證模型準確性的關鍵.在本研究中,利用優化后的HMM推理得到最可能狀態序列

Q^
,基于該序列結合狀態基準序列Q來驗證模型的準確性.其中,狀態基準序列是根據生理參數測試儀、基于視頻客觀評價以及主觀打分3種方式獲得.吻合度分析包括以下兩方面:
(1)計算狀態估值序列

Q^
與狀態基準序列Q的相似度百分比.對于序列長度為N的情況,若兩序列中的狀態重合數為s,則相似度Si定義為
(4)
(2)計算狀態估值序列

Q^

X=Q^-Q,V=∑ni=1Xi/N,
與狀態基準序列Q差值向量X的方差.定義則其方差
(5)
基于已有研究結果[24],本研究將HMM狀態數定為兩級:清醒和疲勞.與此相對應,各觀測變量也分為兩類,即數據正常或異常.基于文獻[25]研究結果,這里設定PERCLOS的閾值為0.15,則特征參數經閾值處理后如表1所示.


表1 特征參數的二值化Tab.1 Characteristics parameters binary
由于HMM結構可分為左右鏈型和各態遍歷型,考慮實際疲勞形成為一漸進的動態生成過程,該規律符合左右鏈型結構的本質特征.然而,由于本文僅定義了兩種狀態水平,從HMM各態遍歷型的結構拓撲圖上可以看出,此時各態遍歷型退化為左右鏈型結構,由此本文將該研究的基本HMM劃分為各態遍歷型結構.基于以上分析,本文所建立的HMM結構如圖4所示.

圖4 馬爾可夫鏈示意圖Fig.4 Schematic diagram of Markov chain
在進行HMM構建時,鑒于初始模型參數的選取對于模型訓練和最終準確度影響較大,本文對關鍵性參數概率矩陣A和混淆矩陣B的初始取值作如下考慮:
(1)由于矩陣A的初值對模型訓練結果影響不大,只需滿足式(1)的要求即可,這里考慮為均勻分布或隨機分布.
(2)為方便后續對所提出的BW-PSO算法進行對比分析,這里依據有無先驗條件對矩陣B的初值選取分兩種情況,即隨機分布和有先驗條件分布.先驗條件可描述為定義規定時段內的PERCLOS觀察值序列長度為N,對其閾值化處理后的狀態為M,狀態基準序列為Q.利用數理統計方法統計出該時段內基準狀態為j的個數Qj,觀測值狀態為i的個數Mi,則矩陣B中的各元素取值為
(6)
(3)對于BW-PSO算法,矩陣A、B的初值選擇為隨機分布.
基于以上分析,所建立的3個基本HMM參數如表2所示.


表2 各模型初值選取匯總表Tab.2 Summary sheet of all models′ initial values
利用BW算法對HMM進行訓練時,在模型參數初始值選定基礎上利用式(7)進行反復迭代,最終通過轉移概率估計值進行評估,直到矩陣A和B達到最優解.

a^ij=∑T-1t=1εt(i,j)∑T-1t=1γt(i)

b^j(k)=∑Tt=1,ot=kγt(j)∑Tt=1γt(j)
(7)

在利用PSO算法對HMM參數尋優時,把BW-PSO算法結合后嵌入HMM,不需對初始參數A、B進行特別選取,只需隨機選取,在不斷的優化過程中即可達到全局最優.具體PSO算法的內部參數設定如表3所示.


表3 PSO算法參數Tab.3 Parameters of PSO algorithm
基于上述參數設定,整個訓練過程各參數的收斂曲線如圖5所示,橫坐標β為迭代次數,尋優過程計算時間統計及最終參數優化結果如表4、5所示.其中,在圖5中,考慮到矩陣A和B每行元素總和為1,故只選取第一列元素進行比較,即只選取A矩陣中的元素a11和a21,B矩陣中的元素b11和b21.
對上述參數優化過程及統計結果進行分析,可得以下結論:
(1)矩陣A各參數的迭代收斂過程一致.初值選取對模型訓練精度影響不大,但基于先驗知識和PSO策略的初值選定方法可在一定程度上加快訓練進程.
(2)矩陣B各參數的迭代收斂過程差別較大.隨機選定初值時,模型易陷入局部最優,導致最終訓練結果出現較大誤差;基于先驗知識和PSO策略的初值選定方法各參數的迭代變化過程一致,但PSO方法可以在一定程度上加快訓練進程.


(a) 矩陣A參數優化過程對比曲線

(b) 矩陣B參數優化過程對比曲線

圖5 矩陣A、B參數優化過程Fig.5 Optimizing process of matrix A and B

表4 3個模型參數尋優計算時間Tab.4 Parameter optimizing time of three models
(3)基于先驗知識和PSO策略的初值選定方法可有效減少模型訓練迭代次數,但由PSO引入所帶來的計算時間復雜度較其他方法要大得多.由此可見,對于小規模復雜問題,基于BW-PSO算法的模型訓練方法尚可接受,但隨著問題復雜度的增大,需在其計算成本與計算精度間進行折中.
(4)基于BW算法的模型訓練結果準確性嚴重依賴于矩陣B的初始估值,基于先驗知識和PSO策略的方法具有較穩定的模型訓練結果準確性;但由于先驗條件的引入,其條件策略設定需針對不同問題進行具體制定,不利于算法的自動化實現;基于PSO策略的方法除具有較穩定的結果輸出外,由于不需人為制定相應條件規則,更有利于實現算法的智能化.


表5 優化后的各模型參數Tab.5 Parameters of all the optimized models
為比較上述所建立模型在疲勞險態識別上的差異,進行了數據測試.招募了20名年齡段在24~26歲且駕齡在2~3 a的駕駛人,對每名實驗者以1 min為單位用SMI-HED頭盔式眼動儀在駕駛模擬器上獲取相應的PERCLOS特征觀察值序列,原始數據序列時長為3 h.為降低模型計算復雜性,從中抽取具有代表性的20組長度為30的樣本進行建模,其特征參數時序變化曲線如圖6所示.
圖6中,閾值線以上為駕駛人疲勞狀態采樣數據,以下為清醒狀態采樣數據.從曲線變化趨勢來看,在選定時段內駕駛人經歷了“疲勞-清醒-疲勞-清醒-疲勞-清醒”的狀態轉變,可以用于驗證所建模型的準確性.

圖6 PERCLOS曲線圖Fig.6 Curve graph of PERCLOS
4.2.1 模型穩定性分析 對于模型1和模型3,隨機選取10組不同的初值進行穩定性驗證;由于模型2是模型1的特例(模型1先驗條件下的輸出),從20組樣本數據中抽取10組進行先驗統計得到10組初值后,再統一和模型1以及模型3進行穩定性比較.模型的具體準確度穩定性分析對比結果如圖7所示,橫坐標η為初值選取次數.

圖7 3個模型準確度對比圖Fig.7 Contrast diagram of the change of three models′ accuracy
由此可見,模型1準確度變化曲線起伏最大,穩定性最差;模型2相比于模型1穩定性較好,但相對模型3也存在一定差距.
4.2.2 模型準確性分析 考慮到3個模型各自對初值選取的不同要求以及隨機初值的重要性,本文分別從1次初值選取和10次隨機初值選取兩方面驗證3個模型的準確性:
(1)在實驗時段內,3個模型得到的最可能狀態序列與狀態基準序列的比較如表6所示,基準狀態為



表6 各模型誤判次數統計Tab.6 Statistics of all the models′ mistakes
由表6可知,模型1輸出結果與基準狀態有較大差別,準確率與穩定性最差;模型2輸出結果與基準狀態差別較小,準確率與穩定性較好;模型3較模型1和2準確率及穩定性要好,與基準狀態吻合度較高.
(2)隨機選取10個不同初值以驗證3個模型的整體準確度,其對比結果如圖7所示.可見:模型1的準確度起伏在10.0%~76.7%,僅在第3次和第7次初值選取時,達到了較高的76.7%和73.3%;模型2的準確度起伏在66.7%~76.7%,整體準確度相比于模型1高;模型3的準確度起伏在76.7%~83.3%,模型整體準確度高于前兩個模型.
在HMM應用過程中,混淆矩陣的初值選取對于模型最終準確性有較大影響.本文在對駕駛疲勞險態動態生成特性分析基礎上,提出利用改進的BW-PSO算法對所建立的HMM進行訓練,以克服實際應用過程中面臨的困難.與傳統BW算法的結果對比分析表明,本文所提出的方法無須考慮HMM初值的選取即可達到全局最優,省略了復雜的初始參數運算估計,較BW算法具有更高的準確性和穩定性.基于已取得的研究成果,下一階段應從多源信息融合角度對所建立的模型進行拓展,以進一步提高模型的適用范圍和魯棒性.
[1] 孟憲超. 疲勞駕駛致交通事故特點及有效預防分析[J]. 物流工程與管理, 2014,36(8):187-188.
MENG Xianchao. Driving fatigue caused by traffic accident characteristics and effective prevention analysis [J].LogisticsEngineeringandManagement, 2014,36(8):187-188. (in Chinese)
[2]李都厚,劉 群,袁 偉,等. 疲勞駕駛與交通事故關系[J]. 交通運輸工程學報, 2010,10(2):104-109.
LI Duhou, LIU Qun, YUAN Wei,etal. Relationship between fatigue driving and traffic accident [J].JournalofTrafficandTransportationEngineering, 2010,10(2):104-109. (in Chinese)
[3]WANG C D, THOMPSON J P. Apparatus and method for motion detection and tracking of objects in a region for collision avoidance utilizing a real-time adaptive probabilistic neural network: U. S. Patent 5613039 [P]. 1997-03-18.
[4]CARROLL R J. Ocular measures of driver alertness: FHWA Technical Report No. FHWA-MC-99-136 [R]. Washington D C: Federal Highway Administration, 1999.
[5]HODDES E, ZARCONE V, SMYTHE H,etal. Quantification of sleepiness:a new approach [J].Psychophysiology, 1973,10(4):431-436.
[6]DA SILVEIRA T L T, KOZAKEVICIUS A J, RODRIGUES C R. Automated drowsiness detection through wavelet packet analysis of a single EEG channel [J].ExpertSystemswithApplications, 2016,55:559-565.
[7]SAN P P, LING S H, CHAI R,etal. EEG-based driver fatigue detection using hybrid deep generic model [C] //ProceedingsoftheAnnualInternationalConferenceoftheIEEEEngineeringinMedicineandBiologySociety,EMBS. Orlando: IEEE, 2016:800-803.
[8]BORGHINI G, ASTOLFI L, VECCHIATO G,etal. Measuring neurophysiological signals in aircraft pilots and car drivers for the assessment of mental workload, fatigue and drowsiness [J].NeuroscienceandBiobehavioralReviews, 2014,44:58-75.
[9]付榮榮,王 宏,張 揚,等. 基于可穿戴傳感器的駕駛疲勞肌心電信號分析[J]. 汽車工程, 2013,35(12):1143-1148.
FU Rongrong, WANG Hong, ZHANG Yang,etal. An analysis on EMG and ECG signals for driving fatigue detection based on wearable sensor [J].AutomotiveEngineering, 2013,35(12):1143-1148. (in Chinese)
[10]MITTAL A, KUMAR K, DHAMIJA S,etal. Head movement-based driver drowsiness detection:A review of state-of-art techniques [C] //Proceedingsof2ndIEEEInternationalConferenceonEngineeringandTechnology,ICETECH2016. Coimbatore: IEEE, 2016:903-908.
[11]ANIL P C, ARAVIND B, SARITHA S,etal. Development of a headband for acquisition and analysis of forehead EOG signal for driver fatigue detection based on eye-blink patterns [J].InternationalJournalofComputerApplications, 2014,96(23):42-46.
[12]SIGARI M H, POURSHAHABI M R, SORYANI M,etal. A review on driver face monitoring systems for fatigue and distraction detection [J].InternationalJournalofAdvancedScienceandTechnology, 2014,64(5):73-100.
[13]DINGES D F, GRACE R. PERCLOS: A valid psychophysiological measure of alertness as assessed by psychomotor vigilance [R]. Washington D C: Office of Motor Carriers, Federal Highway Administration, 1998.
[14]王連震,裴玉龍. 基于貝葉斯網絡的駕駛疲勞程度識別模型[J]. 城市交通, 2014,12(3):66-74.
WANG Lianzhen, PEI Yulong. Driving fatigue recognition model based on Bayesian network [J].UrbanTransportofChina, 2014,12(3):66-74. (in Chinese)
[15]GUO Wenqiang, ZHANG Baorong, XIA Lingjun,etal. Driver drowsiness detection model identification with Bayesian network structure learning method [C] //Proceedingsofthe28thChineseControlandDecisionConference,CCDC2016. Yinchuan: IEEE, 2016:131-136.
[16]TABAL K M R, CALUYO F S, IBARRA J B G. Microcontroller-implemented artificial neural network for electrooculography-based wearable drowsiness detection system [J].LectureNotesinElectricalEngineering, 2016,362:461-472.
[17]YAN Chao, JIANG Huiying, ZHANG Bailing,etal. Recognizing driver inattention by convolutional neural networks [C] //Proceedings—20158thInternationalCongressonImageandSignalProcessing,CISP2015. Shenyang: IEEE, 2015:680-685.
[18]SINGH A, KAUR J. Driver fatigue detection using machine vision approach [C] //Proceedingsofthe20133rdIEEEInternationalAdvanceComputingConference,IACC2013. Washington D C: IEEE Computer Society, 2013:645-650.
[19]KRISHNASREE V, BALAJI N, SUDHAKAR RAO P S. A real time improved driver fatigue monitoring system [J].WSEASTransactionsonSignalProcessing, 2014,10(1):146-155.
[20]FU Rongrong, WANG Hong, ZHAO Wenbo. Dynamic driver fatigue detection using hidden Markov model in real driving condition [J].ExpertSystemswithApplications, 2016,63:397-411.
[21]XIANG Yu. Eye fatigue state recognition of Gabor wavelet optimization HMM algorithm [J].InternationalJournalofHybridInformationTechnology, 2016,9(9):189-198.
[22]BAUM L E, PETRIE T, SOULES G,etal. A maximization technique occurring in the statistical analysis of probabilistic functions of Markov chains [J].TheAnnalsofMathematicalStatistics, 1970,41(1):164-171.
[23]ELMEZAIN M, AL-HAMADI A, APPENRODT J,etal. A hidden Markov model-based continuous gesture recognition system for hand motion trajectory [J].Proceedings—InternationalConferenceonPatternRecognition, 2008:4761080.
[24]DESMOND P A, HANCOCK P A. Active and passive fatigue states [M] // PA H, PA D, eds.Stress,WorkloadandFatigue. Mahwah: Lawrence Erlbaum Associates, 2001:455-465.
[25]郭永彩,李文濤,高 潮. 基于PERCLOS的駕駛員疲勞檢測算法[J]. 計算機系統應用, 2009,18(8):54-57.
GUO Yongcai, LI Wentao, GAO Chao. Fatigue detection algorithm based on PERCLOS [J].ComputerSystems&Applications, 2009,18(8):54-57. (in Chinese)