王皓 張海艷 邱文凱
摘 要:近年來,由于疲勞駕駛所導致的交通事故比例持續上升,而傳統疲勞駕駛檢測技術和方法在現實應用中效果較差。本文利用人眼識別技術,研究并設計了一套基于計算機圖像處理的疲勞駕駛檢測系統。通過一系列圖像處理技術提取人眼特征參數,經過對比判斷是否存在疲勞駕駛情況。實驗證明該系統可以達到真正的實時性,及時發出警報,有效預防疲勞駕駛。
關鍵詞:人眼識別;疲勞駕駛;圖像處理
近年來,科技水平不斷發展,人工智能已經成為當前的一大熱點,而人臉識別更是人工智能領域的重中之重。人眼檢測作為人臉識別不可或缺的一部分,隨著圖像處理技術的不斷發展,已經實現了跨越式的突破。由于人眼識別技術日趨成熟,人眼識別技術的應用也越來越廣泛,其中尤以基于人眼檢測的汽車輔助駕駛系統最為廣泛。
目前,我國每年的道路交通事故中,造成汽車碰撞事故的原因有近四成是疲勞駕駛,因此疲勞駕駛已成為交通事故的主要殺手。通常駕駛員在經過長時間的駕駛之后,其身體各項生理狀況均會不同程度地下降,其中最明顯的表現是反應水平的下降,這是由于駕駛員疲勞駕駛時犯困以致于注意力不集中,而人在犯困時最明顯的特征就是頻繁地眨眼睛。因此基于人眼檢測以防止駕駛員疲勞駕駛的輔助駕駛系統,已經成為當前研究的一大熱點。
1 疲勞檢測技術仍處于落后階段
早期的疲勞檢測方法主要是通過醫療設備對駕駛者身體各項的生理參數進行監控,以此作為駕駛者疲勞狀態判斷的依據。但由于醫療設備的價格昂貴,對于汽車駕駛者尤其是私家車主來說,車上并不會安放醫療設備,而醫療設備大多體積龐大且需要駕駛者時時佩戴以進行檢測,這對駕駛者會造成非常大的不便,因此早期的疲勞檢測方法已不適用于現狀的發展。現有的檢測方法不能很好地判斷疲勞狀態,對駕駛者的疲勞狀態存在錯判、誤判等問題,對疲勞狀態程度的判定也不夠準確,未來的研究需要將疲勞狀態進行量化,建立準確的疲勞程度劃分標準,對疲勞檢測問題不斷進行完善。
隨著汽車數量不斷增加,其作為日常的主要交通工具,導致疲勞駕駛情況出現的概率增加,隨之而來的是交通事故頻發,就目前而言,提高駕駛安全性需求高,市場前景廣闊。其中基于人眼檢測的汽車輔助駕駛系統正在興起,但該領域的發展尚不完善,還有很多地方需要開發。
本系統以人眼檢測為基礎、疲勞檢測為主要功能,其結果可以作為司機當前疲勞狀態的主要判定依據。本系統可以應用于汽車輔助駕駛系統,可以對疑似疲勞駕駛的司機提出停止行駛警告,保證其生命財產安全。
2 系統設計
總體設計框架
首先編寫核心算法,然后利用MATLAB提供的GUI接口建立框架,將算法導入框架中,進一步完成功能設計,形成一個人眼檢測系統。系統主要包括圖像獲取、圖像預處理、人臉檢測、人眼檢測和疲勞程度檢測五個方面。
系統執行過程中,首先將攝像頭中包含人臉的幀圖像提取出來。由于圖像質量在不同的光照強度、不同的天氣和不同的設備下都會受到影響,如果直接對攝像頭獲取的圖像進行檢測,會產生不理想的結果。所以在對圖像檢測之前先對其進行預處理,按一定的灰度線性變換函數對圖像進行灰度化,使用空域法中的均值濾波對圖像進行平滑處理,再使用Robert邊緣檢測得到圖像的顏色、亮度等信息,搜索出人臉邊界,之后再對圖像做二值化處理。然后使用人臉檢測和人眼檢測相結合的方法定位可能區域,再使用黑色連通區域標記法解決對于配戴眼鏡的駕駛員人眼定位不準的問題,最后使用PERCLOS方法,降低誤報率。
3 系統實現概述
3.1 圖像采集
圖像采集是圖像獲取的主要途徑,也是圖像預處理技術的基礎。本系統通過車載高清攝像頭對駕駛者進行實時攝影,通過對視頻中的每一幀畫面進行優化處理,保證圖像的采集質量,對采集到的圖像進行預處理,突出感興趣區域,然后對圖像的特征進行提取,識別出駕駛者的人臉部分,在此基礎上再進行人眼的檢測。
本系統圖像采集的速率快,檢測效率高,而且不需要特殊光源,在正常光照下便可實現,此外,在光線不強甚至黑暗中均可快速、有效地實現圖像采集。
3.2 圖像預處理
3.2.1 灰度處理和直方圖均衡化
為了凸顯檢測到的視頻幀中的細節部分并提高圖像清晰度,通常需要將圖像進行灰度處理。灰度變換通常被稱為圖像對比度增強,根據目標條件按一定變換關系逐點改變原圖像中的每一個像素灰度值,下面介紹本系統采用的均值法。
在計算機圖像處理中,我們通常使用RGB顏色系統,即通過紅(R)、綠(G)、藍(B)三個通道的變化和疊加決定每個彩色圖像的像素點,其中每個通道的取值均在0~255之間。項目采用的均值處理將三個分量的亮度做均值,并將平均值再次賦給該像素點,由此得到輸入視頻幀的灰度圖。
直方圖均衡化是增加最大和最小像素值之間差值以及圖像整體對比度的一種方法。將原來的動態范圍從fmin~fmax改變為0~255,其算法公式為:
gx,y=
當攝錄視頻環境的照明效果不好時,最大最小之間差值會變小,對比度相對較低,也就是我們人眼所看到的圖像變化不明顯,經過均衡化處理后,視覺效果可得到改善。
3.2.2 平滑處理
受到照明、設備、傳輸信道等客觀因素的限制,圖像在傳輸、轉換和成像等過程中獲得的圖像質量往往都會存在一定程度的下降。而且,一般的圖像中混有隨機的、形狀和大小不確定的隨機噪聲。所以我們需要圖像增強技術預先對圖像進行處理,以此來獲得較好的原始圖像,為下一步識別人眼提供基礎。
中值濾波基本原理是將圖像某像素點的規定窗口內像素值排序,選出其中的中值來代替該像素本身的像素值。例如椒鹽噪聲的特征是其像素值為0或255,而中值濾波使每個點的灰度值與其周圍點接近,有效地消除這種孤立點噪聲。除此之外,在消除噪聲的同時,還能較好地保護圖像的邊界信息,不會使處理后的圖像過度模糊。
中值濾波器的效果受濾波窗口尺寸的影響較大,當濾波窗口過小時,雖然能夠很好地保護圖像中的某些細節,例如細小的邊界信息,但相應的過濾噪聲效果較差;反之,當窗口尺寸過大時,噪聲過濾效果比較明顯,但圖像的模糊程度會因此變高,在該項目中我們選擇3*3的窗口對圖像進行降噪。
3.2.3 gamma校正
生物學中,人眼相較于攝像機對于暗色變化更為敏感,即對同等變化的暗色感知要強于亮色。由于人眼能夠感知到更寬的亮度范圍,攝像機捕捉的明暗變化與人眼看到的情況不同。因此,我們需要使用Gamma矯正幫助攝像機提高曝光技術,更加接近人眼感知的圖像。Gamma矯正的原理是使用伽馬曲線處理圖像,對圖像進行非線性色調編輯。值得注意的是,大多數顯示器針對這種情況,會提前對圖像做預處理,因此存儲的圖像顏色信息已經經過Gamma矯正,我們在進行處理時要先對圖像做處理,保證它在線性顏色空間下,再做Gamma矯正。
每一個像素點分別經過歸一化、預補償、反歸一化三個步驟完成矯正,我們將圖像分為深色和淺色兩部分,通過Gamma矯正將兩者的比例分別調大,從而實現對比度增強的效果。
3.3 人臉識別及人眼粗定位
為了后續更精準地標識人眼位置,我們需要提前使用臉部分類器檢測出疑似人臉的位置,再用人眼分類器檢測出粗略的眼睛位置,并將眼部及其周圍部分截取下來,剩余部分不作處理。
目前的檢測臉部的方法主要分為兩個類:基于基礎知識和基于統計的檢測。前者通過提取眼睛、嘴巴、鼻子等各器官特征信息,結合與人臉之間相對位置檢測。后者則將人臉看做一個二維像素矩陣,通過大量的人臉部圖像構造樣本空間,最終根據相似度來判斷是否有人臉存在。
這兩種檢測框架又分別發展了許多方法,本項目使用的是基于統計檢測方法中的神經網絡算法。由于這種方法需要大量的訓練才能夠使用,而訓練分類器需要大量的計算以及時間,除此之外,我們項目中樣本比較少所導致的訓練不精確會造成臉部識別錯誤。因此選擇已經訓練好的分類器模板,直接運用到視頻幀中來獲得所需的人臉區域。OpenCV開源的第三方跨平臺計算機視覺庫中提供的人臉識別分類器,剛好滿足項目需求,所以我們在該步驟中,選擇調用其中的Haar分類器完成。
3.4 人眼特征提取及疲勞檢測
3.4.1 形態學處理
由于需要將視頻幀中有效部分提取出來,方便后續更精準快速地定位眼球位置,我們要對圖像做二值化處理,因此如何準確地提取出視頻幀中的有效信息成為人眼識別的關鍵。比如在圖像中邊界等有效信息的灰度值往往比非邊界的灰度值高,那么我們可以把灰度值大于規定閾值的像素點標出來,而剩余的無效信息則視為背景。
將這種算法轉換成函數表達式為:
0,x
255,x>S
其中S為規定的閾值,有效信息區設為255,即為白色,背景設為0,即為黑色,經過處理后,圖像轉化為黑白二值圖。
3.4.2 霍夫圓變換
在圖像處理領域中,霍夫圓變換是從圖像中識別集合形狀非常有效的一種方法,能夠快速準確地提取我們所需要的特征信息,例如項目中人眼的位置。傳統的霍夫圓變換是從黑白圖像中檢測圓形,上一步驟已經將錄入的視頻幀轉化為二值圖,該步則需要將圖像做霍夫變換,定位眼球的具體位置。
霍夫圓變換的原理是初始認為每一個非零像素點都有可能是某一個圓上的一點,將每一點對應的二維極值以及極角用三維的圓心x左邊、y坐標和圓的半徑替換,三個變量生成累積坐標平面,通過投票和設置累積權重定位圓。
將三個參數分別設為a、b、r,笛卡爾坐標系中圓的方程為:
由a、b、r組成的三維坐標系中,一個點可以唯一確定一個圓。在x-y坐標系中經過某一點的所有圓映射到該坐標系中將會形成一條三維曲線,而在同一個圓上的點由于圓心左坐標、直徑相等,即映射到三維坐標系中同一點。由此我們可以通過設置閾值,并判斷某一圓心上模向量相交數量是否大于該閾值,來確定圓的位置。
3.4.3 疲勞檢測
系統在提取出的人臉區域中,對人眼進行檢測,通過對圖像人臉區域進行邊緣置白,然后搜索黑色連通片區域,得到一些可能是人眼的區域,再使用平滑處理排除單個黑色像素點對人眼檢測的影響,再收縮窗口以減小運算量,使用黑色連通區域標記法解決對于配戴眼鏡的駕駛員人眼定位不準的問題,最后遍歷可能的人眼窗口并按照一定的條件判斷得到人眼的
位置。
根據有關研究發現:駕駛員在駕駛時若眼睛閉合時間達到0.5s以上說明人眼較為疲勞,這種情況下很容易發生交通事故。本文的系統采用PERCLOS作為測量指標,首先計算出人眼睛的閉合時間和PERCLOS值,然后對人眼閉合時間做出判斷,當時間大于0.3秒,并且PERCLOS值大于一定值時,認為該駕駛員不宜繼續駕駛,并對駕駛員進行提醒。PERCLOS檢測方法的優勢簡化了檢測方法,計算量小,運算快捷,達到了實時性好、檢測準確率高、抗干擾性強的效果。
4 總結
本系統從汽車駕駛方面出發,通過對人眼檢測系統的研究,準確有效地檢測人眼疲勞程度,降低交通事故發生率,給社會帶來長久的效益。
從交通部門角度看,人眼檢測系統的運用有利于對潛在的交通隱患進行有效的預防管理或更方便找出事故發生的成因。傳統的方法只能通過乘車者的監督或采取加大宣傳力度、加強特定時間的巡邏監控等。但人眼檢測可檢測駕駛人是否疲勞駕駛,節省人力物力資源,從而有效解決這一交通問題。另外,基于人眼的檢測,可優化監測管理系統,利用計算機對不同人群的人眼跟蹤識別并顯示用戶部分特征,從而對犯罪事件、安全事件有一定的幫助,一定程度上維護社會的長治久安。
從駕駛員角度來看,使用基于人眼檢測系統的汽車駕駛輔助系統,實時有效地檢測出駕駛員的疲勞程度,對需要休息的駕駛員發出提醒信息,提醒其停車休息。對保障駕駛員生命與財產安全、減少交通事故的發生,具有重大的意義。
從企業角度來看,近年來,隨著消費者對交通工具安全性能的越發看重,很多企業已把安全系統的提高作為研發的重點。而人眼檢測系統,在安全系統的指數得到提升的同時為企業降低了研發的成本。另外,人眼檢測系統可通過隨時檢測人臉和人眼的變化并實時跟蹤,利用傳感器、算法和可執行層來實現輔助駕駛,從而大幅度提升駕駛的安全指數。而通過人機交互,用戶對使用該企業安全系統的反饋,有利于企業對安全系統不斷優化,提高企業的經濟效率和利潤。
通過調查分析發現,對不同人群的人眼跟蹤識別并顯示用戶部分特征對輔助汽車駕駛有一定的幫助。不僅如此,隨著信息技術的不斷革新,人眼跟蹤技術的運用領域不斷擴大,汽車駕駛輔助系統、視頻監控、人員跟蹤等都可將其運用其中。可見,智能識別系統正悄悄地走進我們的生活,隨之而來的便是智能識別技術的研究價值不斷提高。本文系統在技術上使用圖像預處理、人臉檢測與人眼檢測相結合、平滑處理和PERCLOS方法,達到降低誤報率的效果,在創新上強化單一操作的性能,便于不同人群的使用,適應符合當代社會發展的需求,在市場上占有一定優勢。