張 闖,朱天軍,2,李學(xué)民
(1.河北工程大學(xué) 機(jī)械與裝備工程學(xué)院,河北 邯鄲 056038;2.肇慶學(xué)院 機(jī)械與汽車(chē)工程學(xué)院,廣東 肇慶 526061;3.清華大學(xué) 蘇州汽車(chē)研究院,江蘇 蘇州 215200)
隨著全球經(jīng)濟(jì)的迅速發(fā)展,車(chē)輛數(shù)量與日俱增,造成了大量的人員傷亡。根據(jù)世界衛(wèi)生組織(WHO,world health organization)報(bào)道,交通事故是人類(lèi)死亡的十大原因之一[1],駕駛員嗜睡或疲勞駕駛成為了交通事故的誘因之一。根據(jù)美國(guó)國(guó)家高速公路交通安全管理局(NHTSA, national highway traffic safety administration)依賴(lài)于警方和醫(yī)院的報(bào)告,確定昏昏欲睡的駕駛員撞車(chē)事故的發(fā)生率,NHTSA估計(jì)在2017年涉及昏昏欲睡的司機(jī)多達(dá)9.1萬(wàn)人,導(dǎo)致5萬(wàn)多人受傷,近800人死亡。
駕駛員疲勞駕駛檢測(cè)在交通運(yùn)輸中占據(jù)著十分重要的位置,預(yù)防疲勞駕駛的安全性也受到國(guó)內(nèi)外研究學(xué)者的充分關(guān)注。對(duì)于疲勞駕駛檢測(cè)方法:基于駕駛員的生理特征信號(hào)進(jìn)行檢測(cè),例如基于腦電信號(hào)、心電信、眼電信號(hào)、呼吸信號(hào)檢測(cè)等;基于車(chē)輛行為特征檢測(cè),檢測(cè)車(chē)輛狀態(tài)和參數(shù),包括車(chē)道位置、方向盤(pán)轉(zhuǎn)角、行駛速度、加速度、制動(dòng)等[2-5];基于駕駛員面部特征檢測(cè),基于眼睛縱橫比(EAR),眼睛閉合百分比(PECLORS)、嘴巴高寬比(MAR)的值對(duì)駕駛員的狀態(tài)進(jìn)行判斷。
國(guó)外的研究現(xiàn)狀如下:
1)基于駕駛員生理特征的疲勞檢測(cè)。對(duì)于昏昏欲睡駕駛員生物電信號(hào)的早期研究主要依賴(lài)于腦電信號(hào)。Yeo等[6]建立了支持向量機(jī)(SVM, support vector machines)根據(jù)駕駛員的腦電信號(hào)(EEG)進(jìn)行建模,識(shí)別了95%的睡意駕駛狀態(tài)。Lin等[7-8]基于無(wú)線腦電圖的實(shí)時(shí)腦計(jì)算機(jī)接口系統(tǒng)和基于腦電圖的自組織模糊神經(jīng)系統(tǒng)來(lái)預(yù)測(cè)疲勞駕駛。Dong等人通過(guò)嵌入人腦的電極獲得腦電信號(hào)(EEG),并對(duì)這些信號(hào)進(jìn)行分析,以確定駕駛員是否處于疲勞狀態(tài)[9]。Sang-Joong Jung等[10]利用嵌入在方向盤(pán)上的心電傳感器來(lái)采集受試者的心電信號(hào),并利用HRV(心率變異性)時(shí)頻域指數(shù)來(lái)提高信號(hào)的準(zhǔn)確性。J.Leideng等[11]基于一種面向短周期心電信號(hào)的方法,提高了心電信號(hào)可識(shí)別性和頻率分辨率的預(yù)處理方案,能夠在僅5 s間隔的心電信號(hào)下有效識(shí)別疲勞。Hu等[12]根據(jù)眼電圖(EOG)中提取與眼瞼相關(guān)的參數(shù)作為數(shù)據(jù)輸入,并利用SVM將駕駛員的狀態(tài)分為清醒、疲勞和重度疲勞。研究者還結(jié)合EEG、ECG、EOG來(lái)提取相應(yīng)的特征參數(shù)來(lái)檢測(cè)疲勞駕駛。Ahn等[13]收集了EEG、ECG、EOG等多個(gè)模態(tài)和功能性近紅外光譜儀鏡數(shù)據(jù),對(duì)駕駛員心理的神經(jīng)生理相關(guān)性的狀態(tài)進(jìn)行識(shí)別。Wang等[14]結(jié)合EOG和EEG信號(hào)分析融合熵,檢測(cè)駕駛員的疲勞狀態(tài)。
2)基于車(chē)輛行為特征的疲勞檢測(cè)。當(dāng)駕駛員疲勞駕駛時(shí),車(chē)輛的行駛狀態(tài)也會(huì)發(fā)生相應(yīng)的變化,利用車(chē)道偏置量、方向盤(pán)轉(zhuǎn)向角度、車(chē)加速度等檢測(cè)疲勞。車(chē)道偏移量是指車(chē)輛行駛過(guò)程中偏離車(chē)道的位移量,主要是利用計(jì)算機(jī)視覺(jué)技術(shù)識(shí)別車(chē)道,以監(jiān)測(cè)車(chē)輛的行駛路徑。Dingus等[15]在車(chē)道偏離與PERCLOS兩者之間發(fā)現(xiàn)它們相關(guān)性,也可以作為駕駛疲勞檢測(cè)指標(biāo)之一。方向盤(pán)的轉(zhuǎn)向角大小是判斷疲勞駕駛的常用指標(biāo)之一,方向盤(pán)長(zhǎng)時(shí)間保持不變或有微小的變化、以及瞬間變化激增是判斷疲勞駕駛的重要參數(shù)。Takei 等[16]通過(guò)方向盤(pán)傳遞信號(hào)判斷駕駛員的疲勞程度,利用快速傅立葉變換和小波變換對(duì)方向盤(pán)轉(zhuǎn)角信號(hào)進(jìn)行預(yù)處理,提取相關(guān)特征。車(chē)輛的行駛速度以及加速度可以用車(chē)載傳感器傳遞出數(shù)據(jù),其速度快速下降的參數(shù)可以作為駕駛員疲勞狀態(tài)的判斷依據(jù)。D.Sandberg 等[17]通過(guò)測(cè)量汽車(chē)速度、車(chē)輛橫向位移量、方向盤(pán)轉(zhuǎn)向角度、氣動(dòng)角度,利用前饋神經(jīng)網(wǎng)絡(luò)對(duì)疲勞數(shù)據(jù)進(jìn)行分類(lèi),作為判斷疲勞駕駛的參數(shù)。
3)基于駕駛員面部特征的疲勞檢測(cè)。隨著計(jì)算機(jī)視覺(jué)和人工智能技術(shù)的快速發(fā)展,計(jì)算機(jī)計(jì)算能力有了很大的提高?;谏疃葘W(xué)習(xí)駕駛員面部特征融合的疲勞檢測(cè)算法日益受到人們的關(guān)注。X.Zhao等[18]基于卷積神經(jīng)網(wǎng)絡(luò)(CNN)的疲勞檢測(cè)算法,該算法通過(guò)訓(xùn)練第一網(wǎng)絡(luò)對(duì)人眼和非人眼進(jìn)行分類(lèi),利用第二網(wǎng)絡(luò)檢測(cè)人眼特征點(diǎn)的位置,根據(jù)特征點(diǎn)的位置計(jì)算開(kāi)眼度,并通過(guò)PERCLOS判斷駕駛員的疲勞狀態(tài)。F.Zhang 等[19]基于面部行為分析的檢測(cè)方法,結(jié)合Adaboost和相關(guān)濾波器(KCF,kernel correlation filter)對(duì)紅外采集設(shè)備采集到的面部圖像進(jìn)行面部檢測(cè)和跟蹤,利用級(jí)聯(lián)回歸定位特征點(diǎn)提取眼睛和嘴巴區(qū)域?qū)矸e神經(jīng)網(wǎng)絡(luò)(CNN)對(duì)眼睛和嘴巴的狀態(tài)進(jìn)行識(shí)別。為了提高駕駛員疲勞檢測(cè)的準(zhǔn)確性和及時(shí)性,Liu, Z等[20]提出了一種基于深度學(xué)習(xí)面部表情分析的疲勞檢測(cè)算法。利用訓(xùn)練好的模型檢測(cè)眼睛和嘴的狀態(tài),對(duì)24個(gè)面部特征進(jìn)行檢測(cè),利用模糊推理系統(tǒng)對(duì)駕駛員的疲勞狀態(tài)進(jìn)行推理。
國(guó)內(nèi)研究現(xiàn)狀如下:
1)基于駕駛員生理特征的疲勞檢測(cè)。張朋[21]等針對(duì)EEG信號(hào)的非平穩(wěn)性,設(shè)計(jì)的8層db4小波變換結(jié)構(gòu),有效分解出了δ、θ、α、β腦節(jié)律波。張春翠等[22]通過(guò)非線性復(fù)雜度參數(shù)對(duì)疲勞狀態(tài)下的頂葉、額葉、顳葉與認(rèn)知運(yùn)動(dòng)相關(guān)腦區(qū)的腦電信號(hào)進(jìn)行特征描述。李增勇等[23]對(duì)駕駛員疲勞駕駛過(guò)程中心率變異性(HRV)功率頻譜的變化,結(jié)合主觀評(píng)價(jià)分析駕駛員的心臟自主神經(jīng)功能狀態(tài)。王琳等[24]通過(guò)傳感器采集到汽車(chē)行駛過(guò)程中駕駛員的股二頭肌的生理信號(hào),經(jīng)快速獨(dú)立成分分析分離出肌電信號(hào)和心電信號(hào),綜合這3個(gè)特征參數(shù)能明顯區(qū)分駕駛員的正常和疲勞兩種狀態(tài)。
2)基于車(chē)輛行為特征檢測(cè)。蔡素賢等[25]基于CAN(controller area network)總線采集的車(chē)輛運(yùn)行狀態(tài)數(shù)據(jù),提取了18項(xiàng)與駕駛行為相關(guān)的特征,并采用隨機(jī)森林算法對(duì)疲勞駕駛進(jìn)行識(shí)別。屈肖蕾[26]分析了駕駛?cè)瞬煌跔顟B(tài)下的轉(zhuǎn)向操作和車(chē)輛狀態(tài)變量的波動(dòng)幅度、速度、頻度的變化特性,采用統(tǒng)計(jì)學(xué)方法對(duì)疲勞判別指標(biāo)的差異顯著性進(jìn)行了檢驗(yàn)。黃皓[27]使用駕駛模擬器搭建了模擬駕駛場(chǎng)景,并根據(jù)需要確定要獲取的數(shù)據(jù),包括方向盤(pán)轉(zhuǎn)向角、車(chē)輛橫擺角、車(chē)輛橫向位置等,通過(guò)SSS自主評(píng)估法,確定實(shí)驗(yàn)過(guò)程中駕駛員的狀態(tài),建立疲勞樣本的數(shù)據(jù)庫(kù)。
3)基于駕駛員面部特征檢測(cè)。廖明明等[28]對(duì)采集的駕駛員圖像進(jìn)行預(yù)處理,然后采用多任務(wù)級(jí)聯(lián)神經(jīng)網(wǎng)絡(luò)進(jìn)行面部檢測(cè)并提取眼部和嘴部特征;設(shè)計(jì)了眼部狀態(tài)識(shí)別網(wǎng)絡(luò)和嘴部狀態(tài)識(shí)別網(wǎng)絡(luò)分別對(duì)眼部和嘴部的狀態(tài)進(jìn)行識(shí)別。蘇錦瑾等[29]通過(guò)計(jì)算人眼長(zhǎng)寬比EAR閾值來(lái)檢測(cè)眨眼次數(shù),計(jì)算嘴部的歐式距離MAR判斷打哈欠次數(shù),判斷駕駛員睜閉眼、打哈欠和點(diǎn)頭次數(shù)是否超過(guò)單位時(shí)間閾值判斷其疲勞狀態(tài)。劉煒煌等[30]使用多任務(wù)級(jí)聯(lián)卷積網(wǎng)絡(luò)定位駕駛員的嘴部、左眼,從駕駛員嘴部、左眼圖像中提取靜態(tài)特征,結(jié)合CNN從嘴部、左眼光流圖中提取動(dòng)態(tài)特征進(jìn)行訓(xùn)練分類(lèi),使用靜態(tài)圖像進(jìn)行駕駛員疲勞檢測(cè)。周云鵬等[31]基于眼睛、嘴部的狀態(tài)、頭部的位置描述駕駛員狀態(tài),利用模糊系統(tǒng)推理得出駕駛員最終的疲勞狀態(tài)。
通過(guò)閱讀對(duì)國(guó)內(nèi)外與駕駛員疲勞檢測(cè)的相關(guān)文獻(xiàn)發(fā)現(xiàn),駕駛員疲勞檢測(cè)的方法主要有基于駕駛員生理特征、車(chē)輛行為特征、駕駛員面部特征等檢測(cè)方法。駕駛員生理特征檢測(cè)主要采用EEG、ECG、EOG、呼吸信號(hào)等作為疲勞判斷的參數(shù),其優(yōu)點(diǎn)準(zhǔn)確率較高,缺點(diǎn)成本較高、需要駕駛員穿戴復(fù)雜的檢測(cè)設(shè)備,影響駕駛員的駕駛狀態(tài)。車(chē)輛行為特征檢測(cè)主要采用車(chē)輛的運(yùn)行軌跡、方向盤(pán)轉(zhuǎn)角、車(chē)速等參數(shù)判斷駕駛員的疲勞狀態(tài),不能夠直觀地反映出駕駛員的駕駛狀態(tài),受外界影響因素較大。駕駛員面部特征檢測(cè)主要根據(jù)眨眼、打哈欠、點(diǎn)頭的頻率等來(lái)判斷駕駛員的駕駛狀態(tài),相對(duì)于以上兩種檢測(cè)方法,其能夠較為直觀地檢測(cè)到駕駛員的駕駛狀態(tài),不需要復(fù)雜的檢測(cè)設(shè)備,只需要一顆高清攝像頭就能夠判斷駕駛員的駕駛狀態(tài),但是基于駕駛員面部單獨(dú)特征檢測(cè)很難保證檢測(cè)效果的準(zhǔn)確率。給予以上的檢測(cè)方法,本文將采用基于駕駛員面部多特征融合的方法對(duì)駕駛員的駕駛狀態(tài)進(jìn)行判斷,將眼睛和嘴巴的特征進(jìn)行融合,提高了檢測(cè)的準(zhǔn)確率。
在本文中,基于深度學(xué)習(xí)和面部多特征融合來(lái)檢測(cè)駕駛員的睡意,考慮駕駛員個(gè)體的差異性,設(shè)置面部檢測(cè)模塊?;贛TCNN檢測(cè)駕駛員的面部區(qū)域,對(duì)檢測(cè)得到的面部區(qū)域再通過(guò)Dlib工具包的應(yīng)用程序進(jìn)行區(qū)域標(biāo)定,提取眼睛和嘴巴的感興趣區(qū)域(ROI, region of interest),通過(guò)計(jì)算獲得3個(gè)新的參數(shù),分別為:1)EAR眼睛的縱橫比,表示眼睛睜開(kāi)或閉合;2)PERCLOS眼睛閉合百分比,反映駕駛員的瞳孔被眼瞼覆蓋的面積;3)MAR嘴巴高寬比,判斷駕駛員是否打哈欠。
該系統(tǒng)的檢測(cè)過(guò)程包括3個(gè)部分:1)首先通過(guò)MTCNN對(duì)駕駛員的面部進(jìn)行識(shí)別,篩選出含有面部的圖像或刪除無(wú)法標(biāo)定的圖像;2)再利用Dlib工具包的68個(gè)點(diǎn)標(biāo)定駕駛員的面部、眼睛和嘴巴區(qū)域;3)最后通過(guò)計(jì)算得到的EAR、PERCLOS和MAR的值,按其不同的權(quán)值相加得到M值,累加M>0.605的幀數(shù)記為N,通過(guò)比較N的值來(lái)判斷駕駛員是否疲勞駕駛。
1.1.1 面部檢測(cè)
基于深度學(xué)習(xí)和面部多特征融合檢測(cè)駕駛員駕駛疲勞中,面部檢測(cè)是關(guān)鍵的一步。由于駕駛員頭部的姿勢(shì)不停的變化以及黑暗環(huán)境因素的影響,在實(shí)際的駕駛中能夠快速準(zhǔn)確的檢測(cè)出面部的全部特征有很大的難度。面部檢測(cè)時(shí),需要提取面部特征數(shù)目較多、且檢測(cè)速度較慢,面部檢測(cè)效率較低[32]。本文采用MTCNN深度級(jí)聯(lián)多任務(wù)框架利用面部檢測(cè)和對(duì)齊之間的相關(guān)性采用從粗到細(xì)的方式快速檢測(cè)面部和地標(biāo)位置[33],能夠快速且準(zhǔn)確的提取面部的全局特征。MTCNN的網(wǎng)絡(luò)結(jié)構(gòu)由3個(gè)級(jí)聯(lián)子網(wǎng)絡(luò)構(gòu)成,分別為P-Net(proposal network)、R-Net(refine network)和O-Net(output network)。P-Net網(wǎng)絡(luò)構(gòu)造一個(gè)全連接網(wǎng)絡(luò),通過(guò)全卷積網(wǎng)絡(luò)(FCN, fully convolutional networks)對(duì)圖像金字塔進(jìn)行初步的特征提取和標(biāo)定邊框;R-Net網(wǎng)絡(luò)構(gòu)造一個(gè)卷積神經(jīng)網(wǎng)絡(luò),相對(duì)于P-Net增加了一個(gè)全連接層,濾除大量效果比較差的候選框;O-Net網(wǎng)絡(luò)構(gòu)造一個(gè)較為復(fù)雜的卷積神經(jīng)網(wǎng)絡(luò),相對(duì)于R-Net多了一個(gè)卷積層,篩選出最優(yōu)的候選框,并對(duì)人的面部特征點(diǎn)進(jìn)行回歸,最終輸出5個(gè)面部特征點(diǎn)。
MTCNN對(duì)FDDB(face detection data set and benchmark)數(shù)據(jù)集進(jìn)行了檢測(cè),F(xiàn)DDB數(shù)據(jù)集中共有2 845張圖片,其中包含5 171張面部。MTCNN對(duì)2 845張圖片進(jìn)行檢測(cè),共檢測(cè)出4 986張面部,結(jié)果顯示MTCNN面部檢測(cè)的準(zhǔn)確率為96.4%,MTCNN算法充分利用任務(wù)之間潛在的聯(lián)系,將面部檢測(cè)和面部關(guān)鍵點(diǎn)檢測(cè)同時(shí)進(jìn)行,其實(shí)時(shí)檢測(cè)運(yùn)行速度為0.029 s,滿(mǎn)足實(shí)際疲勞檢測(cè)的要求。
1.1.2 提取ROI
感興趣區(qū)域(ROI)是對(duì)MTCNN識(shí)別出來(lái)的面部進(jìn)行區(qū)域提取,分別提取出來(lái)駕駛員的眼睛和嘴巴區(qū)域,只處理圖像面部提取出來(lái)的區(qū)域,對(duì)其他區(qū)域不做處理,加快了EAR、PERCLOS、MAR的計(jì)算速度,從而提高了檢測(cè)系統(tǒng)的判斷速度。ROI的作用:1)加快程序處理速度,程序處理只需要處理被提取的區(qū)域,其他區(qū)域直接跳過(guò);2)圖像匹配中,可以定義模板。利用ROI提取眼睛和嘴巴的區(qū)域,程序只對(duì)提取的區(qū)域進(jìn)行處理,加快圖像處理速度。
Dlib[34]是一個(gè)包含機(jī)器學(xué)習(xí)算法的開(kāi)源工具包,其可以創(chuàng)建很多復(fù)雜的機(jī)器學(xué)習(xí)方面的軟件來(lái)幫助解決實(shí)際問(wèn)題。在Dlib工具包中,由面部68個(gè)地標(biāo)對(duì)獲得的檢測(cè)面部標(biāo)志進(jìn)行對(duì)齊如圖1所示。人臉對(duì)齊就是在已經(jīng)檢測(cè)到的面部基礎(chǔ)上,自動(dòng)找到人臉上的眼睛鼻子和臉輪廓等標(biāo)志性特征位置。例如點(diǎn)37-40、43-46、49-68分別為左眼、右眼、嘴巴的基準(zhǔn)關(guān)鍵點(diǎn),獲取當(dāng)前檢測(cè)圖像的對(duì)應(yīng)位置的關(guān)鍵點(diǎn)??傊?,dlib的68個(gè)地標(biāo)標(biāo)記是基于左眼、右眼、嘴巴的相似變化,在不改變面部重點(diǎn)五官形狀的基礎(chǔ)上將人臉對(duì)齊到基準(zhǔn)人臉。
圖1 Dlib68個(gè)面部標(biāo)志
1.2.1 眼睛標(biāo)定
據(jù)統(tǒng)計(jì),正常人的每分鐘眨眼15次左右,每次眨眼的時(shí)間間隔為4 s左右,嗜睡時(shí)眨眼的頻率會(huì)加快。眨眼頻率是單位時(shí)間內(nèi)眨眼次數(shù),其計(jì)算公式為:
(1)
其中:NB為時(shí)間段T內(nèi)發(fā)生眨眼的次數(shù),由EAR來(lái)確定,NP為T(mén)時(shí)間段內(nèi)視頻的幀數(shù)?;贒lib工具包獲取的面部標(biāo)志,采用6個(gè)定位點(diǎn)對(duì)每只眼睛進(jìn)行標(biāo)定如圖2所示。可以根據(jù)眼睛的坐標(biāo)位置計(jì)算出EAR的值為:
圖2 眼睛標(biāo)定
(2)
其中:P2、P3、P5、P6關(guān)鍵點(diǎn)為縱坐標(biāo)的值,P1、P4關(guān)鍵點(diǎn)為橫坐標(biāo)的坐標(biāo)值。EAR值取左眼EAR值和右眼EAR值得的平均值。該方程式分子計(jì)算垂直眼睛標(biāo)志之間的距離,分母是計(jì)算水平眼睛標(biāo)志之間的距離,由于水平點(diǎn)只有一組,而垂直點(diǎn)有兩組,所以分母乘以2,以保證兩組特征點(diǎn)的權(quán)重相同,依靠眼睛地標(biāo)距離的比例來(lái)確定駕駛員是否眨眼。
卡內(nèi)基梅隆研究所經(jīng)過(guò)反復(fù)的實(shí)驗(yàn)與論證,提出了度量疲勞的物理量PERCLOS,并得到了NHTSA的認(rèn)可[35]。PERCLOS定義為一定時(shí)間內(nèi)眼睛的閉合度,是度量疲勞狀態(tài)的一種有效的方法,一定時(shí)間間隔內(nèi)眼睛閉合所占的時(shí)間比例超過(guò)15%時(shí)即認(rèn)為是疲勞狀態(tài)。由于眼睛的大小因人而異,眼睛的面積因受所在場(chǎng)景和頭部運(yùn)動(dòng)的影響成動(dòng)態(tài)變化的,眼睛的睜開(kāi)程度是相對(duì)于自身的最大睜開(kāi)狀態(tài)而言的,可以將時(shí)間轉(zhuǎn)換為視頻幀數(shù)進(jìn)行計(jì)算[36]。
目前,PERCLOS方法有3種判斷眼睛閉合的不同準(zhǔn)則,分別EM準(zhǔn)則、P70準(zhǔn)則、P80準(zhǔn)則。其具體含義如下:
EM準(zhǔn)則:瞳孔被眼瞼覆蓋超50%的面積,則認(rèn)為眼睛是閉合的;
P70準(zhǔn)則:瞳孔被眼瞼覆蓋超70%的面積,則認(rèn)為眼睛是閉合的;
P80準(zhǔn)則:瞳孔被眼瞼覆蓋超過(guò)80%的面積,則認(rèn)為眼睛是閉合的。
PERCLOS原理曲線如圖3所示。
圖3 PERCLOS原理圖
t0~t5為一個(gè)閉眼周期,t0~t1為完全睜眼到睜眼80%的時(shí)間,t1~t2為睜眼80%到睜眼20%的時(shí)間,t3~t4為睜眼20%到睜眼80%所需要的時(shí)間,t4~t5為睜眼80%到完全睜開(kāi)眼所需要的時(shí)間。
一周期的閉眼百分比為:
(3)
閉眼時(shí)長(zhǎng):
T(t0~t5)=t3-t2
(4)
同樣,可以推導(dǎo)出在一定時(shí)間內(nèi)的PERCLOS值及平均閉眼時(shí)長(zhǎng),設(shè)在一定時(shí)間T內(nèi)有n個(gè)周期,且k個(gè)閉眼周期內(nèi)眼睛覆蓋瞳孔的比例超過(guò)80%的時(shí)間為T(mén)k,當(dāng)k (5) 平均閉眼時(shí)長(zhǎng): (6) 1.2.2 嘴巴標(biāo)定 駕駛員嘴巴狀態(tài)通常有3種情況,分別為閉合、說(shuō)話(huà)和打哈欠,在疲勞狀態(tài)下,人會(huì)頻繁地打哈欠。提取面部的嘴部區(qū)域的關(guān)鍵點(diǎn)類(lèi)似于眼部疲勞特征的提取,面部嘴部區(qū)域的關(guān)鍵點(diǎn)分布如圖4所示。 圖4 嘴巴標(biāo)定 嘴巴的高度H和寬度W計(jì)算為: (7) H與M的比值MAR為: (8) 其中:xmax、xmin分別為第54個(gè)和第48個(gè)面部關(guān)鍵點(diǎn)的橫坐標(biāo),ymax為第56個(gè)、第58個(gè)關(guān)鍵點(diǎn)縱坐標(biāo)的平均值,ymin為第50個(gè),第52個(gè)關(guān)鍵點(diǎn)縱坐標(biāo)的平均值。 打哈欠的頻率fyawn為: (9) NY為T(mén)時(shí)間段內(nèi)打哈欠的次數(shù),NT為T(mén)時(shí)間段內(nèi)視頻的幀數(shù)。 1.2.3 系統(tǒng)檢測(cè)流程 通過(guò)攝像頭采集駕駛員駕駛車(chē)輛時(shí)的實(shí)時(shí)圖像,通過(guò)MTCNN篩選出含有面部的圖像,對(duì)含有的面部的圖像提取眼睛和嘴巴的ROI區(qū)域,并計(jì)算EAR、PERCLOS和MAR的值。SVM本質(zhì)模型是特征空間中最大化間隔的線性分類(lèi)器,是一種而分類(lèi)器模型。通過(guò)SVM對(duì)EAR、MAR、PERCLOS值進(jìn)行分類(lèi),將其分離為EAR大于0.20、MAR大于0.6、PERCLOS大于0.8的點(diǎn)和EAR小于等于0.20、MAR小于等于0.6、PERCLOS小于等于0.8的點(diǎn),將這些大于各自其值的點(diǎn)進(jìn)行篩選加快EAR、PERCLOS、MAR值得計(jì)算速度,提高檢測(cè)效率。 圖5 系統(tǒng)工作流程圖 在本節(jié)中,對(duì)實(shí)驗(yàn)環(huán)境的搭建進(jìn)行介紹,依據(jù)實(shí)驗(yàn)得出EAR、PERCLOS、MAR和M的曲線圖,對(duì)駕駛員清醒狀態(tài)下和疲勞狀態(tài)下的曲線圖進(jìn)行對(duì)比。 基于Ubuntu18.04系統(tǒng)在Visual Studio Code中對(duì)Python語(yǔ)言進(jìn)行實(shí)驗(yàn)環(huán)境搭建及配置,計(jì)算機(jī)顯卡采用NVIDIA GeForce GTX1650、內(nèi)存16GB DDR4和安裝模塊的相應(yīng)版本號(hào)如表1所示。 表1 實(shí)驗(yàn)環(huán)境配置 本文通過(guò)實(shí)車(chē)進(jìn)行采集檢測(cè)圖像樣本,對(duì)檢測(cè)系統(tǒng)進(jìn)行驗(yàn)證。圖像采集途徑例如公交車(chē)、短途貨車(chē)、長(zhǎng)途貨車(chē)等司機(jī)在不同環(huán)境及不同時(shí)間段下的駕駛狀況。通過(guò)采樣數(shù)據(jù)顯示,司機(jī)在長(zhǎng)時(shí)間駕駛車(chē)輛以及凌晨左右容易犯困,對(duì)疲勞、嚴(yán)重疲勞區(qū)段進(jìn)行不同的標(biāo)記,為檢測(cè)系統(tǒng)實(shí)際檢測(cè)結(jié)果作對(duì)比分析。采集樣本如圖6所示。 圖6 采集樣本 2.3.1 EAR 一次完整的閉眼過(guò)程的EAR曲線如圖7所示,橫坐標(biāo)為視頻的幀數(shù),縱坐標(biāo)分別為EAR值,設(shè)置EAR的閾值為0.2,通過(guò)支持SVM分類(lèi)器將EAR<0.2的值進(jìn)行權(quán)值計(jì)算,權(quán)值比重為0.2。EAR值取左眼的EAR值(leftEAR)和右眼的EAR值(rightEAR)的平均值,模擬了一組駕駛員眨眼或閉眼計(jì)算EAR的曲線如圖8所示。 圖7 閉眼過(guò)程的EAR曲線圖 圖8 EAR曲線圖 從圖8中可以看出有兩次眨眼和三次閉眼過(guò)程,與模式過(guò)程中眨眼和閉眼的次數(shù)相同,分析結(jié)果如表2所示。從模擬駕駛員眨眼或閉眼的過(guò)程得到的EAR曲線圖,從中得到的結(jié)論:系統(tǒng)在檢測(cè)駕駛員眨眼或閉眼過(guò)程中,幾乎不存在漏檢或者誤檢,檢測(cè)的實(shí)時(shí)性和計(jì)算的準(zhǔn)確度達(dá)到了較高的水平。 表2 EAR曲線分析結(jié)果 2.3.2 PERCLOS 在圖8的EAR值曲線圖的基礎(chǔ)上計(jì)算得到閉眼時(shí)刻的PERCLOS值曲線如圖9所示,橫坐標(biāo)為視頻的幀數(shù),縱坐標(biāo)為眼睛閉合的百分比,虛線代表的值為0.8。PERCLOS的計(jì)算過(guò)程是依次取EAR值的每一幀,每連續(xù)五幀循環(huán)一次計(jì)算,步長(zhǎng)為1得出PERCLOS值。 圖9 PERCLOS曲線圖 依據(jù)P80準(zhǔn)則,PERCLOS大于或等于0.8時(shí),眼瞼覆蓋眼球的面積超過(guò)了80%,判定為閉眼狀態(tài)。通過(guò)支持SVM分類(lèi)器將PERCLOS大于或等于0.8的值進(jìn)行權(quán)值計(jì)算,權(quán)值比重為0.7。 嘴部狀態(tài)的檢測(cè)如圖10所示,橫坐標(biāo)為視頻的幀數(shù),縱坐標(biāo)為MAR值。圖10(a)為駕駛員嘴巴閉合狀態(tài),MAR值在0.350到0.375之間;圖10(b)為駕駛員嘴巴說(shuō)話(huà)狀態(tài),MAR值在0.375到0.60之間;圖10(c)為駕駛員嘴巴打哈欠狀態(tài),MAR值在0.60以上。通過(guò)支持SVM分類(lèi)器將MAR大于0.60的值進(jìn)行權(quán)值計(jì)算,權(quán)值比重為0.1。 圖10 MAR曲線圖 通過(guò)在閉眼時(shí)刻得到的EAR值、PERCLOS值和MAR值分別按0.2、0.7和0.1的比重進(jìn)行權(quán)值計(jì)算得到參數(shù)M的曲線圖如圖11和圖12所示橫坐標(biāo)為視頻的幀數(shù),縱坐標(biāo)分別為EAR、MAR、PERCLOS和M的值。圖11為未打哈欠狀態(tài)下的曲線圖,圖12為打哈欠狀態(tài)下的曲線圖。圖12中右下角圖中的虛線代表的值為0.605,作為判斷駕駛員是否疲勞駕駛的依據(jù)。 圖11 未打哈欠狀態(tài)下的曲線圖 圖12 打哈欠狀態(tài)下的曲線圖 對(duì)圖11和圖12分析,駕駛員未打哈欠的情況下M大于0.605值的幀數(shù)相對(duì)較少;駕駛員在打哈欠的情況下往往伴隨著長(zhǎng)時(shí)間閉眼,使M大于0.605的幀數(shù)相對(duì)增加。駕駛員開(kāi)始打哈欠時(shí)一般境況下是身體出現(xiàn)疲勞出現(xiàn)犯困的情況,從圖13可以看出駕駛員長(zhǎng)時(shí)間打哈欠時(shí)M大于0.605值的幀數(shù)在25~50之間,可以給予駕駛員一次疲勞警告。 為了驗(yàn)證本文提出的駕駛員疲勞狀態(tài)檢測(cè)方法的有效性,通過(guò)兩段視頻進(jìn)行駕駛員疲勞狀態(tài)檢測(cè)正確性評(píng)估。第一段為疲勞狀態(tài)下的駕駛員疲勞檢測(cè)結(jié)果,如圖13所示,第二段為清醒狀態(tài)下的駕駛員疲勞狀態(tài)檢測(cè)結(jié)果,如圖14所示。分別得到EAR、MAR、PERCLOS和M的曲線圖,橫坐標(biāo)為視頻的幀數(shù),縱坐標(biāo)分別為EAR、PERCLOS、MAR和M的值。通過(guò)M曲線可知,M大于0.605為紅色曲線部分。通過(guò)多次實(shí)驗(yàn)驗(yàn)證得出N大于25或小于等于50認(rèn)為是疲勞狀態(tài),N大于50為重度疲勞狀態(tài),N為M大于0.605依次累加的幀數(shù)。 圖13 疲勞狀態(tài)下的駕駛員疲勞檢測(cè)結(jié)果 圖14 清醒狀態(tài)下的駕駛員疲勞檢測(cè)結(jié)果 圖13的M曲線中有5段疲勞狀態(tài)曲線和2段重度疲勞曲線,其余部分為清醒狀態(tài)下的曲線,分析結(jié)果如表3所示。圖14中M曲線的部分沒(méi)有出現(xiàn)N大于25的部分,則表明沒(méi)有出現(xiàn)疲勞狀態(tài),與檢測(cè)樣本保持一致。通過(guò)圖13和圖14中M曲線得出的結(jié)果以及大量的實(shí)車(chē)測(cè)試結(jié)果顯示,采用DirCare系統(tǒng)[37]的一種新的面部區(qū)域檢測(cè)方法對(duì)同樣的實(shí)驗(yàn)數(shù)據(jù)進(jìn)行測(cè)試,計(jì)算得出的準(zhǔn)確率、靈敏度的均值為92.3%和89.6%,本文采用的檢測(cè)系統(tǒng)計(jì)算得出的準(zhǔn)確率、靈敏度為93.1%和90.2%。通過(guò)比較可知,本文采用的檢測(cè)系統(tǒng)無(wú)論是檢測(cè)的準(zhǔn)確率還是檢測(cè)的靈敏度都有明顯的優(yōu)勢(shì)。本文采用的檢測(cè)系統(tǒng)沒(méi)有出現(xiàn)誤檢情況,滿(mǎn)足實(shí)際檢測(cè)要求。 表3 駕駛員狀態(tài)分析 基于深度學(xué)習(xí)和面部多特征融合的疲勞檢測(cè)研究,得出以下結(jié)論: 1)對(duì)MTCNN進(jìn)行了面部檢測(cè)測(cè)試,該網(wǎng)絡(luò)在面部檢測(cè)的準(zhǔn)確率達(dá)到了96.4%,面部檢測(cè)速度為0.029 s,滿(mǎn)足實(shí)際要求。 2)為了提高程序的計(jì)算速度以及實(shí)時(shí)性,將各個(gè)參數(shù)按不同權(quán)重進(jìn)行融合計(jì)算,即保證了檢測(cè)的準(zhǔn)確度和避免漏檢或誤檢情況,也防止了視頻卡幀或丟幀的現(xiàn)象。 3)本文提出了新的參數(shù)M和N,依據(jù)N值的大小來(lái)判斷駕駛員的疲勞狀態(tài)。該檢測(cè)系統(tǒng)的準(zhǔn)確率達(dá)到了93.1%,靈敏度達(dá)到了90.2%,滿(mǎn)足了實(shí)際情況下的疲勞檢測(cè)系統(tǒng)的要求。2 實(shí)驗(yàn)數(shù)據(jù)及結(jié)果
2.1 實(shí)驗(yàn)環(huán)境配置
2.2 實(shí)驗(yàn)對(duì)象及樣本
2.3 眼睛檢測(cè)
2.4 嘴巴檢測(cè)
2.5 權(quán)值計(jì)算
2.6 實(shí)驗(yàn)結(jié)果
3 結(jié)束語(yǔ)