基于3G視(shì)頻的駕駛員疲勞狀态檢測方法
發布時(shí)間(jiān):2012-02-25 點擊()
疲勞駕駛已成為(wèi)交通(tōng)事故發生(shēng)的主要原因之一。文中提出了一種基于3G視(shì)頻的人(rén)眼疲勞檢測方法。通(tōng)過DirectShow技(jì)術(shù)對視(shì)頻流抓取視(shì)頻幀,采用膚色聚性特征進行(xíng)人(rén)臉定位,基于灰度信息進行(xíng)人(rén)眼定位與追蹤,并采用Perclos方法進行(xíng)疲勞判斷。通(tōng)過此方法,可(kě)以及時(shí)了解駕駛者的疲勞狀态,有(yǒu)效預防疲勞駕駛。
疲勞駕駛是司機在駕車(chē)過程中介于意識清醒和(hé)進人(rén)睡眠的一種非正常狀态,是導緻交通(tōng)事故的主要原因之一。由于車(chē)輛(liàng)流動性強、任務區(qū)域廣、安全隐患多(duō)、風險責任大(dà),并缺乏科學有(yǒu)效的監管手段,近年來(lái)疲勞駕駛所造成的車(chē)輛(liàng)事故時(shí)有(yǒu)發生(shēng)。通(tōng)過3G視(shì)頻監控系統對駕駛員面部狀态的實時(shí)監控,一旦發現駕駛員眼睛疲勞狀态立即進行(xíng)報警,能有(yǒu)效減少(shǎo)駕駛員疲勞所造成的交通(tōng)事故,解決車(chē)輛(liàng)管理(lǐ)中“看不見、聽(tīng)不着、控不了”的難題。
基于3C視(shì)頻的疲勞檢測主要包括視(shì)頻流解壓抓幀、人(rén)臉定位、人(rén)眼定位追蹤和(hé)疲勞判斷4個(gè)部分。文中提出一種基于膚色檢測及灰度信息的疲勞檢測算(suàn)法,能有(yǒu)效用于3G車(chē)輛(liàng)視(shì)頻監控系統。
1 視(shì)頻采集及預處理(lǐ)
文中使用車(chē)輛(liàng)內(nèi)部的3G視(shì)頻監控裝置來(lái)進行(xíng)視(shì)頻采集,位于駕駛員頭頂正面上(shàng)方,拍攝在駕駛過程中多(duō)種光照環境下、不同姿勢和(hé)精神狀态的駕駛員視(shì)頻。
視(shì)頻預處理(lǐ)主要采用DirectShow技(jì)術(shù)進行(xíng)視(shì)頻流解壓抓幀。利用DirectShow的媒體(tǐ)監測器(qì)對象(Media Detector Object),将拍攝到的駕駛員視(shì)頻文件進行(xíng)視(shì)頻流解壓縮,實時(shí)在線地從視(shì)頻流中提取指定的幀視(shì)頻圖像,并為(wèi)後續的駕駛員眼睛狀态檢測提供位圖數(shù)據。
媒體(tǐ)監測器(qì)不僅能獲取媒體(tǐ)源文件的格式信息,也可(kě)以通(tōng)過捕獲過濾器(qì)從一個(gè)媒體(tǐ)文件的視(shì)頻流中捕獲一幅位圖圖像,通(tōng)常獲得(de)的位圖是24位RGB格式。通(tōng)過搜索媒體(tǐ)文件,媒體(tǐ)監測器(qì)可(kě)以獲得(de)這個(gè)文件中任意點的圖像。應用程序通(tōng)過調用IMediaDet接口與Media Detector進行(xíng)交互。接口包含了一些(xiē)方法能夠從媒體(tǐ)源文件中提取重要信息,比如媒體(tǐ)類型、幀速率甚至是視(shì)頻流的單個(gè)幀。媒體(tǐ)監測器(qì)将過濾器(qì)視(shì)圖 裝到對象中,從而使應用程序屏蔽掉與視(shì)圖相關的一些(xiē)細節。
在疲勞檢測中,用得(de)到的第一幅圖像檢測人(rén)臉和(hé)眼睛,如若失敗則從下一幅圖像檢測直至成功,并将得(de)到的眼睛圖像作(zuò)為(wèi)動态模闆對以後的序列進行(xíng)眼睛追蹤,若失敗則重新定位人(rén)眼。
2 基于膚色檢測的人(rén)臉定位
膚色是人(rén)臉最為(wèi)顯著特征之一,對于彩色圖像,膚色是圖像中相對集中、穩定區(qū)域。膚色信息可(kě)将人(rén)臉和(hé)背景區(qū)域分開(kāi)。研究表明(míng),在除去亮度的色度空(kōng)間(jiān)中,不同人(rén)臉膚色分布具有(yǒu)聚類性。所以膚色的差異主要取決于色彩信息,而非亮度信息。基于膚色檢測方法利用人(rén)的膚色中Cr和(hé)Cb的聚類特性,在YCbCr色彩空(kōng)間(jiān)中檢測圖像中是否存在人(rén)臉。這種算(suàn)法檢測速度快,并且受人(rén)臉旋轉或側轉的影(yǐng)響較小(xiǎo)。
膚色分割可(kě)以采用的色彩空(kōng)間(jiān)有(yǒu)很(hěn)多(duō)種。其中YCbCr色彩空(kōng)間(jiān)具有(yǒu)與人(rén)類視(shì)覺感知過程類似的構成機理(lǐ),能很(hěn)好地反映膚色分布,并反映出膚色聚類特性。YCbCr模型與RGB模型的變換公式如下
通(tōng)過對人(rén)臉數(shù)據庫中和(hé)人(rén)臉視(shì)頻圖像中黃種人(rén)人(rén)臉膚色點的采樣進行(xíng)分析,可(kě)得(de)到實驗環境下膚色在YCbCr空(kōng)間(jiān)中的聚類,用數(shù)學表達式确定膚色範圍的方法進行(xíng)膚色建模。可(kě)根據Chai采用YCbCr顔色空(kōng)間(jiān)的CbCr平面,如果某像素點的顔色落入Cr=[133:173]和(hé)Cb=[77:127]範圍內(nèi),就認為(wèi)是屬于膚色像素,否則就認為(wèi)是非膚色像素。确定為(wèi)膚色區(qū)域後,将其認定的膚色區(qū)域的R、G、B值均設定為(wèi)255,在圖像中顯示為(wèi)白色;非膚色區(qū)域設y=R=G=B=0,即在圖像中顯示為(wèi)黑(hēi)色。随後對得(de)到的圖像采用自适應阈值二值化。
式中,g(t)為(wèi)灰度值為(wèi)t的像素個(gè)數(shù);G為(wèi)非零像素個(gè)數(shù)。最後利用投影(yǐng)技(jì)術(shù)及頭部的特點确定人(rén)臉上(shàng)下和(hé)左右邊界。由于眼部處于人(rén)臉上(shàng)半部分,故隻需保留圖像的3/5。
3 基于灰度信息的人(rén)眼定位
眼睛區(qū)域與周圍區(qū)域相比,具有(yǒu)灰度值較低(dī)且灰度變化率較大(dà)的特點。因此可(kě)基于眼睛圖像的灰度信息進行(xíng)定位。
3.1 眼睛粗略定位
準确定位人(rén)臉後,根據面部器(qì)官分布,人(rén)眼在臉部的上(shàng)半部,可(kě)以很(hěn)簡單的确定一個(gè)大(dà)概區(qū)域。觀察人(rén)臉圖片,發現眼部在水(shuǐ)平方向經過皮膚、左眼眼白、左眼瞳孔、左眼眼白、皮膚、右眼眼白、右眼瞳孔、右眼眼白、皮膚、灰度變化較大(dà)。在灰度變化突變處進行(xíng)微分,将産生(shēng)高(gāo)值,将其絕對值累加,則灰度變化越大(dà)的那(nà)一行(xíng),累積值越大(dà)。計(jì)算(suàn)公式如下
f(x,y)為(wèi)得(de)到的人(rén)臉區(qū)域的灰度圖像,通(tōng)過實驗發現,在眼睛處導數(shù)變化值之和(hé)的絕對值最大(dà),通(tōng)過此方法可(kě)粗略判斷人(rén)眼所在線的位置。
3.2 人(rén)眼精确定位
通(tōng)過觀察發現眼睛周圍Cb值較高(gāo),而Cr值較低(dī),因此由式(5)計(jì)算(suàn)得(de)到特征圖,以突出眼部特征。
其中,EyeMap是眼睛特征圖,
都歸一化到[0,255]之間(jiān),
是由Cr求反得(de)到(255,Cr)。在得(de)到EyeMap圖後,設定閥值T,将EyeMap小(xiǎo)于T的值設為(wèi)0,這一步可(kě)視(shì)為(wèi)一個(gè)簡單的濾波以去掉非眼部特征的幹擾。
得(de)到EyeMap濾波圖後,結合人(rén)眼粗定位結果,從左到右搜索,按比例定義相對于人(rén)臉區(qū)域一定大(dà)小(xiǎo)的框,當框進EyeMap濾波圖值的和(hé)最大(dà)時(shí),即為(wèi)人(rén)眼。
3.3 眼睛的追蹤
對人(rén)眼完成定位後,還(hái)要利用動态模闆匹配的方法跟蹤眼睛。設眼睛模闆左上(shàng)角的位置為(wèi)(x,y),下一幀的搜索範圍是原位置上(shàng)沿上(shàng)、下、左、右4個(gè)方向各擴展10個(gè)像素。其公式為(wèi)
式中,N是模闆中像索的個(gè)數(shù);M為(wèi)模闆;I為(wèi)圖像中待匹配的部分。
可(kě)得(de)所有(yǒu)大(dà)于阈值p的最大(dà)值所對應的坐(zuò)标為(wèi)最匹配的位置。以此得(de)到的眼睛圖像作(zuò)為(wèi)下一幀圖像的模闆。在追蹤的過程中,若得(de)到的p均小(xiǎo)于阈值或兩眼的行(xíng)距過大(dà)則重新回到眼睛的檢測過程。
4 基于Perclos的疲勞識别
文中的疲勞識别基于Perclos的P80模型,即将閉合程度大(dà)于80%的眼睛狀态判斷為(wèi)閉合狀态。以初始時(shí)刻司機清醒時(shí)的上(shàng)下眼睑最大(dà)距離為(wèi)标準,若以後得(de)到的距離小(xiǎo)于此距離的80%則判斷為(wèi)閉合。假設實驗視(shì)頻幀率10f·s-1分辨率為(wèi)640×480,時(shí)長60s。
則以每6s視(shì)頻作(zuò)為(wèi)1個(gè)檢測單元,間(jiān)隔0.33s取1幀作(zuò)眼睛狀态檢測。統計(jì)每個(gè)檢測單元內(nèi)18幀圖像的狀态,得(de)到眼睛閉合幀數(shù)CloseFr ame_Num和(hé)處理(lǐ)的總幀數(shù)SumFrame_Num,依據式(7)計(jì)算(suàn)相應的Perclos值。
如果所得(de)Perclos值大(dà)于實驗确定的阈值20%,則判斷此時(shí)駕駛員可(kě)能已處于疲勞狀态,通(tōng)過報警系統進行(xíng)警告。
5 結束語
視(shì)頻監控能對駕駛者進行(xíng)監督提醒,有(yǒu)效預防疲勞駕駛,減少(shǎo)疲勞駕駛所引起的車(chē)輛(liàng)事故。3G視(shì)頻監控是車(chē)輛(liàng)監控發展的新趨勢。算(suàn)法在3G監控視(shì)頻幀的基礎上(shàng),進行(xíng)了人(rén)臉定位、人(rén)眼定位與追蹤及疲勞狀态判斷。實驗表明(míng),該算(suàn)法有(yǒu)較高(gāo)的魯棒性及準确性,并能有(yǒu)效應用于實際。來(lái)源《電(diàn)子科技(jì)》2011年11期)