曹徐 田文泉
摘 要:如今疲勞駕駛是安全的重要隱患之一,疲勞駕駛會使駕駛員對周圍駕駛環(huán)境的感知判斷力以及對車輛的操控力下降,從而引發(fā)不可挽回的交通事故。本文在深入分析了國內(nèi)外有關(guān)駕駛員疲勞駕駛檢測方法研究的基礎(chǔ)上,提出了一種基于駕駛員疲勞狀態(tài)下的面部表情特征檢測方法,通過檢測駕駛員疲勞時的眨眼頻率、哈欠頻率及點頭頻率結(jié)合駕駛員腦電頻率和心率來判斷駕駛員的疲勞狀態(tài)。
關(guān)鍵詞:駕駛員疲勞檢測;人臉識別;特征提取
隨著汽車數(shù)量的增加以及公路建設(shè)規(guī)模的擴大,開車的人數(shù)越來越多,駕駛員因疲勞駕駛而引發(fā)的交通事故也越來越多。據(jù)調(diào)查表明因疲勞駕駛而引發(fā)的交通事故占據(jù)21%的比例,由于駕駛員駕駛過程中環(huán)境的多變性和復(fù)雜性,很多疲勞檢測手段很難對駕駛員的疲勞狀態(tài)做出有效的監(jiān)督和預(yù)警。所以對駕駛員行駛過程中進行實時疲勞檢測越來越急迫和重要。
疲勞駕駛客觀上表現(xiàn)為駕駛技能的下降,并表現(xiàn)出打瞌睡、反應(yīng)遲鈍、四肢無力、注意力不集中和判斷能力下降等現(xiàn)象。駕駛員疲勞檢測技術(shù)因其巨大的社會效應(yīng)和經(jīng)濟效應(yīng),受到各國政府的高度重視。根據(jù)信息來源的不同,可將駕駛員疲勞檢測方法分為以下三種:
(1)基于生理參數(shù)的檢測方法:以生理參數(shù)為基礎(chǔ)的駕駛員疲勞檢測方法主要是利用各種專用生理傳感器,采集駕駛員在駕駛狀態(tài)下的各種生理信號,并對這些信號進行分析,從而識別駕駛員的疲勞狀態(tài),目前常用的駕駛員生理參數(shù)有:腦電(EEG)、心電(ECG)、眼動(EMG)、肌電(EMG)、脈搏(ECG)、呼吸頻率等。由于生理信號能快速、準確地反映人的心理狀態(tài),所以基于生理信號的檢測方法具有很好的實時性和準確性。以生理參數(shù)為基礎(chǔ)的駕駛員疲勞狀態(tài)檢測方法需要使用接觸設(shè)備來提取生理參數(shù),從而在一定程度上會造成駕駛員的不舒服,影響操作。
(2)基于駕駛行為的檢測方法:以駕駛行為為基礎(chǔ)的疲勞檢測方法主要是利用各種車載傳感器,采集駕駛狀態(tài)下駕駛員的操作信息,如方向盤、加速踏板、制動踏板和離合器等,進行分析建模,從而判斷駕駛員的疲勞狀態(tài)。
一、駕駛員面部特征提取
面部含有很重要的信息,可以作為駕駛員疲勞的一種指標,面部動態(tài)表現(xiàn)睡意,以打哈欠為特征,這通常與大腦缺氧有關(guān)。在這種情形下,人類的自然反應(yīng)就是張大嘴巴,努力呼吸更多的氧氣,這是一種可以被用來作為疲勞預(yù)警的面部特征。臉部的另一個特征是眨眼速度,它表示一段時間內(nèi)眨眼的次數(shù)。當人處于困倦狀態(tài)時,眨眼的頻率會發(fā)生變化,此特征可用于指示疲勞程度。司機由于某種原因處于疲勞駕駛狀態(tài)時,經(jīng)常會出現(xiàn)打瞌睡,打哈欠等現(xiàn)象。與這些生理現(xiàn)象有很大的關(guān)聯(lián)且微表情的特點主要集中在眼睛、嘴巴和眉毛。從而監(jiān)控人臉區(qū)域中眼、嘴、眉的微表情,提取疲勞特征指標,識別駕駛員疲勞狀態(tài)。司機疲勞時,眼睛睜開-閉-睜開的過程所花的時間變長,而司機眨眼的時間越長,疲勞程度越高。一般情況下,每分鐘眨眼15~30次,每次眨眼時間在0.2~0.3秒之間。如果駕駛員一段時間內(nèi)眨眼次數(shù)過少,且一分鐘低于七次,則可能處于疲勞駕駛狀態(tài),此時應(yīng)向駕駛員發(fā)出警告。在正常行駛過程中,司機嘴基本上是閉著的。當司機在和別人說話時,嘴的狀態(tài)是一般張著的;當司機打哈欠時,嘴就會張開的要比平常大一些。一般說來,打哈欠是一個較長的過程,而且嘴張開的幅度較大。在張開嘴保持一定時間之后,就可以判斷司機為打哈欠狀態(tài),而且下垂的眉毛和下垂的嘴角呈現(xiàn)的是一種順從性的疲勞狀態(tài)。在疲勞狀態(tài)下,駕駛員會自我調(diào)節(jié),此時會輕皺眉頭,眼部微微抬起,面部肌肉會不定時的收縮,同時還會出現(xiàn)打哈欠的動作。以計算機視覺技術(shù)為基礎(chǔ)的疲勞檢測,是通過安裝在汽車儀表板或鏡子下面的低成本攝像頭來獲取駕駛員的圖像,其中包括駕駛員的面部、身體的上部、手部、座椅的后部或汽車的其他內(nèi)部部件,并通過這些圖像來判斷汽車的重要信息,例如人臉等等。
該系統(tǒng)主要包括:圖像采集模塊,心率采集模塊,腦電采集模塊,車載處理模塊,預(yù)警模塊。每個采集模塊收集人眼圖像、心率信號、腦電信號并傳送到車內(nèi)處理模塊進行一系列數(shù)據(jù)預(yù)處理,利用機器學習訓練得到的邏輯回歸模型對人的疲勞狀態(tài)進行判斷,并根據(jù)判
斷結(jié)果控制預(yù)警模塊的預(yù)警強度。在圖1中顯示了系統(tǒng)的構(gòu)圖。
二、駕駛員疲勞狀態(tài)判斷
駕駛員疲勞駕駛的主要表現(xiàn)是在駕駛過程中打瞌睡、走神、心跳加快、頻繁眨眼等,造成操作失誤或駕駛能力喪失。心率、腦電疲勞計算及PERCLOS算法表現(xiàn)疲勞的心電信號時域指標主要為R-R間期,也就是心臟的每次搏動間期。將R-R間隔一段時間的心率取平均值,再除以相應(yīng)的系數(shù),得到1min內(nèi)心臟跳動的次數(shù),即為所得到的心率
公式中period為一段時間內(nèi)的平均心跳時間間隔。
駕駛員處于疲勞狀態(tài)時,β波減少,α波增多;駕駛員處于睡眠狀態(tài)時,腦電的主要頻率會降至θ波。因此使用公式(2)可表示駕駛員的疲勞程度:
公式中:r是腦電波功率譜之比;β、α、θ是對應(yīng)于β波、α波、θ波的功率。
PERCLOS算法是國際公認的較為準確的人眼疲勞檢測算法,它可以檢測一段時間內(nèi)眼睛閉合時間所占總時間的百分比
公式中:t1為人眼睜開100%至閉合20%的時間;t2為人眼睜開100%至閉合80%的時間;t3為人眼睜開100%至下一次睜開20%的時間;t4為人眼睜開100%至下一次睜開80%的時間。其中,20%,80%,100%都是眼球占全眼的比例。
三、算法流程圖
一般而言,人眼在一分鐘內(nèi)眨眼次數(shù)為10至15次,若眨眼次數(shù)小于此值,則表明駕駛員的眼睛大部分時間是閉著的,或眼睛一直張開,但目光比較呆滯,眼球無明顯活動。在第二種情況下,需要判斷加入駕駛員的眨眼次數(shù)。在本文中設(shè)定,如果駕駛員 PERCLOS測量值大于0.3,而一分鐘眨眼次數(shù)小于或等于5,則認為駕駛員是在高度走神,需要給予相應(yīng)的警告信息。它的特定算法是,如果人眼在相鄰兩幀之間的狀態(tài)有變化,設(shè)變化數(shù) change=1.如果 change=2,說明眨眼一次,記眨眼數(shù) sum=1,并設(shè)置 change=0,按順序進行。圖2顯示了它的算法流程圖。
四、結(jié)論
本文對上述算法進行了測試,并對結(jié)果進行了分析。一定程度上可以檢測出駕駛員是否處于疲勞狀態(tài)。當駕駛員處于疲勞駕駛狀態(tài)時,通過發(fā)出聲音警告提醒駕駛員停車休息,可以減少交通事故的發(fā)生。但是由于真實場景中環(huán)境復(fù)雜,各方面都存在不利因素,導(dǎo)致性能下降,這也是我們今后研究工作的重點。
參考文獻:
[1]高永萍.駕駛員疲勞檢測系統(tǒng)[J].儀表技術(shù)與傳感器,2007,(1):60-62.
[2]薄華.基于人眼識別的駕駛員疲勞檢測[J].電腦知識與技術(shù),2011,(25):6164-6165,6177.
[3]顏偉.駕駛員疲勞檢測系統(tǒng)設(shè)計[J].計算機測量與控制,2017,(3):43-47.f