摘 要: 司機(jī)疲勞駕駛?cè)菀滓饑?yán)重的交通事故,,疲勞狀態(tài)檢測(cè)系統(tǒng)的研究成為計(jì)算機(jī)應(yīng)用研究的重要領(lǐng)域,。為了滿足疲勞狀態(tài)檢測(cè)系統(tǒng)實(shí)時(shí)性要求,選擇實(shí)時(shí)性較好的Adaboost算法來(lái)識(shí)別人眼,,采用單位時(shí)間內(nèi)眼睛閉合時(shí)間所占的百分率來(lái)判斷疲勞狀態(tài),,應(yīng)用該算法后進(jìn)行疲勞駕駛訓(xùn)練和識(shí)別研究。選擇DSP移植方案并將疲勞狀態(tài)檢測(cè)算法移植到DSP中,。經(jīng)過(guò)實(shí)時(shí)檢測(cè)實(shí)現(xiàn)的系統(tǒng)基本能滿足實(shí)時(shí)檢測(cè)疲勞駕駛的要求。
關(guān)鍵詞: 疲勞狀態(tài),;實(shí)時(shí)檢測(cè),;Adaboost
為了減少由于司機(jī)疲勞而導(dǎo)致的交通事故,國(guó)內(nèi)外的許多研究工作者都在研究司機(jī)疲勞狀態(tài)檢測(cè)系統(tǒng),。例如美國(guó)卡內(nèi)基梅隆大學(xué)的Richard Grace領(lǐng)導(dǎo)的Copilot工程開(kāi)發(fā)的疲勞檢測(cè)裝置,,浙江大學(xué)的駕駛防磕睡裝置,北京航天航空大學(xué)的眼動(dòng)測(cè)量系統(tǒng),。目前,,疲勞駕駛的檢測(cè)技術(shù)主要有兩大類,一類是采集腦電信號(hào)的生理參數(shù)EEG來(lái)檢測(cè)[1],,EEG生理參數(shù)能準(zhǔn)確地反映出人的疲勞狀態(tài),,但檢測(cè)設(shè)備較復(fù)雜昂貴,應(yīng)用推廣難度較大,;另一類是對(duì)采集的面部圖像信息進(jìn)行識(shí)別[2],。圖像信息檢測(cè)中,有的利用較昂貴的紅外攝像機(jī)檢測(cè)信號(hào)[3],,有的利用普通攝像機(jī)進(jìn)行檢測(cè)[4],。普通攝影機(jī)安裝和使用較方便,利于推廣應(yīng)用,,但對(duì)圖像處理技術(shù)要求較高,。由于疲勞狀態(tài)實(shí)時(shí)檢測(cè)系統(tǒng)要求很高的實(shí)時(shí)性和可靠性,目前為止,,還沒(méi)有出現(xiàn)滿足實(shí)際需要的非強(qiáng)迫性檢測(cè)系統(tǒng),。
表1中列出了幾種疲勞狀態(tài)檢測(cè)的方法,并對(duì)性能進(jìn)行了比較,。通過(guò)比較可以發(fā)現(xiàn),,這幾種方法中基于身體反應(yīng)的檢測(cè)方法性能較好,。PERCLOS(Percentage of Eyelid Closure Time)是在單位時(shí)間內(nèi)眼睛閉合時(shí)間所占的百分率。弗吉尼亞大學(xué)的Walt Wierwille從20世紀(jì)70年代開(kāi)始研究眼睛光學(xué)變量與疲勞的關(guān)系,,研究表明與疲勞有關(guān)的主要因素有缺乏睡眠,、瞳孔直徑、注目凝視,、眼球快速轉(zhuǎn)動(dòng),、眉眼掃視、眨眼睛等,,并且發(fā)現(xiàn)PERCLOS是最具潛力的疲勞測(cè)定方法之一,,由PERCLOS得出的數(shù)據(jù)可以真正反映駕駛疲勞,是對(duì)疲勞進(jìn)行估價(jià)測(cè)定的最好方法,。
通過(guò)攝像頭獲取司機(jī)的實(shí)時(shí)視頻,,獲得駕駛員的視頻圖像后,利用圖像處理與模式識(shí)別技術(shù)分析人臉特征圖像信息,,從圖像中找到駕駛員面部所在位置,,檢測(cè)出人眼并分析人眼狀態(tài)(睜開(kāi)或閉合),然后統(tǒng)計(jì)一定時(shí)間內(nèi)眼睛閉合持續(xù)總時(shí)間,,將其與某固定閾值比較,,以確定司機(jī)瞌睡與否。
1 人臉和人眼特征的檢測(cè)
疲勞狀態(tài)檢測(cè)要準(zhǔn)確地檢測(cè)和跟蹤眼睛的狀態(tài),。采用先確定人臉區(qū)域,,然后再在人臉區(qū)域內(nèi)進(jìn)一步檢測(cè)、定位人眼的方法,,這樣可以使得眼睛的檢測(cè)與定位更加準(zhǔn)確和快捷,。眼睛的識(shí)別檢測(cè)方法可分為基于統(tǒng)計(jì)和基于知識(shí)兩種類型?;诮y(tǒng)計(jì)的方法將人臉和人眼圖像視為一個(gè)多維向量,,從而將人臉和人眼檢測(cè)問(wèn)題轉(zhuǎn)化為多維空間中分布信號(hào)的檢測(cè)問(wèn)題;而基于知識(shí)的方法則利用人臉和人眼特征知識(shí)建立若干規(guī)則,,從而將人臉檢測(cè)問(wèn)題轉(zhuǎn)化為假設(shè)和驗(yàn)證問(wèn)題,,例如人臉膚色和幾何結(jié)構(gòu)等?;谥R(shí)建模的方法一般對(duì)建模的假設(shè)條件依賴性強(qiáng),,而基于統(tǒng)計(jì)的方法精度較高、魯棒性強(qiáng),,但運(yùn)算量大,。駕駛室光照復(fù)雜多變,振動(dòng)環(huán)境也較復(fù)雜,選擇基于統(tǒng)計(jì)的方法能更有效地進(jìn)行檢測(cè),。
Paul Viola和Michael Jones于2001年提出機(jī)器學(xué)習(xí)領(lǐng)域分類精度較高并且識(shí)別速度快的Adaboost算法[5-6],,Adaboost算法是一種高效的迭代算法,在人眼的快速檢測(cè)方面有著非常重要的應(yīng)用,。它針對(duì)同一個(gè)訓(xùn)練集訓(xùn)練出不同的弱分類器,,然后把這些弱分類器組成強(qiáng)分類器,進(jìn)而形成級(jí)聯(lián)分類器,。訓(xùn)練方法描述如下:
設(shè)計(jì)的系統(tǒng)采用麻省理工的MIT CBCL人臉庫(kù)作為訓(xùn)練庫(kù),,然后利用Adaboost算法訓(xùn)練人臉檢測(cè)分類器。MIT CBCI數(shù)據(jù)庫(kù)中的訓(xùn)練樣本集共有2 429幅人臉樣本圖像和4 554幅非人臉圖像,,包括各種光照條件和人體姿態(tài),。利用人眼檢測(cè)程序進(jìn)行了大量圖片檢測(cè),發(fā)現(xiàn)人眼檢測(cè)正確率高,,只要能夠正確定位人臉,,人眼檢測(cè)都能準(zhǔn)確識(shí)別。經(jīng)過(guò)分析發(fā)現(xiàn),,人眼特征簡(jiǎn)單,、模板小,不像人臉特征多,、變化大。人眼的搜索區(qū)域?yàn)橄惹岸ㄎ坏娜四槄^(qū)域,,搜索區(qū)域?。欢四?biāo)阉鲄^(qū)域?yàn)檎鶊D像,。特征簡(jiǎn)單,、搜索區(qū)域小,致使人眼檢測(cè)正確率高,,不會(huì)出現(xiàn)誤檢,。
2 檢測(cè)算法移植
疲勞狀態(tài)檢測(cè)算法運(yùn)行在PC機(jī)上的檢測(cè)幀速率約為3~4幀,不能滿足檢測(cè)算法的實(shí)時(shí)性要求,。為了提高實(shí)時(shí)檢測(cè)速度,,將檢測(cè)算法移植到DSP芯片上運(yùn)行可以有效地提高系統(tǒng)的實(shí)時(shí)性。DSP系統(tǒng)具有強(qiáng)大的數(shù)據(jù)并行處理能力,,能提高檢測(cè)算法的運(yùn)算速度,,從而獲得實(shí)時(shí)檢測(cè)的效果。DSP具備普通微處理器所強(qiáng)調(diào)的高速運(yùn)算和控制功能,,移植過(guò)程中還要針對(duì)實(shí)時(shí)數(shù)字信號(hào)處理,,在處理器結(jié)構(gòu)、指令系統(tǒng)、指令流程上做相應(yīng)的改動(dòng),。系統(tǒng)采用TI公司的TMS320DM642芯片作為嵌入式芯片平臺(tái),,檢測(cè)算法的移植在合眾達(dá)公司的SEED-VPM開(kāi)發(fā)板上進(jìn)行。
TMS320DM642是建立在C64x DSP核基礎(chǔ)上,、采用了德州儀器公司開(kāi)發(fā)的第二代高性能超長(zhǎng)指令字結(jié)構(gòu)VelociT l .2TM,,在每個(gè)時(shí)鐘周期內(nèi)可執(zhí)行2個(gè)16×16 bit的乘法或4個(gè)8×8 bit的乘法。TMS320DM642內(nèi)包含了6個(gè)算術(shù)邏輯單元,,在每個(gè)時(shí)鐘周期內(nèi)都可執(zhí)行2個(gè)16 bit或4個(gè)8 bit的加減,、比較、移動(dòng)等運(yùn)算,。在600 MHz的時(shí)鐘頻率下,,DM642每秒可以進(jìn)行24億次16 bit的乘累加或48億次8 bit的乘累加。這樣的運(yùn)算能力,,使得DM642可以進(jìn)行實(shí)時(shí)的多視頻處理和圖像處理,。TMS320DM642通過(guò)64 bit的EMIF和3個(gè)8/16 bit寬度的視頻口來(lái)連接板上的外設(shè)(如SDRAM、Flash,、FPGA和DART),。TMS320DM642還在C64x的基礎(chǔ)上增加了很多外圍設(shè)備和接口。
疲勞狀態(tài)檢測(cè)識(shí)別系統(tǒng)是運(yùn)行在DSP芯片上的數(shù)字信號(hào)處理系統(tǒng),,視頻數(shù)據(jù)的處理流向如下:視頻數(shù)據(jù)從攝像機(jī)輸入進(jìn)來(lái),,輸入的格式為PAL/NTSC模擬電視廣播信號(hào)格式,經(jīng)過(guò)模擬數(shù)據(jù)經(jīng)視頻解碼芯片SAA7115解碼,,可以得到標(biāo)準(zhǔn)BT.656并行數(shù)據(jù),,BT.656并行數(shù)據(jù)從DM642視頻口1輸入,視頻口1提取YCbCr數(shù)據(jù)之后,,分別存放在內(nèi)部的緩沖器中,,獨(dú)立于CPU的EDMA將視頻口buffer中YCbCr數(shù)據(jù)搬移到大容量外部SDRAM存儲(chǔ)器中,SDRAM中存放著連續(xù)的3幀圖像數(shù)據(jù),,同時(shí)EDMA將其中一幀圖像數(shù)據(jù),,不停地搬移到DM642內(nèi)部RAM,在內(nèi)部RAM存放著兩行連續(xù)視頻數(shù)據(jù)供CPU使用,,CPU處理過(guò)的數(shù)據(jù)輸回到內(nèi)部RAM中暫時(shí)保存,,后續(xù)數(shù)據(jù)輸出步驟與前面介紹的數(shù)據(jù)輸入步驟正好相反。
DSP采用多總線的哈佛結(jié)構(gòu),,相同的系統(tǒng)復(fù)雜程度,,DSP比一般的微處理數(shù)據(jù)處理速度快2個(gè)數(shù)量級(jí)。多總線結(jié)構(gòu)使得DSP結(jié)構(gòu)復(fù)雜,,工作頻率較低,,對(duì)外部存儲(chǔ)器的訪問(wèn)速度只有133 MHz,,從而造成數(shù)據(jù)瓶頸,嚴(yán)重地制約了處理速度,,移植過(guò)程中,,要減少片內(nèi)外的數(shù)據(jù)傳輸、提高片內(nèi)數(shù)據(jù)的利用率,。Adaboost檢測(cè)算法要求較大的數(shù)據(jù)計(jì)算量,,將其移植到DSP中,可以通過(guò)提高二級(jí)高速緩存Cache命中率,、優(yōu)化算法等措施來(lái)減少片內(nèi)外的數(shù)據(jù)傳輸,,減少程序運(yùn)算量。
移植完成后,,對(duì)算法進(jìn)行一系列優(yōu)化,,最終達(dá)到18 S/s的幀速率,滿足了實(shí)時(shí)性要求,,如表2所示,。
3 檢測(cè)結(jié)果與分析
檢測(cè)時(shí),TMS320DM642工作頻率為600 MHz,,視頻輸入圖像大小為724×576,,DSP將其縮放為CIF圖像(356×298像素),然后進(jìn)行疲勞駕駛檢測(cè),,系統(tǒng)檢測(cè)速率基本達(dá)到18幀/s,。通過(guò)采集多人圖像視頻進(jìn)行檢測(cè),分析得到人臉檢測(cè)率為90.5%,,人眼檢測(cè)率90.3%,,人眼狀態(tài)分析正確率為86.7%。算法達(dá)到18幀/s的幀速率,,基本滿足了系統(tǒng)實(shí)時(shí)檢測(cè)的性能要求。但是由于實(shí)驗(yàn)設(shè)備環(huán)境與時(shí)間限制,,檢測(cè)系統(tǒng)還存在缺陷和有待完善的地方,。例如由于樣本庫(kù)的原因,人臉檢測(cè)算法對(duì)傾斜人臉的檢測(cè)存在先天不足,,可以加入傾斜人臉樣本或在檢測(cè)階段采用旋轉(zhuǎn)視頻圖像方法解決該問(wèn)題,。
參考文獻(xiàn)
[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.