姜思羽,吳 斌,邱少健,羊梅君
(華南理工大學廣州學院,510800廣州)
隨著汽車數量的不斷增加,一方面給人們的生活帶來了便利,同時也引發了許多問題,汽車駕駛安全成為世界性的問題.疲勞駕駛已經成為交通事故的嚴重隱患,在這樣嚴峻的交通事故形勢下,人們越來越多地關注汽車的安全問題.2000年,美國Ellison Research Labs實驗室利用檢測車道標志線的方式來判定駕駛員是否疲勞[1].2002年日本電腦便民公司通過安裝在方向盤上的探測裝置來獲取手握方向盤時的脈搏跳動信息,再利用軟件進行實時分析判斷駕駛員是否疲勞[2].美國研制的駕駛員疲勞檢測系統通過獲取駕駛員煩躁不安的情緒活動、眨眼的頻率和眼睛閉合的持續時間等疲勞數據,來判斷駕駛員是否在打瞌睡或已睡著[3].在國內,2000年,上海交通大學通過傳感器檢測駕駛員駕駛時方向盤、踏板等運動參數來提高駕駛員的行車安全,發現方向盤的操縱情況與駕駛員的疲勞程度之間具有一定的關聯性[4].2003年,吉林大學交通學院的王榮本等[5]研究用眼睛和嘴部狀態來檢測駕駛疲勞.2006年,同濟大學道路與交通工程教育部重點試驗室通過記錄瞳孔直徑變化來進行疲勞駕駛檢測.
上述研究主要存在接觸式檢測方式對駕駛員產生一定的影響,檢測準確率不高等問題.針對當前研究存在的問題,本文提出了一種非接觸式的駕駛員疲勞駕駛檢測方法,通過對駕駛員面部圖像的檢測可以判斷駕駛員是否處于疲勞狀態,若系統認定駕駛員已經疲勞則會以語音的方式提醒駕駛員,有效地減少交通事故,提高交通的安全性[1].
駕駛員疲勞駕駛檢測技術軟件算法的基本思路是:監測駕駛員眼睛的活動狀態,如果駕駛員的眼睛連續閉合時間超過2 s以上,則根據PROCELS方法,可以判定駕駛員已經出現疲勞癥狀,此時必須對駕駛員做出提醒.PERCLOS方法是1994年卡內基梅隆研究所提出的,指的是根據單位時間眼睛閉合時間所占的比例來判斷是否出現疲勞,在駕駛員疲勞檢測領域具有良好的應用基礎[6].
軟件算法的設計流程如圖1所示[7].

圖1 軟件的設計流程
1)采集訓練樣本圖像,將人眼閉合的圖像作為訓練正樣本,而將非疲勞時的人臉圖像作為訓練負樣本,構成圖像訓練樣本集,每幅圖像均有256個灰度級,系統訓練的正樣本數為12 500個,負樣本數為21 500個,神經網絡的層數為3層.
2)將圖像轉化為一維向量,并定義“瞌睡狀”為1類眼部特征,“非瞌睡狀”為-1類眼部特征.因此第i個樣本圖像的一維向量xi可以表達為

式中:xij表示1類第i個樣本第j個像素灰度值;i= 1,2,…,n為1類眼部樣本;m為每個樣本圖像所取像素,m=u×v,u和v分別為樣本圖像的列和行像素數.
3)訓練樣本特征值及特征向量計算.計算疲勞時樣本的均值,稱為疲勞眼部平均圖,計算方法如式(1)所示:

對上述訓練樣本進行規范化后可以表達為

由訓練樣本組成的疲勞眼部規范化向量

疲勞眼部協方差矩陣為

利用式(2)求取Q的特征值λ1及其特征向量,并將其從大到小重新排列后生成特征向量

式中λ1≥λ2≥λ3≥….
4)對訓練樣本進行線性變換后投影到特征空間.由于較大的特征值對應的特征向量包含了較多的人臉眼部特征信息,因此可以選取前s個較大的特征值所對應的特征向量構成的向量空間,就可以近似地表示人臉眼部圖像的主要信息[8].
對于圖像庫中的n個圖像

都可以向此特征空間投影,得到投影向量


因此,可以直接用ˉv來代表1類人臉眼部特征.在建立了人臉眼部特征規范化向量后,就可以依次作為識別駕駛員是否疲勞而呈現瞌睡狀的依據.
1.2.1 圖像增強
利用脈沖耦合神經網絡(pulse coupled neural network,PCNN)法對攝像頭采集到的圖像進行增強,PCNN與傳統的神經網絡有著根本的不同,其能從復雜背景下提取有效信息,具有同步脈沖發放和全局耦合等特性,更符合人類視覺神經系統的特征.由于硬限幅函數的作用,標準的PCNN模型輸出是一個二值圖像幀.為了使所建立的PCNN輸出映射函數能更有效地進行圖像整體對比度增強的處理,在人眼視覺特征的基礎上,采用類對數映射函數,將圖像的亮度強度映射到一個合適的視覺范圍[9].PCNN輸出映射函數為

式中:Imax是原圖像中最亮像素點的強度值;Δt為采樣時間周期,亦即迭代時間步長,τθ為時間常數,Δt(n-1)/τθ表示PCNN中動態閾值函數在(n-1)點火時刻的衰減步長;Yij(n)是神經元Nij在n點火時刻的感知輸出,即為增強圖像的亮度強度[10].
1.2.2 彩色空間轉換
將增強后的圖像進行彩色空間轉換,即將增強后的數字圖像從RGB彩色空間轉換至HSV彩色空間,轉換后的亮度V、飽和度S和色調H分別表示為

在計算過程中,如果出現H<0,則取H'≤H+ 360°,H'為H的實際取值.
1.2.3 監測駕駛員眼部區域
首先要確定人臉區域,在采集到的人臉圖像中,按照像素坐標從左到右、從上到下掃描檢測像素的景物色調,將人臉區域與背景區分開來.在人臉膚色調集合中,以最接近人臉膚色的色調值所對應的像素點作為人臉中心點,經過人臉區域搜索結果,可以確定(ik,jk)為人臉中心位置坐標,i表示像素的列坐標,j表示像素的行坐標,腳標表示列數和行數.以人臉中心點為基點向上擴張u行像素和向兩側各擴張v/2列像素,即可獲取u×v的眼部跟蹤區域[11].
采用一階預測算法作為人臉眼部區域跟蹤的方法.根據系統跟蹤到的人臉中心坐標(ik,jk),依次向上擴張u行像素和向兩側各擴張v/2列像素,截取u×v的眼部區域圖像作為帶入測試樣本.按照訓練樣本同樣的方法對測試樣本進行圖像特征值及其特征向量的計算.將測試樣本投影到特征子空間,當前u×v的眼部區域圖像就對應于特征子空間中的一個點[12].
把投影到特征子空間中的u×v的眼部區域測試圖像與訓練圖像逐一進行比較,確定待識別的樣本所屬類別.采用距離分類函數進行分類,判斷駕駛員的狀態是否疲勞,如果判定駕駛員已經疲勞,則通過語音報警裝置發出報警.在軟件測試過程中,圖2為第19幀圖像,人眼處于正常睜開狀態,可以看到軟件很好地識別出人臉和人眼區域.圖3為測試的第27幀圖像,被測試者眼睛閉合,此時軟件能夠檢測到人臉區域,但檢測不到人眼區域,判定駕駛員處于疲勞狀態.

圖2 正常狀態檢測效果

圖3 疲勞狀態檢測效果
疲勞駕駛裝置的硬件主要由攝像頭、中央處理器以及語音報警裝置組成.由攝像頭采集駕駛員的面部頭像,輸入至中央處理器進行處理,若判斷駕駛員已經出現疲勞,則由報警裝置發出報警,提醒駕駛員注意行車安全.圖4為駕駛員疲勞檢測裝置硬件框架圖,其中CCS為DSP系列芯片的編譯開發環境,JTAG仿真器主要作用是將程序燒入至DSP電路板中.

圖4 疲勞駕駛檢測裝置硬件框架圖
駕駛員疲勞駕駛檢測裝置的處理流程是:首先由攝像頭采集駕駛員的面部圖像,攝像頭輸出的數據流格式為PAL制式,數據流經過視頻解碼芯片SAA7113H的解碼,得到標準的BT.656并行數據.再將數據輸送到DSP芯片當中,提取其中的YCbCr數據并存儲在內部的緩沖器中,然后將數據傳輸到外接的SDRAM中,在DSP處理數據之前,SDRAM中的數據會被調入到 DSP的RAM中[13].
1)圖像采集裝置——攝像頭.要求攝像頭能夠清晰、準確地采集駕駛員的面部圖像,并且外部對光照條件的適應性很好,不出現曝光等現象.另外,國家規定紅外線不能一直對著人眼照射,所以攝像頭應該是不帶紅外,但是要在夜間也能夠采集到清晰的人臉圖像,攝像頭采用12 V供電.
為了連接牢固、可靠,攝像頭與DSP主機之間采用4端口的工業端子相連,分別是電源、接地、視頻信號、接地.
2)中央處理器:本次采用的中央處理器芯片為DSP系列的TMS320DM642,其顯著特點是運算效率高、處理速度快.
3)語音報警裝置:當檢測到駕駛員疲勞時通過語音報警的方式提醒駕駛員注意行車安全.
疲勞駕駛監測裝置由汽車點煙器提供12 V電壓.攝像頭工作電壓為12 V,而TMS320DM642芯片的工作電壓需要5 V、3.3 V以及1.4 V等,控制語音報警芯片的單片機STC12LE5A60S2工作電壓也為3.3 V,所以控制器需要電源管理系統.圖5為12 V到5 V電壓轉換電路,圖6和圖7分別為5 V、3.3 V和1.4 V的電壓轉換電路[14].

圖5 汽車點煙器12 V到5 V電壓轉換電路

圖6 5 V到3.3 V電壓轉換電路

圖7 5 V到1.4 V電壓轉換電路
2.3.1 外部存儲器SDRAM
因為系統需要不斷地實時處理大量的圖片,而DSP的片內存儲容量往往不夠,本次采用兩片MT48LC4M32B2-7作為 DSP芯片的外部SDRAM,TMS320DM642通過 EMIF(external memory interface)接口來訪問和管理外部SDRAM,并且選擇合適的讀寫策略來降低SDRAM的功耗,MT48LC4M32B2-7的工作電壓亦為3.3 V[15].
2.3.2 判定結果的輸出
TMS320DM642通過 GPIO口與單片機STC12LE5A60S2連接,當DSP判定駕駛員已經出現疲勞時,則通過GPIO口給STC12LE5A60S2單片機的INT0和INT1外部中斷,告知駕駛員已經疲勞,再由STC12LE5A60S2單片機控制語音芯片發出報警,本次選用的報警芯片是TH040,其工作原理是向芯片發送不同的脈沖數,語音芯片會播報不同的聲音片段,工作電壓為3.3 V,其電路如圖8所示.

圖8 語音芯片TH040外部電路
為了使系統能夠適合不同的人群,在電路上設計了一個旋轉電位器,可以旋轉至8個檔位,代表8個不同的靈敏度,檢測駕駛員疲勞狀態的靈敏度依次從低到高[10].
2.3.3 電路板的PCB布線
由于電路板上要走高頻信號線,所以抗干擾設計是電路板設計的一個重點,注意信號線之間的最小間隙和信號線的走向,本次設計布線分為6層.
由于訓練樣本采用的是一定規格大小的正負樣本,因此要求攝像頭采集的人臉大小與訓練樣本基本一致,攝像頭鏡頭的焦距決定了人臉與攝像頭之間的距離,根據駕駛員實際的座位情況以及疲勞駕駛監測裝置攝像頭的安裝位置,合理選擇攝像頭鏡頭的焦距,本次系統選擇焦距為8 mm的鏡頭,經測試其有效距離為30~150 cm,可以很好地滿足實際使用情況.并且為了避免紅外線對人眼的直接照射,選擇不帶紅外但是具有夜視效果的攝像頭[16].
經過加工、測試將電路板制作出來之后,分別向TMS320DM642和STC12LE5A60S2芯片中燒入程序,置于實車上,由汽車點煙器提供12 V電源,將攝像頭安裝在汽車的太陽擋板上,進行測試.實驗結果表明,所設計的系統可以很好地滿足實際使用條件,在白天以及夜間均能對駕駛員的疲勞狀態做出正確的反應,誤報率低于1%.圖9為樣機實車測試圖.

圖9 樣機實車測試
1)對大量正負樣本進行訓練,提取特征,可以很好地表達人臉和人眼,通過得到的向量空間判定測試圖像準確率高.
2)脈沖耦合神經網絡符合人類視覺特征,通過圖像增強、彩色空間轉換以及眼部區域跟蹤等措施,有利于圖像的處理與識別.
3)TMS320DM642硬件平臺的運算和處理能力滿足系統的要求,攝像頭的安裝位置和焦距的選擇對測試效果影響顯著,本系統當鏡頭焦距為8 mm時效果最好.
[1]LEE J D,MCGEEHEE D V,BROWN T L,et al. Collision warning timing,driver distraction,and driver response to immient rear-end collision in a high-fidelity driving simulator[J].Human Factors,2002,44(2): 314-334.
[2]YANG M H,KRIEGMAN D,AHUJA N.Detecting faces in images:A survey[J].Transactions on Pattern Analysis and Machine Intelligence,2002,24(1):34-58.
[3]WANG Qiong,YANG Jingyu,REN Mingwu,et al. Driver fatigue detection[C]//A Survey Proceedings of the 6th World Congress on Intelligent Control and Automation.Dalian,China:[s.n.],2006:8587-8591.
[4]石堅,吳遠鵬,卓斌,等.汽車駕駛員主動安全性因素的辨識與分析[J].上海交通大學學報,2000(4): 381-385.
[5]王榮本,郭克友.適用駕駛員疲勞狀態監測的人眼定位方法研究[J].公路交通科技,2003,20(5):111.
[6] Socity of Automotive Engineers.Intelligent vehicle initiative technology and navigation systems[M]. Virginia:SocietyofAutomotiveEngineers,2001: 101-107.
[7]FREUND Y,SCHAPIRE R.A Short Introduction to Boosting[J].Journal of Japanese Society for Artificial Intelligence,1999,14(5):771-780.
[8]張秀彬,應俊豪.汽車智能化技術原理[M].上海:上海交通大學出版社,2011:112-120.
[9]張志.全景視覺大圖像的分割及圖像增強[D].哈爾濱:哈爾濱工程大學,2009.
[10]石美紅,李永剛,張軍英,等.一種新的彩色圖像增強方法[J].計算機應用,2004,24(10):69-74.
[11]LIENHART R,KURANOV A,PISAREVSKY V. Empirical analysis of detection cascades of boosted classifiers for rapid object detection[C]//Proceedings of the 25th German pattern recognition Symposium. Heideburg:Springer,2003:297-304.
[12]JIANG Libiao,WANG Huirong,GAO Shengying,et al. Research of the automotive driver fatigue driving early warning system[C]//2010 3rd International Conference on Computational Intelligence and Industrial Application.Hefei:Intelligent Information Technology Application Association,2010:200-203.
[13]王鵬程.汽車駕駛員疲勞駕駛預警裝置設計及實驗研究[D].威海:哈爾濱工業大學(威海),2011.
[14]Texas Instrument.TMS320DM642 Evaluation Module Technical Reference[S].Dallas:Texas Instrument,2003:27-31.
[15]Texas Instrument.TMS320DM642 Video/Imaging Fixed-Point DigitalSignalProcessor[S].Dallas:Texas Instrument Inc,2002:78-84.
[16]MAY J F,BALDWIN C L.Driver fatigue:the importance of identifying causal factors of fatigue when considering detection and countermeasure technologies[J]. Transportation Research,2009(12):218-224.