999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于人眼狀態的瞌睡識別算法

2021-12-07 10:09:12袁玉波
計算機應用 2021年11期
關鍵詞:特征檢測

孫 琳,袁玉波

(1.華東理工大學信息科學與工程學院,上海 200237;2.上海大數據與互聯網受眾工程技術研究中心,上海 200072)

0 引言

如今,人工智能+醫療、人工智能+交通、人工智能+教育的模式在生活中隨處可見。如何有效地預防瞌睡情況成為不少學者的研究重點,這項技術不僅可以應用于交通上,還可以對學生的課中狀態進行分析[1]。在交通上,美國國家公路交通安全管理局的調查結果表明,33%以上的受訪者承認他們在駕駛時會感到疲勞,而10%的人承認在過去一個月中出現過昏昏欲睡的情況[2];在因瞌睡而導致事故的發生的事件中,超過94%的司機都提到當時他們是獨自一人在車內[3]。通過使用瞌睡識別算法,可以檢測出駕駛員瞌睡的情況,從而采取相應的預防措施,減少意外事故的發生。在課堂上,如果學生上課時出現瞌睡的情況,瞌睡識別算法會對這名學生進行提醒,使其繼續集中注意力學習。在當今快節奏的社會,人們似乎沒有足夠的時間來完成他們每天的必要活動,只能減少睡眠時間,導致睡眠不足,在一些需要集中注意力的地方瞌睡,造成了難以挽回的損失。而瞌睡識別可以減少這些情況的發生,在人們出現瞌睡情況之前及時制止。

在瞌睡識別應用中,人眼定位是瞌睡識別的基礎,直接影響瞌睡識別結果的準確性。目前,國內已經有很多關于人眼定位的研究,并提出了大量的研究方法。何春[4]提出使用積分投影的方法進行人眼定位,首先通過膚色特征檢測人臉,然后再使用積分投影函數定位人眼;雖然該方法計算快,但是準確率不高。為了提高準確率,并解決膚色檢測人臉易受光照影響的問題,周立宇等[5]結合邊緣檢測和膚色檢測定位人臉,然后利用幾何位置關系、灰度投影和曲線擬合的方法對人眼進行二次定位;該方法雖然優于傳統的膚色檢測方法,但是當人臉圖像受到噪聲影響嚴重時,人眼定位準確率也會降低。為了進一步精確地定位人眼,侯向丹等[6]用改進后的Adaboost方法檢測人臉,根據“三庭五眼”的方法去除人眼之外的噪聲,融合積分投影和差分投影確定人眼的縱坐標,最后利用垂直積分投影確定人眼的橫坐標,實現人眼定位。本文的研究工作之一是對人眼進行精確分割。在閉眼數據集CEW(Closed Eyes in the Wild)[7]以及公開的人臉表情識別(Face Expression Recognition,FER)數據集[8]進行人眼定位之后,本文決定基于人臉上的68個特征點進行人眼分割。

目前關于瞌睡識別的算法大多數是基于深度學習或者機器學習的方法,利用卷積神經網絡(Convolutional Neural Networks,CNN)提取特征,再用Softmax 等分類器將選定的特征分類為瞌睡和不瞌睡,而沒有充分考慮到人眼的閉合狀態序列與瞌睡之間的關系,并且基于深度學習的瞌睡識別算法依賴大量的數據集,對實驗設備的要求高。針對上述問題,本文提出了基于人眼狀態的瞌睡識別算法,利用閉合狀態序列與瞌睡之間的關系,完成瞌睡識別。本文所提的瞌睡識別方法中數據的輸入用電腦攝像頭即可完成,相較于用心電圖(ElectroCardioGram,ECG)、肌電圖(ElectroMyoGraphy,EMG)和腦電圖(ElectroEncephaloGraphy,EEG)[9]等測試節省了較多的應用成本。現有公開的現實生活中的瞌睡數據集不足,而本文算法在不依賴于大量數據集的情況下,也能完成瞌睡識別。

1 本文算法

1.1 算法流程

本文提出了一種基于人眼狀態的瞌睡識別算法,算法流程如圖1 所示。本文算法的關鍵思想是在人臉檢測的基礎上將人眼分割出來,根據分割出來的人眼區域,計算人眼面積以及采樣后標準狀態幀的人眼面積;通過構造睜眼狀態度量函數得到人眼評價度量值;利用人眼評價度量值與睜眼閾值比較的結果來標注人眼狀態標簽,最后通過瞌睡判別模型來進行瞌睡狀態識別。

圖1 瞌睡狀態識別流程Fig.1 Flow chart of drowsiness state recognition

首先,對輸入的視頻數據進行標準狀態幀采樣和視頻處理。標準狀態幀是利用關鍵幀檢測算法將具有代表性的視頻幀抽取出來,這是為了解決每個人人眼大小不同的問題,并且作為之后人眼狀態得分的基準,視頻處理是進行視頻幀的采集。其次,進行眼睛定位,將人眼區域分割出來。利用級聯回歸模型[10]檢測人臉68個特征點,從中獲取12個有關人眼的特征點,進而實現對人眼圖像的分割。然后,計算人眼面積,構造睜眼狀態度量函數。人眼面積的計算主要是統計人眼區域內的像素點數,再結合左眼狀態度量值和右眼狀態度量值,以此為標準來檢測人眼狀態。最后,建立瞌睡判別模型,進行瞌睡狀態識別:若實驗對象的眼睛在連續的時間段內都處于閉合狀態,則處于瞌睡狀態。

1.2 人眼分割

人眼分割是從一段視頻幀F={F1,F2,…,}中,提取出每一幀的人眼區域,N0是視頻幀的數量。因為人眼分割是基于面部檢測的基礎之上,所以利用級聯回歸樹模型的人臉特征點算法檢測人臉上的68個特征關鍵點。視頻幀Fi表示為:

其中Pi為特征點的位置。在已檢測到68個特征點中,有12個特征點用來標記眼睛區域,其中,37~42 為左眼上的關鍵點,43~48號特征點為右眼上的關鍵點,分別記為

利用眼睛位置上的特征點分割出人眼區域之后,分別計算左眼面積和右眼面積。

其中:El、Er分別代表左眼區域,右眼區域。C(pj)是計數器,統計人眼區域內像素點數目,計算式如下:

1.3 眼睛閉合

為了能夠精確地檢測出眼睛閉合的狀態,本文構造了一個睜眼狀態度量函數L(e),基于L(e)標注人眼狀態標簽,L(e)定義為:

其中:d(e)為睜眼狀態度量函數,用來表示睜眼程度。

其中:k代表從視頻中提取的前k幀。(i=1,2,3,4)是睜眼狀態模型中的睜眼閾值,分別是由關鍵幀挑選算法挑出最能代表睜眼程度的4幀所決定的,計算式如下:

其中,di為前后兩幀顏色直方圖的距離差。di表達式如下:

其中:δi+1、δi是選取的視頻里連續兩幀的顏色直方圖。式(12)是di的計算過程,式(13)表示通過與閾值u0比較,得到最終的結果di。n是該圖像顏色直方圖的維度;u0是決定候選幀的距離閾值。

1.4 瞌睡檢測

根據眼睛閉合程度的標簽,提出了改進衡量瞌睡的函數,單位時間內眼睛處于閉合狀態的所占時間Perclos(Percentage of eyelid closure over the pupil),得到了瞌睡狀態值k,即:

其中:L(e)的值是之前所判斷的人眼狀態的標簽;n表示這段時間內視頻的總幀數。利用所得到的k值進行瞌睡狀態判斷,瞌睡狀態判斷函數如下所示:

其中:β為瞌睡閾值,若在連續的3個時間段內,參與者都處于瞌睡狀態,則將該名參與者識別為瞌睡。瞌睡識別函數如下所示:

圖2 顯示了不同角度下的人臉圖像,并且在人臉圖像上標注了68 個特征點。從圖2 可以看出,即使人臉偏移了一定角度,68個特征點還是能在人臉上標注出來。

2 實驗與結果分析

2.1 YawDD數據集

打哈欠檢測數據集(Yawning Detection Dataset,YawDD)[11]分別包含了不同年齡、不同國家的57 名男性,50 名女性志愿者。視頻是通過安裝在汽車后視鏡和汽車儀表盤上的攝像頭在不同的光照條件下拍攝下來的。為了評估本文方法的實驗結果,分別使用YawDD和NTHU-DDD數據集。第一個用于評估的數據集是YawDD,視頻是安裝在汽車儀表盤上的攝像頭拍攝的,總共29 個視頻,其中包含不同性別,戴眼鏡、不戴眼鏡的駕駛員。YawDD 視頻數據集的部分視頻樣本幀如圖3所示。

圖3 YawDD視頻數據集的樣本幀示例Fig.3 Sample frame examples of YawDD video dataset

由于YawDD 數據集并沒有標注相應的標簽,所以數據集由本文手動標注。針對該數據集,將YawDD 數據集中視頻分別被標注為“正常”“說話”“打哈欠”三類,這里將“正常”“說話”合為一類作為清醒狀態。圖4 是駕駛員在清醒狀態(Nonyawning)下所提取的視頻幀,圖5 是駕駛員在瞌睡狀態(Yawning)下提取的視頻幀。

圖4 清醒狀態視頻幀示例Fig.4 Non-yawning video frame examples

圖5 瞌睡狀態視頻幀示例Fig.5 Yawning video frame examples

2.2 NTHU-DDD數據集

NTHU-DDD 數據集是關于學習者瞌睡檢測的數據集,由訓練數據集、測試數據集和評估數據集組成[12]。數據集中的實驗對象是36 位來自不同種族、年齡在18~40 歲的成年人。視頻是在不同的照明、模擬不同駕駛場景的情況下拍攝的。駕駛場景包括正常駕駛、打哈欠、慢速眨眼以及昏昏欲睡等情況。如圖6所示,錄制的視頻分辨率是640 × 480,音頻視頻交錯(Audio Video interleaved,AVi)格式,每秒30 幀。另外,與睡意相關的特征都被逐幀標注,其中包括睡意、頭部姿態、眼睛和嘴巴等信息[13]。

圖6 NTHU-DDD視頻數據集的樣本幀示例Fig.6 Sample frame examples of NTHU-DDD video dataset

2.3 評估指標與結果分析

實驗的環境是:MacOS 操作系統,所使用的芯片是Apple M1,16 GB的RAM,在Python3.8的環境中編程實現。

在第2.2 節中,本文提出了睜眼狀態度量函數來判斷人眼狀態。圖7 是眼睛面積比(Square of Eye Ratio,SER)與眼睛縱橫比(Eye Aspect Ratio,EAR)[14]的對比結果。某個參與者在清醒狀態(波峰)與瞌睡狀態(波谷)下的SER 值差距較大,而在EAR 值上差距并不是很大,因此SER 值有利于針對人眼狀態標記多標簽。

圖7 SER、EAR隨時間的變化情況Fig.7 SER,EAR varying with time

圖8 是在YawDD 數據集下瞌睡識別可視化的示例。圖8(a)是駕駛員駕駛過程中抓拍的圖片,下方數字序號標注的圖片則是駕駛員眼睛的圖片,顯示了一段時間內駕駛員眼睛狀態的變化。圖8(b)表示駕駛員駕駛過程中的瞌睡檢測結果:當眼睛處于“閉合狀態”達到一定時間時,則標注為1,即出現有睡意的現象,0 則代表清醒狀態;若在連續的時間段內一直保持這種睡意,則判定其為瞌睡。圖8(b)中的序號對應圖8(a)中的序號,表示與圖8(a)狀態相對應的瞌睡檢測結果。

圖8 YawDD數據集上瞌睡識別可視化示例Fig.8 Visualization example of drowsiness recognition on YawDD dataset

圖9 是YawDD 數據集中部分視頻的實驗結果。圖9(a)~圖9(h)分別是在各個駕駛員駕駛過程中隨機選取的瞌睡檢測結果。從圖9 中可以明顯地看出,參與者瞌睡是發生在哪個時間段內。

圖9 YawDD數據集瞌睡檢測部分結果Fig.9 Some results of drowsiness detection on YawDD dataset

圖10顯示了在NTHU-DDD 數據集下,瞌睡識別可視化的示例,其中圖10(a)展示的是實驗者瞌睡過程,分別用數字序號代表10(a)的相應狀態。圖10(b)是NTHU-DDD 瞌睡檢測的結果,圖10(b)中的序號對應圖10(a)的相應狀態。其中,圖10(b)的瞌睡標簽,0代表無睡意,1表示有睡意。

圖10 NTHU-DDD數據集上的瞌睡識別可視化示例Fig.10 Visualization example of drowsiness recognition on NTHU-DDD dataset

本文分別采用了準確率、F1 作為實驗結果的評價指標,準確率計算式定義為:

其中:TP表示預測正確的數量;FP表示預測錯誤的數量。F1計算式定義為:

其中:Precision為精準度;Recall為召回率。

表1 給出了本文算法在數據集YawnDD 上進行實驗之后所獲得的結果。根據表1 的結果可以看出,本文所提的算法在絕大多數情況下都能正確預測實驗對象瞌睡的情況。

表1 本文算法在YawDD上的實驗結果Tab.1 Experimental results of proposed algorithm on YawDD

圖11 顯示了在數據集YawDD 上,本文算法,分別與EAR、嘴部縱橫比(Mouth Aspect Ratio,MAR)[15]、瞳孔大小(Size Of Pupil,SOP)[16]以及眼睛環度(Eye Circularity,EC)[17]等算法的特征值對比結果。圖中的特征值與瞌睡狀態相關,瞌睡越顯著,各個算法的特征值越高。EAR 算法利用眼睛縱橫比的方法構造了眨眼檢測器,雖然該算法可以檢測出人是否眨眼,但是由于簡單的長寬比閾值設定,另外人出現瞌睡時,眼睛縱橫比的效果不太明顯,所以可能導致出現假陽性的效果。MAR 算法中的嘴部縱橫比的計算方式類似于眼睛縱橫比,主要計算的是嘴部特征,相較于EAR 算法更有利于檢測出打哈欠行為,但是僅針對于嘴巴張大且保持這種狀態時間較長的情況。SOP、EC算法更強調瞳孔面積,雖然瞳孔的大小可以很好地衡量人的疲勞程度,但并不是與瞌睡狀態直接相關聯。本文算法能很好地提取眼部特征,并根據眼睛閉合的程度對權重作出相應的更新。從圖11 可以看出,在人瞌睡的情況下,本文算法相較于其他算法特征值更為明顯,從而使得瞌睡狀態的判定更為準確。

圖11 不同算法的特征值對比Fig.11 Eigenvalue comparison of different algorithms

圖12 給出了本文算法與其他算法的準確率對比。從圖12 中可以看出,綜合所有的視頻,本文算法準確率高于其他算法的準確率。EAR 在檢測視頻過程中,由于多段視頻存在眼睛長寬比變化不大的情況,因此平均準確率為82%。MAR 由于打哈欠過程中,嘴部特征相對明顯,所以準確率有一定的提升,平均準確率為88%。SOP 結合瞳孔特征以及眼睛直徑,所以在檢測大多數視頻時,具有一定的穩定性,平均準確率達到91%。本文算法,在檢測這29 段視頻中平均準確率提升到94%,但是當存在遮擋、視角偏移范圍較大時,也會造成準確率下降。

圖12 不同算法的準確率對比Fig.12 Accuracy comparison of different algorithms

最后在NTHU-DDD 數據集上進行實驗,因為NTHU-DDD數據集在每一幀都標注了有睡意、無睡意的標簽,所以在不同場景下,隨機選取部分視頻,提取視頻幀,針對睡意標簽計算F1和準確率。

表2 的結果顯示,本文算法在NTHU-DDD 數據集上的平均準確率達到80%以上,同樣具有好的表現效果。

表2 NTHU-DDD數據集上的實驗結果 單位:%Tab.2 Experimental results on NTHU-DDD dataset unit:%

2.4 時間評估

對數據集YawDD 中的其中一個視頻進行時間評估,圖13是本文算法與其他算法的耗時箱型圖對比。

圖13 不同算法的耗時箱型圖對比Fig.13 Comparison of time consumption box plot of different algorithms

本文算法在瞌睡狀態識別耗時多于MAR,但少于其他算法。EAR 識別每幀圖片的平均時間是0.29 s,因為視頻每秒30 幀,所以平均結果是8.94 s。MAR 平均結果是6.39 s,SOP平均結果是9.51 s,EC 平均結果是8.73 s,本文算法識別每幀所用時間是8.49 s。算法所用時間與視頻的分辨率有關,分辨率越高,所耗時間越多。SOP與本文算法,在特征提取以及瞌睡狀態建模上增加了時間的消耗。

3 結語

在瞌睡識別的場景中,根據人眼閉合狀態序列與瞌睡狀態之間的關系,本文提出了基于人眼狀態的瞌睡識別算法。該算法通過提取視頻序列中的閉合狀態幀,結合人眼狀態標簽算法,自動生成人眼閉合狀態序列,最后通過瞌睡識別模型進行瞌睡識別。

本文算法在YawDD、NTHU 數據集上進行實驗,在數據集YawDD 上的29 個視頻的準確率達到了94%,在NTHU-DDD數據集上的準確率達到了80%以上。雖然相較于其他對比算法,本文算法的性能較優,但仍有局限性。當人的頭部姿態變化過大時,準確率將會較低,所以接下來的研究中,我們將結合頭部姿態進行瞌睡識別。

猜你喜歡
特征檢測
抓住特征巧觀察
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
新型冠狀病毒及其流行病學特征認識
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
抓住特征巧觀察
主站蜘蛛池模板: 欧美精品一二三区| 免费精品一区二区h| 国产人人射| 亚洲aaa视频| 亚洲人免费视频| 五月激情综合网| 尤物午夜福利视频| 日韩午夜福利在线观看| 国产亚洲欧美在线专区| 亚洲国产成人无码AV在线影院L| 日本午夜影院| 欧美色亚洲| 精品国产欧美精品v| 在线日韩一区二区| 国产成人亚洲毛片| 国产美女精品一区二区| 五月激情婷婷综合| 久久婷婷人人澡人人爱91| 在线欧美日韩国产| 免费一级全黄少妇性色生活片| 一区二区三区在线不卡免费| 免费亚洲成人| 美女视频黄又黄又免费高清| 日韩欧美综合在线制服| 亚洲一道AV无码午夜福利| 不卡国产视频第一页| 中文字幕资源站| 伊人天堂网| 91www在线观看| 伊人AV天堂| 国产精品成| 日韩精品成人在线| 亚洲成人精品在线| 国产精品永久免费嫩草研究院| 国产精品成| 国产精品私拍在线爆乳| 婷婷午夜影院| 国产欧美视频综合二区| 69综合网| 亚洲精品天堂在线观看| 精品国产毛片| 亚洲久悠悠色悠在线播放| 国产区91| 国产高清在线精品一区二区三区| 国内精品视频区在线2021| 国产极品美女在线播放| 男女男精品视频| 本亚洲精品网站| 免费无码网站| 欧美日韩资源| 亚洲一区毛片| 人妻一区二区三区无码精品一区| 婷婷色在线视频| 亚洲精品片911| 青草午夜精品视频在线观看| 国产乱子伦视频在线播放| 国产精品99在线观看| 日本久久久久久免费网络| 宅男噜噜噜66国产在线观看| 色综合久久88| 精品夜恋影院亚洲欧洲| 久久久久久久蜜桃| 青青草国产在线视频| 亚洲精品国偷自产在线91正片| 一级毛片免费不卡在线| 天天躁日日躁狠狠躁中文字幕| 日韩欧美国产另类| 福利国产微拍广场一区视频在线| 欧美高清三区| 99久久国产精品无码| 香蕉久久永久视频| 日本免费a视频| 尤物亚洲最大AV无码网站| 无码国内精品人妻少妇蜜桃视频| 天堂网国产| 国产中文一区a级毛片视频| 欧美视频在线第一页| 无码aaa视频| 国产人成午夜免费看| 伊人久久福利中文字幕| 久久精品视频亚洲| 美女被躁出白浆视频播放|