?

基于駕駛員面部特征的疲勞檢測系統研究

2023-06-11 18:37劉馨雨李庭燎
時代汽車 2023年10期
關鍵詞:檢測

劉馨雨 李庭燎

摘 要:疲勞駕駛在我國的交通事故引發率居高不下,如何對駕駛員進行科學有效的疲勞駕駛檢測并及時預警已經成為了當下熱議的話題。為減少疲勞駕駛造成的交通安全風險,本文對基于駕駛員面部特征的檢測方法進行了研究,通過對疲勞特征參數的提取克服了單一參數疲勞駕駛判斷方法導致的判定精準度低等缺陷,且計算需求小,普適性能強。

關鍵詞:疲勞駕駛 檢測 PERCLOS 人眼定位

1 引言

在交通事故的傷亡事件中,由于駕駛員困倦、疲勞駕駛等原因所致的交通事故發生率迅速增加,并逐步成為引發交通事故的主要原因。在我國,每年有40%以上的道路交通事故是由大型汽車引起的,其中死亡的比例在21%以上;如果是在高速上,時速超過160公里,那么一旦發生車禍,駕駛員的死亡率就會接近100%[1]。但是,在發生疲勞駕駛前,通過對駕駛員的實時監測,可以獲取其以前的疲勞特性,并對其進行實時提醒,從而對其進行疲勞預警,如此一來,就可以將交通事故的發生率降到最低。

迄今為止,相關研究學者明確了許多人眼定位的方法。在此之中,具有較高代表性的方法為:Anber Salma等采用基于面部特征的Alexnet混合駕駛員疲勞和分心檢測模型[2];Zhang Tao通過分析非侵入性頭皮EEG信號來探討基于樣本熵特征的多核算法對疲勞和正常受試者的分類性能,構建基于樣本熵的多通道腦電真實駕駛疲勞檢測方法[3];Bala等相關學者在研究中明確了基于遺傳算法等來支持分析眼睛定位[4];Wang等學者建立基于相位滯后指數的圖形注意網絡以用于檢測駕駛疲勞。[5];Mamunur Rashid等學者基于隨機子空間K-Nn的集成分類器,利用選定的腦電通道進行駕駛員疲勞檢測[6]??偠灾?,現在已開發的許多的眼部定位算法,其基本都具有較多的計算量,部分算法的實際應用十分困難,部分算法對臉部圖像的轉動、移動等的改變十分敏感,進而將致使算法效率的下降。

本篇文章明確的疲勞檢測方法,對傳統單指標疲勞檢測方法進行改進,多層次運用了人臉分布特征。首先利用Dlib 庫對人臉分布特征進行定位,在提高檢測效率的同時減輕人臉分析工作量,實驗顯示,此方法可以較為精準地識別出人體疲勞狀態,且運算量非常小、處理效率高、魯棒性也非常好。

2 疲勞檢測

2.1 疲勞駕駛的概念

疲勞駕駛一般是指在經歷長期精神狀態高度集中的行駛過程后,駕駛員所產生的生理和心理機能的雙重失調。

根據現有的研究現狀,駕駛員疲勞的檢測方法主要分為三大類,分別是基于車輛狀況的檢測、生理信號的檢測和基于駕駛員面部特征的測量。其中,基于車輛狀態的檢測包括駕駛途中車道偏移、方向盤轉動幅度以及車輛的動態信息。引起疲勞駕駛的最主要因素在駕駛員而非車輛,如果根據車輛行駛狀況進行判定是否疲勞駕駛,那么當車輛狀況發生變化時,駕駛員可能已經處于疲勞狀態有一段時間,所以該方法具有一定的延遲性,以至于錯過預警的最佳時機。此外,個人的駕駛習慣和道路環境也會對檢測精度有所影響,因此,該方法并不適合實時駕駛疲勞檢測。生理信號的檢測方法通常是基于駕駛員的生理信號,如腦電圖、眼電圖、肌電圖等。疲勞狀態可以通過頻域分析和基于腦電或腦電的線性分類來評估。然而,這種檢測方法需要應用許多傳感設備甚至是可穿戴類的傳感設備對駕駛員的生理特征開展檢測記錄,這對駕駛條件的要求過高,同時還可能會引起駕駛員的不適,由于這些約束條件,這類方法也很難實際運用到駕駛環境中。

與以上兩種方法相比,基于駕駛員面部特征分析的檢測方法具有不可代替的實時性、無接觸和易實現等優勢,當一位駕駛員處于疲勞狀態時,他的面部狀態往往和正常駕駛時有所區別,如眨眼頻率加快、眼睛開合的幅度變小、打哈欠等,視覺方法可以較為準確地識別這些行為,并且不會因為設備安裝對駕駛員造成影響。

2.2 疲勞駕駛的特征

從表現方式上劃分疲勞駕駛特征,可以分為生理特征和心理特征兩大類。根據駕駛員疲勞程度的不同,所表現出來的疲勞駕駛特征也有相應差異。在生理反映上會有以下的癥狀,如當駕駛員產生疲勞后,其生理機能就會下降,從而出現頭重、心跳變快、呼吸加重,想喝水、食欲不振、出現氣喘、胸口悶嘆氣、脈搏加速、打哈欠、頻繁眨眼、手腳出現不適,表情變化、眼睛的視野逐漸縮小,視力下降,模糊、眼睛也會出現干紅、耳內轟鳴、煩躁恍惚、定向障礙等等的情況。

在心理上也會出現以下的癥狀:如表現在例如注意力不集中,分散,大腦遺漏一些重要信息,錯誤信息的獲取情況就會增多,思維出現反應遲鈍,精神萎靡,能力下降,思維頭腦混亂,判斷失誤,肢體出現動作僵硬,節奏變得紊亂,忘記甚至出現操作不規范,自我控能力下1.3疲勞駕駛的形成機理。

長期以來,交通運輸行業被人們視為一種高強度的高風險行業。因為在車輛行駛的過程中,駕駛員需要時刻在維持對車輛周圍環境的高度關注的同時進行駕駛操作,在這樣的高壓力狀態下,駕駛員的大腦神經和感覺器官必須時刻處于判斷車輛內外信息的高度興奮狀態,導致精神上更加容易產生疲勞。與此同時駕駛員在行駛過程中長期維持相對固定的姿勢,血液循環受到阻礙,長此以往,駕駛人的肢體就會變得僵硬,進而產生身體機能上的勞累和疲乏。盡管我國已經出臺了大量相關法規,但疲勞駕駛本身的隱蔽性和駕駛員個體對疲勞程度把握的不確定性導致疲勞駕駛釀成的慘劇時有發生,尤其是在近年來新冠疫情的爆發,駕駛員的行駛狀態普遍向著低駕駛頻率、長駕駛距離、長駕駛時間發展,導致疲勞駕駛的發生率增加顯著。

3 疲勞檢測方法

3.1 檢測方法選擇

梳理當下國內外針對疲勞駕駛檢測領域的研究情況,可以發現針對駕駛員疲勞的檢測方法主要可以劃分為兩大方向,即主觀檢測法和客觀檢測法。其中主觀檢測法是通過對駕駛員進行問訊、分析、估測、評價等以獲取駕駛員疲勞狀態,這種方法主要應用于道路交通執勤等方面??陀^檢測法則著眼于通過對行駛過程中相關數據進行收集和評估,從而判斷駕駛員當下狀態是否可以被判定為疲勞。得益于客觀檢測法不會受到駕駛員和問訊者的主觀意識干擾,且精確性和實時程度都具有顯著的優越性,目前它已經成為了疲勞駕駛檢測的主要研究方向。

3.2 客觀檢測方法

客觀檢測法可以向下細分為三種主流檢測方向,即基于機動車行為特征的檢測方法、基于駕駛員生理特征的檢測方法以及基于駕駛員面部特征的檢測方法。其中,基于機動車行為特征的檢測包括駕駛途中車道偏移程度、車身搖擺情況以及車輛加速度變化情況等。其優點是可以容易地獲取車輛特征參數以進行檢測,但缺點是在車輛狀況異常時,司機一般已經處于重度疲勞狀態,不能及時預警。因此,該方法在實時駕駛疲勞檢測中并不適用。生理信號檢測法通常是基于駕駛員的生理信號,例如腦電信號等。雖然精度和及時性較高,但這種檢測方法需要配備大量傳感或者穿戴性的相關生理指標檢測設備。目前置辦相關設備成本較高,而且諸多設備可能對駕駛員帶來不便,難以大規模應用到實際。

相比以上兩種方法,基于駕駛員面部特征的檢測方法以攝像頭等無接觸下仍可起效的圖像傳感器獲取駕駛員面部狀態,運用機器視覺對駕駛員特征進行提取和分析。這種方法對成本要求低,且具有不可代替的實時性、無接觸性等優勢,適合以大規模應用為研究方向的疲勞駕駛檢測系統進行采用。

3.3 基于駕駛員面部特征的檢測方法

基于面部特征的檢測方法具體指的是利用攝像機等圖像傳感器采集的人臉視頻,利用計算機視覺中的人臉識別、面部特征點定位等技術,對司機面部的注視方向、眼睛張開程度(EAR)、眨眼頻率、單位時間內眼睛閉合程度(PERCLOS,在眼部特征中,PERCLOS值被認為是最有效的特征參數之一)、嘴巴開合度(MAR)等相關情況進行識別,應用算法將所采集特征開展駕駛員疲勞駕駛檢測。

通常,司機在睡意襲來前會有一個顯著的早期疲倦。經研究表明,形成疲勞的主要順序是從上至下發展。先從面部開始感到疲勞,然后向下發展到頸部和肩部,最后到腰部等。因此先從人臉入手進行疲勞駕駛檢測,有助于在疲勞發生的第一時間發現狀況并做出疲勞駕駛預警。人在疲憊的時候,會很難睜開雙眼,閉上的時間比平時要長,這是每個人在犯困的時候都會表現出來的。因此,對于眼睛疲勞特征的提取與分析,具有較高的普遍性和可靠性。與之比較,人在疲倦狀態下的打哈欠、困倦時的行為特點具有顯著的個性差異,且在不同的疲勞水平下,其結果差異也很大,從而影響了疲勞探測的精確度,因此,作為輔助判定條件降低漏檢率可以提高準確度。所以本篇文章明確了一種疲勞檢測方法,該方法結合三種檢測方法,通過檢測人臉,截取疲勞特征重要部分,對眼嘴狀態從簡單的開合分類改為正常特征和疲勞特征進行分類,最后結合閉眼百分比、持續閉眼時間和持續哈欠時間判定疲勞狀態,在提高檢測效率的同時兼顧檢測準確性。

4 基于多特征融合的疲勞檢測

4.1 dat庫

Dlib庫是一種以C++為基礎的開放源碼工具庫,里面有大量的機器學習算法和模型,自2002年以來,Davis King一直是Dlib的主要作者。Dlib為每個類和函數提供了完整的文檔說明。同時還提供了debug模式,打開debug模式后,開發者能夠調試代碼,查看變量和對象的值,快速定位錯誤點。不依賴第三方庫,無需安裝和配置,并且在windows,Mac OS , Linux系統中也能夠進行輕松駕馭。截止2022年5月12日,github上已有個11.1Kstart, 用戶量14K,貢獻者161人,可見受歡迎程度還是挺不錯的,人臉識別只是它其中的一個子集,與tensorflow、PyTorch相比,Dlib在圖像處理、分類、對比等領域有著廣泛的應用價值。Dlib庫中的dat模型庫可以檢測出被測對象的面部特征點,Dlib庫采用68點位置標志人臉重要部位,比如18-22點標志右眉毛,51-68標志嘴巴。

Dlib實現思路從人臉檢測,人臉對齊,人臉表示和人臉匹配5個部分來進行實現。并將其按照一定的次序排列,從而獲得人臉特征點坐標、人臉框和人臉角度等重要信息。其中以人臉對齊(Face Alignment)和人臉表示(Face Representation)最為關鍵。其一人臉對齊,在通過外部設備獲取人臉信息后,在待識別區域中初步提取人臉特征點,檢測是否存在人臉信息,若結果為是則以基本特征點為依據對目標進行歸一化處理,使人臉區域的尺度和角度與庫中模型相匹配,方便后續操作中的精確特征提取。人臉對齊的最終目的是在已知的人臉判別方框中提取人臉特征點,從而達到定位人臉的精準形狀。人臉對齊方法主要可以劃分為兩大類:基于優化的方法和基于回歸的方法?;趦灮姆椒ㄖ饕獊碜陨疃染W絡模型,比如卷積神經網絡(CNN)、深度自編碼(DAE)和受限玻爾茲曼機(RBM)等來建模人臉形狀和表觀的變化,進而獲得人臉表觀到形狀的非線性映射?;趦灮姆椒梢钥醋鍪菍W習一個回歸函數,以圖像輸入,輸出特征點的位置(人臉形狀),構造一個級聯回歸模型。其二人臉表示是指從人臉對齊中歸一化的人臉區域中進行特征提取從而得到特征向量。在Dlib庫中,可以將重要的68個特征點(landmark)進行特征向量化,再通過opencv對視頻流進行灰度化處理,并輸出這些特征點的坐標,可以得到68個特征點位置的坐標,根據這些數據,可以有效地檢測出人臉的表情狀態,從而節省計算費用,從而獲得更多的人體生理狀態和精神狀態等信息,及時對司機做出疲勞預警。

4.2 多特征的駕駛員疲勞綜合檢測方法

在當前的一些國際研究中,有很多的駕駛員疲勞綜合檢測方法,例如日本Canon KK基于腦電波這一高度精確的生理參數,設計了基于ZigBee的車載疲勞檢測方案。其發明的防瞌睡裝置在不降低疲勞駕駛識別率的前提下實現了駕駛員疲勞狀態的外置快捷檢測。但此類采用單一檢測指標的檢測方案,其檢測結果的可靠性往往基于腦電波等檢測成本較高的生理參數,否則容易因環境干擾而明顯降低[7]。而通過檢測駕駛員瞳孔直徑、頭部姿態、凝視方向等多個駕駛員面部特征信息并進行融合分析,不僅相較單一特征檢測方法控制了成本,還通過多特征綜合檢測進一步增強了檢測結果的可靠性。

為了進一步在控制成本的基礎上保證檢測準確性,本文考慮構建基于多特征的駕駛員疲勞綜合檢測方法,采用人臉圖像的圖像序列進行疲勞檢測。在此基礎上,利用大量的關鍵點進行人臉識別,從而有效地克服了因每個任務收斂速度的差異所帶來的優化問題,同時通過對人臉圖像的實時分析,分別計算出眼部、嘴部和頭部的疲勞指數。通過對上述三種特征進行加權,估計出融合特征值。最后,根據駕駛員的疲勞綜合評價模型,對融合特征量的幀數進行評價,從而得出駕駛員的疲勞水平。該方法能有效地提高駕駛員的疲勞識別率,并能有效地實現多種判定指標的融合,能夠顯著遏制傳統疲勞檢測方法中因佩戴眼鏡、口罩等干擾而導致的檢測準確度大幅下降。

5 疲勞檢測原理

5.1 眼部檢測原理

眼睛長時間閉合和在特定的時間內眨眼次數增多是人體眼部疲勞的重要表現。在基于眼部特性的識別中,最先對眼部疲勞進行了研究的學者是Walt Wirewille。他率先采用仿真比較實驗來探討了在光線下人的眼睛和疲勞之間的關系,結論顯示眼睛的閉合時間和疲勞的程度存在顯著的正相關關系[8]?;谶@個理論,卡內基梅隆研究所通過多次實驗,發現了一個可以用于對人體疲勞進行眼部度量的物理量PERCLOS,其被定義為一段時期內眼睛閉合時長所占的百分比。故可針對PERCLOS 原理,按照眼睛閉合程度設計劃分3種標準,依次為:P70是根據 PERCLOS的基本原則而設計的,P70是在瞳孔的面積被眼瞼覆蓋70%以上的情況下,即為判定閉上眼睛,計算眼睛閉合在一定時間內所占比值。P80是指當瞳孔被眼瞼覆蓋80%以上的時候,即判定為眼睛閉合,計算眼睛閉合在一定時間內的比值。EM是指在一定的時間里,當瞳孔的面積被眼瞼覆蓋50%以上的時候,計算眼睛閉合在一定時間內的比值。研究表明,P80是衡量人體疲勞程度的重要標準,遠優于其他標準,是研究人員常用的評價標準。在本文的操作過程中,首先根據dat模型庫六個眼睛的關鍵點對司機的眼睛進行定位;其次,雙眼閉合的時候,上、下眼皮的特征點間距減小,等于眼睛的長寬比發生變化[9],可向SVM分類器中輸入 HOG特征,從而對眼睛狀態進行識別,以便計算PERCLOS值;最后,將PERCLOS與所設定閾值進行比較,若大于所設定閾值,則判斷司機產生睡意。這種方法可以實現對人的眼睛狀況的快速檢測,并能實現對駕駛員的實時預警。P80標準的 PERCLOS數值由以下公式進行計算:

其中其中P為P80標準的PERCLOS數值;TC代表眼睛閉合時長;TA代表單位檢測時長。實際操作中由于多種因素影響難以得到具體時長,也可將時間比轉為對應幀數比進行操作。

5.2 嘴部檢測原理

人體嘴部疲勞檢測操作原理與人眼檢測近似。人在打哈欠的時候,嘴部變化幅度相較正常說話及飲食具有顯著增大。所以,嘴巴的張開程度是最直觀的指標。計算公式如下:

其中O為嘴部張合度;L代表嘴部上下高度值;W代表嘴部左右角寬度。

疲勞主要是以打哈欠為嘴部表現,通過分析了解到,人打一次哈欠,嘴部張大閉合活動的全過程時間大約6.5s??梢栽O置30s 內檢測到嘴部張合度大于閾值0.6且超過閾值時長比(也可在條件欠缺時采用幀數比)超過20%判定為疲勞并發出預警。

5.3 頭部檢測原理

傳統的頭部姿態算法主要是由臉部識別出關鍵點,然后采用平均頭部模型進行二維到三維的匹配,這就相當復雜了。為此,本文采用了頭部姿態估計(HPE)的方法。該方法首先通過參考 dat模型庫進行2D 人臉關鍵點檢測,然后通過3D形變模型(3DMM)模擬出相應的3D臉模型,通過3D人臉模型的匹配,求解3D點與2D點之間的轉換關系,接著利用 OpenCV中的求解 PnP 問題的函數 solvePnP(),得出了低頭歐拉角、頭部傾斜歐拉角 、轉頭歐拉角等參數,以此來判定頭部的狀態。

在頭部姿態的檢測中,當駕駛員出現疲勞時,頭部的情況也會發生相應的改變,駕駛員的疲勞狀態主要表現在頭部則會發生側傾,比如不停的點頭,或者是很久沒有變化姿勢等[10]。從而可以將點頭頻率、頭部姿態角、視線偏差等視為疲勞的特征。根據以上情況,可以根據駕駛員頭部為起始坐標建立三維空間直角坐標系,檢測駕駛員頭部偏側情況。通過測量駕駛員單位檢測時間頭部起始坐標和最大偏移坐標,以頭部起始坐標為無偏角度,計算最大偏移坐標與起始坐標的偏離程度以求出偏側角度,根據頭部偏移細分情況參照低頭歐拉角、頭部傾斜歐拉角、轉頭歐拉角等參數。當角度超過設定值時,可檢測得知駕駛員處于疲勞駕駛狀態。本文將低頭歐拉角|Pitch|≥20°或者頭部傾斜歐拉角|Roll|≥20°設立為頭部的疲勞特征。判定當駕駛員的頭部疲勞持續時間達到30%的時候,駕駛員處于疲勞狀態。

6 結語

針對疲勞特征參數單一、識別精度低的缺點,本文提出了一種以眼部疲勞特征為主,嘴部和頭部疲勞特征為輔的多面部特征融合的疲勞檢測方法,通過加入疲勞特征參數的提取,克服了單一疲勞因素判斷疲勞所帶來的低精度問題,并通過簡單的算法減少了在一些設備上的運行壓力,能夠更好地避免司機的疲勞駕駛事故,特別適用于外出工作的消費者、運輸服務行業、大型汽車制造商等,具有很好的推廣應用價值。

基金項目:2021年江蘇省大學生實踐創新訓練項目“大學生創新創業訓練計劃項目進度及經費預算表”(2021AX08006C)。

參考文獻:

[1]辛嵩,宋明達,王澤明,趙剛.針對特定駕駛員的疲勞駕駛檢測方法[J/OL].安全與環境學報:1-8[2022-12-25].DOI:10.13637/j.issn.1009-6094.2021.1527.

[2]Anber Salma,Alsaggaf Wafaa,Shalash Wafaa. A Hybrid Driver Fatigue and Distraction Detection Model Using AlexNet Based on Facial Features[J]. Electronics,2022,11(2).

[3]Zhang Tao,Chen Jichi,He Enqiu,Wang Hong. Sample-Entropy-Based Method for Real Driving Fatigue Detection with Multichannel Electroencephalogram[J]. Applied Sciences,2021,11(21).

[4]Bala,J.W.,Jong,K.A.,Huang,J.,Vafaie,H.,& Wechsler,H. (1996). Visual routine for eye detection using hybrid genetic architectures. Proceedings of 13th International Conference on Pattern Recognition,3,606-610 vol.3.

[5]Wang Zhongmin,Zhao Yupeng,He Yan,Zhang Jie. Phase lag index-based graph attention networks for detecting driving fatigue.[J]. The Review of scientific instruments,2021,92(9).

[6]Mamunur Rashid,Mahfuzah Mustafa,Norizam Sulaiman,Nor Rul Hasma Abdullah,Rosdiyana Samad. Random Subspace K-NN Based Ensemble Classifier for Driver Fatigue Detection Utilizing Selected EEG Channels[J]. TS,2021,38(5).

[7]張博,李鴻,李會超.基于多類別特征融合的疲勞檢測系統研究[J].現代電子技術,2019,42(01):152-156.DOI:10.16652/j.issn.1004-373x.2019.01.034.

[8] WIERWILLE W,KNIPLING R.Vehicle- based drowsydriver detection:current status and future prospects[C]//Proceedings of the IVHS America Conference,1994:245-256.

[9]劉超,蔡文華,陸玲.圖像閾值法分割綜述[J].電腦知識與技術,2015,11(01):140-142+145.DOI:10.14004/j.cnki.ckt.2015.0048.

[10]孟子諍,劉金明,劉厚軍.機車司機疲勞檢測系統研究與應用[J].中國鐵路,2013(05):105-108.DOI:10.19549/j.issn.1001-683x.2013.05.032.

猜你喜歡
檢測
QC 檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
“有理數的乘除法”檢測題
“有理數”檢測題
“角”檢測題
“幾何圖形”檢測題
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合