本發(fā)明涉及領域,具體涉及一種基于視覺的疲勞駕駛檢測方法。
背景技術:
近年來,疲勞駕駛已成為重、特大交通事故的主要原因之一。在美國的高速公路上,每年有超過8萬起的交通事故,其中約有850起直接導致死亡。因此疲勞駕駛檢測技術的研究有著非常重要的現(xiàn)實意義和應用價值。
目前有關疲勞駕駛檢測的方法很多,基于計算機視覺的檢測方法一般都是先定位人臉,在進行人眼檢測,當人臉定位不準確時,會直接影像人臉的檢測的準確率。現(xiàn)有的人眼檢測的疲勞判別方法一般先用adaboost算法定位眼睛所在區(qū)域,在計算眼睛開閉程度。然而,受圖像噪聲、圖像二值化誤差等影響,計算眼睛的開閉程度會存在較大誤差,從而導致誤判。
技術實現(xiàn)要素:
本發(fā)明要解決的技術問題是提供一種基于視覺的疲勞駕駛檢測方法。
基于視覺的疲勞駕駛檢測方法,包括以下步驟:
s1:通過近紅外攝像頭獲取駕駛員的臉部圖像;
s2:利用adaboost算法直接檢測睜眼區(qū)域;
s3:計算連續(xù)閉眼幀數(shù)占總幀數(shù)的比值,判斷駕駛員的疲勞狀態(tài)。
進一步的,利用adaboost算法直接檢測睜眼區(qū)域的方法如下:
1)對現(xiàn)有的haar-like特征進行擴展,增加新的45°矩形特征;
2)采用擴展的haar-like特征對大量的正、負樣本進行訓練,得到用于人眼檢測的adaboost分類器,具體步驟如下:
2-1)每個haar-like特征生成1個分類器,其形式如下:
其中,x為樣本;fi(x)為第i個類haar-like特征fi在樣本x上的取值;pi(pi∈{-1,+1})為分類符號方向;hi為由特征fi(x)構成的分類器;θi為分類器hi的方法閾值;
2-2)設輸入的訓練樣本圖像為(xi,yi),(x2,y2),…,(xn,yn),其中,yi=0和yi=1分別對應負樣本和正樣本;
2-3)初始化權值,對于yi=0的負樣本,wl,t=1/2m;對于yi=1的正樣本,wl,t=1/2l;其中m和l分別為負樣本和正樣本的數(shù)量;
2-4)對于t=1,2,…,t(其中t為最弱分類器的個數(shù)):
①歸一化權重為一個概率分布,
②對于每個特征j訓練1個相應的弱分類器hj,相對于當前權重wi的誤差為
③選擇誤差εi最小的弱分類器hi;
④更新所有樣本的權重,
2-5)最終的強分類器為:
其中,αt=log(1/β),ht=min{εt};
3)對測試樣本提取關鍵的haar-like特征,并將特征輸入到adaboost分類器進行人眼檢測。
進一步的,判斷駕駛員的疲勞狀態(tài)的方法如下:
1)設眼睛完全睜開到閉合20%的時間間隔為t1,t2為完全睜開到閉合80%的時間,t3為完全睜開到下一次睜開20%的時間,t4為完全睜開到下一次睜開80%的時間;
2)通過測出的t1、t2、t3和t4值計算出連續(xù)閉眼的幀數(shù)占總幀數(shù)的比值f80,即:
3)統(tǒng)計連續(xù)閉眼幀的幀數(shù),若超過設定的閾值則判定為駕駛員疲勞。
本發(fā)明的有益效果是:
本發(fā)明采用近紅外攝像頭來獲取駕駛員的臉部圖像,保證白天和黑夜都能獲取較好的臉部圖像;對現(xiàn)有的haar-like特征進行擴展,并將該特征應用于adaboost算法對人眼的檢測中,直接檢測睜眼區(qū)域,不僅提高了檢測速度,還避免由于人臉檢測錯誤所帶來的誤判;對多姿態(tài)人臉圖像和變化的光線有很好的魯棒性,檢測率高。
具體實施方式
以下具體實施例對本發(fā)明作進一步闡述,但不作為對本發(fā)明的限定。
基于視覺的疲勞駕駛檢測方法,包括以下步驟:
s1:通過近紅外攝像頭獲取駕駛員的臉部圖像;
s2:利用adaboost算法直接檢測睜眼區(qū)域;
s3:計算連續(xù)閉眼幀數(shù)占總幀數(shù)的比值,判斷駕駛員的疲勞狀態(tài)。
利用adaboost算法直接檢測睜眼區(qū)域的方法如下:
1)對現(xiàn)有的haar-like特征進行擴展,增加新的45°矩形特征;
2)采用擴展的haar-like特征對大量的正、負樣本進行訓練,得到用于人眼檢測的adaboost分類器,具體步驟如下:
2-1)每個haar-like特征生成1個分類器,其形式如下:
其中,x為樣本;fi(x)為第i個類haar-like特征fi在樣本x上的取值;pi(pi∈{-1,+1})為分類符號方向;hi為由特征fi(x)構成的分類器;θi為分類器hi的方法閾值;
2-2)設輸入的訓練樣本圖像為(x1,y1),(x2,y2),…,(xn,yn),其中,yi=0和yi=1分別對應負樣本和正樣本;
2-3)初始化權值,對于yi=0的負樣本,wl,t=1/2m;對于yi=1的正樣本,wl,t=1/2l;其中m和l分別為負樣本和正樣本的數(shù)量;
2-4)對于t=1,2,…,t(其中t為最弱分類器的個數(shù)):
①歸一化權重為一個概率分布,
②對于每個特征j訓練1個相應的弱分類器hj,相對于當前權重wi的誤差為
③選擇誤差εi最小的弱分類器hi;
④更新所有樣本的權重,
2-5)最終的強分類器為:
其中,αt=log(1/β),ht=min{εt};
3)對測試樣本提取關鍵的haar-like特征,并將特征輸入到adaboost分類器進行人眼檢測。
判斷駕駛員的疲勞狀態(tài)的方法如下:
1)設眼睛完全睜開到閉合20%的時間間隔為t1,t2為完全睜開到閉合80%的時間,t3為完全睜開到下一次睜開20%的時間,t4為完全睜開到下一次睜開80%的時間;
2)通過測出的t1、t2、t3和t4值計算出連續(xù)閉眼的幀數(shù)占總幀數(shù)的比值f80,即:
3)統(tǒng)計連續(xù)閉眼幀的幀數(shù),若超過設定的閾值則判定為駕駛員疲勞。