摘 要: 司機疲勞駕駛容易引起嚴重的交通事故,疲勞狀態(tài)檢測系統(tǒng)的研究成為計算機應用研究的重要領域。為了滿足疲勞狀態(tài)檢測系統(tǒng)實時性要求,選擇實時性較好的Adaboost算法來識別人眼,采用單位時間內眼睛閉合時間所占的百分率來判斷疲勞狀態(tài),應用該算法后進行疲勞駕駛訓練和識別研究。選擇DSP移植方案并將疲勞狀態(tài)檢測算法移植到DSP中。經(jīng)過實時檢測實現(xiàn)的系統(tǒng)基本能滿足實時檢測疲勞駕駛的要求。
關鍵詞: 疲勞狀態(tài);實時檢測;Adaboost
為了減少由于司機疲勞而導致的交通事故,國內外的許多研究工作者都在研究司機疲勞狀態(tài)檢測系統(tǒng)。例如美國卡內基梅隆大學的Richard Grace領導的Copilot工程開發(fā)的疲勞檢測裝置,浙江大學的駕駛防磕睡裝置,北京航天航空大學的眼動測量系統(tǒng)。目前,疲勞駕駛的檢測技術主要有兩大類,一類是采集腦電信號的生理參數(shù)EEG來檢測[1],EEG生理參數(shù)能準確地反映出人的疲勞狀態(tài),但檢測設備較復雜昂貴,應用推廣難度較大;另一類是對采集的面部圖像信息進行識別[2]。圖像信息檢測中,有的利用較昂貴的紅外攝像機檢測信號[3],有的利用普通攝像機進行檢測[4]。普通攝影機安裝和使用較方便,利于推廣應用,但對圖像處理技術要求較高。由于疲勞狀態(tài)實時檢測系統(tǒng)要求很高的實時性和可靠性,目前為止,還沒有出現(xiàn)滿足實際需要的非強迫性檢測系統(tǒng)。
表1中列出了幾種疲勞狀態(tài)檢測的方法,并對性能進行了比較。通過比較可以發(fā)現(xiàn),這幾種方法中基于身體反應的檢測方法性能較好。PERCLOS(Percentage of Eyelid Closure Time)是在單位時間內眼睛閉合時間所占的百分率。弗吉尼亞大學的Walt Wierwille從20世紀70年代開始研究眼睛光學變量與疲勞的關系,研究表明與疲勞有關的主要因素有缺乏睡眠、瞳孔直徑、注目凝視、眼球快速轉動、眉眼掃視、眨眼睛等,并且發(fā)現(xiàn)PERCLOS是最具潛力的疲勞測定方法之一,由PERCLOS得出的數(shù)據(jù)可以真正反映駕駛疲勞,是對疲勞進行估價測定的最好方法。
通過攝像頭獲取司機的實時視頻,獲得駕駛員的視頻圖像后,利用圖像處理與模式識別技術分析人臉特征圖像信息,從圖像中找到駕駛員面部所在位置,檢測出人眼并分析人眼狀態(tài)(睜開或閉合),然后統(tǒng)計一定時間內眼睛閉合持續(xù)總時間,將其與某固定閾值比較,以確定司機瞌睡與否。
1 人臉和人眼特征的檢測
疲勞狀態(tài)檢測要準確地檢測和跟蹤眼睛的狀態(tài)。采用先確定人臉區(qū)域,然后再在人臉區(qū)域內進一步檢測、定位人眼的方法,這樣可以使得眼睛的檢測與定位更加準確和快捷。眼睛的識別檢測方法可分為基于統(tǒng)計和基于知識兩種類型。基于統(tǒng)計的方法將人臉和人眼圖像視為一個多維向量,從而將人臉和人眼檢測問題轉化為多維空間中分布信號的檢測問題;而基于知識的方法則利用人臉和人眼特征知識建立若干規(guī)則,從而將人臉檢測問題轉化為假設和驗證問題,例如人臉膚色和幾何結構等?;谥R建模的方法一般對建模的假設條件依賴性強,而基于統(tǒng)計的方法精度較高、魯棒性強,但運算量大。駕駛室光照復雜多變,振動環(huán)境也較復雜,選擇基于統(tǒng)計的方法能更有效地進行檢測。
Paul Viola和Michael Jones于2001年提出機器學習領域分類精度較高并且識別速度快的Adaboost算法[5-6],Adaboost算法是一種高效的迭代算法,在人眼的快速檢測方面有著非常重要的應用。它針對同一個訓練集訓練出不同的弱分類器,然后把這些弱分類器組成強分類器,進而形成級聯(lián)分類器。訓練方法描述如下:
設計的系統(tǒng)采用麻省理工的MIT CBCL人臉庫作為訓練庫,然后利用Adaboost算法訓練人臉檢測分類器。MIT CBCI數(shù)據(jù)庫中的訓練樣本集共有2 429幅人臉樣本圖像和4 554幅非人臉圖像,包括各種光照條件和人體姿態(tài)。利用人眼檢測程序進行了大量圖片檢測,發(fā)現(xiàn)人眼檢測正確率高,只要能夠正確定位人臉,人眼檢測都能準確識別。經(jīng)過分析發(fā)現(xiàn),人眼特征簡單、模板小,不像人臉特征多、變化大。人眼的搜索區(qū)域為先前定位的人臉區(qū)域,搜索區(qū)域??;而人臉搜索區(qū)域為整幅圖像。特征簡單、搜索區(qū)域小,致使人眼檢測正確率高,不會出現(xiàn)誤檢。
2 檢測算法移植
疲勞狀態(tài)檢測算法運行在PC機上的檢測幀速率約為3~4幀,不能滿足檢測算法的實時性要求。為了提高實時檢測速度,將檢測算法移植到DSP芯片上運行可以有效地提高系統(tǒng)的實時性。DSP系統(tǒng)具有強大的數(shù)據(jù)并行處理能力,能提高檢測算法的運算速度,從而獲得實時檢測的效果。DSP具備普通微處理器所強調的高速運算和控制功能,移植過程中還要針對實時數(shù)字信號處理,在處理器結構、指令系統(tǒng)、指令流程上做相應的改動。系統(tǒng)采用TI公司的TMS320DM642芯片作為嵌入式芯片平臺,檢測算法的移植在合眾達公司的SEED-VPM開發(fā)板上進行。
TMS320DM642是建立在C64x DSP核基礎上、采用了德州儀器公司開發(fā)的第二代高性能超長指令字結構VelociT l .2TM,在每個時鐘周期內可執(zhí)行2個16×16 bit的乘法或4個8×8 bit的乘法。TMS320DM642內包含了6個算術邏輯單元,在每個時鐘周期內都可執(zhí)行2個16 bit或4個8 bit的加減、比較、移動等運算。在600 MHz的時鐘頻率下,DM642每秒可以進行24億次16 bit的乘累加或48億次8 bit的乘累加。這樣的運算能力,使得DM642可以進行實時的多視頻處理和圖像處理。TMS320DM642通過64 bit的EMIF和3個8/16 bit寬度的視頻口來連接板上的外設(如SDRAM、Flash、FPGA和DART)。TMS320DM642還在C64x的基礎上增加了很多外圍設備和接口。
疲勞狀態(tài)檢測識別系統(tǒng)是運行在DSP芯片上的數(shù)字信號處理系統(tǒng),視頻數(shù)據(jù)的處理流向如下:視頻數(shù)據(jù)從攝像機輸入進來,輸入的格式為PAL/NTSC模擬電視廣播信號格式,經(jīng)過模擬數(shù)據(jù)經(jīng)視頻解碼芯片SAA7115解碼,可以得到標準BT.656并行數(shù)據(jù),BT.656并行數(shù)據(jù)從DM642視頻口1輸入,視頻口1提取YCbCr數(shù)據(jù)之后,分別存放在內部的緩沖器中,獨立于CPU的EDMA將視頻口buffer中YCbCr數(shù)據(jù)搬移到大容量外部SDRAM存儲器中,SDRAM中存放著連續(xù)的3幀圖像數(shù)據(jù),同時EDMA將其中一幀圖像數(shù)據(jù),不停地搬移到DM642內部RAM,在內部RAM存放著兩行連續(xù)視頻數(shù)據(jù)供CPU使用,CPU處理過的數(shù)據(jù)輸回到內部RAM中暫時保存,后續(xù)數(shù)據(jù)輸出步驟與前面介紹的數(shù)據(jù)輸入步驟正好相反。
DSP采用多總線的哈佛結構,相同的系統(tǒng)復雜程度,DSP比一般的微處理數(shù)據(jù)處理速度快2個數(shù)量級。多總線結構使得DSP結構復雜,工作頻率較低,對外部存儲器的訪問速度只有133 MHz,從而造成數(shù)據(jù)瓶頸,嚴重地制約了處理速度,移植過程中,要減少片內外的數(shù)據(jù)傳輸、提高片內數(shù)據(jù)的利用率。Adaboost檢測算法要求較大的數(shù)據(jù)計算量,將其移植到DSP中,可以通過提高二級高速緩存Cache命中率、優(yōu)化算法等措施來減少片內外的數(shù)據(jù)傳輸,減少程序運算量。
移植完成后,對算法進行一系列優(yōu)化,最終達到18 S/s的幀速率,滿足了實時性要求,如表2所示。
3 檢測結果與分析
檢測時,TMS320DM642工作頻率為600 MHz,視頻輸入圖像大小為724×576,DSP將其縮放為CIF圖像(356×298像素),然后進行疲勞駕駛檢測,系統(tǒng)檢測速率基本達到18幀/s。通過采集多人圖像視頻進行檢測,分析得到人臉檢測率為90.5%,人眼檢測率90.3%,人眼狀態(tài)分析正確率為86.7%。算法達到18幀/s的幀速率,基本滿足了系統(tǒng)實時檢測的性能要求。但是由于實驗設備環(huán)境與時間限制,檢測系統(tǒng)還存在缺陷和有待完善的地方。例如由于樣本庫的原因,人臉檢測算法對傾斜人臉的檢測存在先天不足,可以加入傾斜人臉樣本或在檢測階段采用旋轉視頻圖像方法解決該問題。
參考文獻
[1] VUCKOVIC A, POPOVIC D,RADIVOJEVIC V.Artificial neural network for detecting drowsiness from EEG recordings[C].Proc.IEEE Seminar on Neural Network Applications in Electrical Engineering, Belgrade, Yugoslavia.Sept. 2002:155-158.
[2] GONZALEZ R C,WOODS R E. Digital image processing.Second Edition, Prentice Hall, Upper Saddle River, NJ,USA, 2002.
[3] JI Q, ZHU Z, LAN P.Real-time nonintrusive monitoring and prediction of driver fatigue[J].IEEE Trans.Veh.Tech., 2004,53(4):1052-1068.
[4] DONG W,WU X.Driver fatigue detection based on the distance of eyelid[C].Proc.IEEE VLSI Design and Video Technology, Suzhou, China, pp.365-368, May 2005.
[5] VIOLA P, JONES M.Rapid object detection using a boosted cascade of simple features[C]. IEEE Computer SocietyConference on Computer Vision and Pattern Recognition (CVPR),ISSN: 1063-6919, 2001(1):511-518.
[6] VIOLA P, MICHAEL J.Robust real-time face detection[J]. International Journal of Computer Vision.2004,57(2):137-154.