• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于人眼狀態(tài)的瞌睡識別算法

      2021-12-07 10:09:12袁玉波
      計算機應用 2021年11期
      關鍵詞:人眼人臉準確率

      孫 琳,袁玉波

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

      0 引言

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

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

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

      1 本文算法

      1.1 算法流程

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

      圖1 瞌睡狀態(tài)識別流程Fig.1 Flow chart of drowsiness state recognition

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

      1.2 人眼分割

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

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

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

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

      1.3 眼睛閉合

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

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

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

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

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

      1.4 瞌睡檢測

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

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

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

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

      2 實驗與結果分析

      2.1 YawDD數(shù)據(jù)集

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

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

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

      圖4 清醒狀態(tài)視頻幀示例Fig.4 Non-yawning video frame examples

      圖5 瞌睡狀態(tài)視頻幀示例Fig.5 Yawning video frame examples

      2.2 NTHU-DDD數(shù)據(jù)集

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

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

      2.3 評估指標與結果分析

      實驗的環(huán)境是:MacOS 操作系統(tǒng),所使用的芯片是Apple M1,16 GB的RAM,在Python3.8的環(huán)境中編程實現(xiàn)。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

      2.4 時間評估

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

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

      本文算法在瞌睡狀態(tài)識別耗時多于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與本文算法,在特征提取以及瞌睡狀態(tài)建模上增加了時間的消耗。

      3 結語

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

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

      猜你喜歡
      人眼人臉準確率
      有特點的人臉
      乳腺超聲檢查診斷乳腺腫瘤的特異度及準確率分析
      健康之家(2021年19期)2021-05-23 11:17:39
      不同序列磁共振成像診斷脊柱損傷的臨床準確率比較探討
      2015—2017 年寧夏各天氣預報參考產品質量檢驗分析
      人眼X光
      快樂語文(2019年9期)2019-06-22 10:00:38
      人眼為什么能看到虛像
      三國漫——人臉解鎖
      動漫星空(2018年9期)2018-10-26 01:17:14
      高速公路車牌識別標識站準確率驗證法
      閃瞎人眼的,還有唇
      優(yōu)雅(2016年12期)2017-02-28 21:32:58
      看人,星光璀璨繚人眼
      電影故事(2016年5期)2016-06-15 20:27:30
      凤凰县| 阳高县| 荃湾区| 长子县| 唐山市| 河源市| 慈溪市| 新巴尔虎右旗| 莫力| 宝清县| 蓬安县| 阿克| 黔西县| 东光县| 平邑县| 伊宁县| 兰西县| 冷水江市| 济宁市| 金堂县| 乌兰县| 枣强县| 赣州市| 资兴市| 自贡市| 论坛| 大同市| 洛阳市| 金堂县| 宁蒗| 城步| 曲松县| 会泽县| 桂林市| 五莲县| 湛江市| 沂南县| 资中县| 萍乡市| 晋中市| 黎川县|