熊碧輝 周后盤 黃經州 阮益權 周里程
摘要:當前利用計算機視覺技術檢測學生注意力的方法主要是基于人眼閉合特征和頭部偏轉特征。當學生處于頭部正視、眼睛睜開而視線在看電腦屏幕以外區域時,用以上兩種特征無法檢測出該類分心情況。針對該問題,提出了一種融合視線檢測的注意力檢測方法。通過攝像頭抓取圖像,分析每幀圖像中學生的眼睛閉合特征、頭部偏轉特征以及視線特征,用以判別學生的注意力專注度。實驗結果表明,融合視線的注意力檢測方法準確性較高,具有一定的實用價值。
關鍵詞:在線教育;注意力檢測;頭部偏轉檢測;眼睛閉合檢測;視線檢測
DOI:10.11907/rjdk.173125
中圖分類號:TP301
文獻標識碼:A文章編號:1672-7800(2018)007-0031-06
Abstract:Incurrentonlineeducation,theresearchmethodsofdetectingstudent′sattentionbasedoncomputervisionaremainlybasedonthecharacteristicsofhumaneyeclosureandheaddeflection,however,whenstudentsfacetothecomputerscreenbutlookatotherplaces,thisdistractioncanbedetectedbyapplyingneitherofthecharacteristicsmentionedabove.Tosolvethisproblem,anattentiondetectionmethodintegratedwitheyegazedetectionisproposed.Bycapturingpictureswiththecameraandanalyzingthecharacteristicsoftheeyeclosure,headdeflectionandlineofsightineachframe,thedegreeofastudent′sattractioncanbedetermined.Theexperimentalresultsshowthattheattentiondetectionmethodintegratedwitheyegazedetectionhashigheraccuracyindetectingstudentsattentionbehavior,andthushascertainpracticalvalue.
KeyWords:onlineeducation;attentiondetection;headdeflectiondetection;eyeclosuredetection;eyemovementdetection
0引言
近年來基于網絡的在線教育日趨普及,學生能在任何時間、任何地點學習,但該類無監督的學習環境下師生無交流,難以確定學生是否認真學習,此外,長時間面對單調的電腦屏幕,學習效果受到影響,同時使得學生集體意識淡薄。因此,檢測學生注意力分散情況并給予提示尤為重要。
注意力檢測研究最廣的是駕駛員疲勞檢測,而在線教育領域注意力檢測研究則相對較少,其中通過計算機視覺技術檢測學習者注意力狀態的方法大多類似于駕駛員疲勞檢測方法,或在此基礎上融合生理特征檢測或行為檢測,如腦電波檢測、眼電圖檢測、心電圖檢測,或者通過監測學習者的姿態、鼠標鍵盤點擊行為等分析學習者的學習狀態[1-2]。余繞東[1]設計了一套智能注意力檢測系統,通過采集人臉、人眼信息并結合腦波檢測,分析學習者情感狀態,分別從顯式分心和隱式分心兩個層面實時檢測學習者是否分心,從而改善遠程教育系統中情感缺失問題;盧希[2]利用Kinect傳感器采集學生的頭部姿態、面部表情等數據,分析學習者的學習狀態;吳滄海等[3]通過分析學習者面部表情、頭部姿態和眨眼頻率判別學習者注意力狀態。
該領域大多數方法對設備有一定要求,如文獻[2]中需要視線Kinect傳感器,還有要求使用高分辨率攝像頭或紅外光源,至于生理檢測方法則要求更高,需要在學習者身上放置傳感器,使學習者產生心理負擔。本文在研究相關方法后發現,在學生處于頭部正視、眼睛睜開但視線在電腦屏幕以外區域的情況下,僅依靠人臉特征和人眼特征無法檢測分心情況。借鑒駕駛員疲勞檢測中視線區域檢測方法,并考慮低分率攝像頭應用條件,本文提出了一種融合視線檢測的多特征注意力檢測方法,對眼睛閉合檢測方法進行改進,從而整體上提高注意力檢測的準確性。通過低分辨率攝像頭或筆記本電腦自帶攝像頭實時采集圖像,利用機器視覺技術分析學生學習過程中的注意力狀態,建立一個實施簡單、實用性強的注意力檢測方法。
1注意力檢測算法
1.1算法概述
本文的注意力檢測場景為學生坐在電腦屏幕前,采用普通的低分辨率攝像頭抓取圖像,像素值約為30萬。首先通過攝像頭抓取圖像,然后進行人臉檢測,當連續超過一定時間閾值檢測不到人臉時,判定學習者已離開坐席,反之進入后續的頭部偏離檢測,頭部偏離不大(正視狀態)時檢測眼睛閉合特征和視線特征。每隔一段時間計算眼睛閉合幀數、頭部偏離幀數、視線偏離幀數占該時段內總幀數的比值,并綜合分析3個特征的比值結果判定學生是否分心。注意力檢測流程見圖1。
1.2人臉檢測
考慮到實時性要求,人臉檢測采用Adaboost算法實現。該算法使用harr-like特征表示人臉,并使用“積分圖”加快計算,再級聯多個弱分類器構造成一個強分類器提高檢測準確率[4]。本文的人臉檢測分類器利用OpenCV計算機視覺庫中基于該算法的haar分類器訓練得到。
1.3眼睛閉合檢測
采集到的眼睛截取圖片如圖2所示,上面兩幅為普通光照環境(光線明亮均勻,能夠清晰辨認人臉),第三幅為弱光環境。由二值化后的圖可知,使用低分辨率攝像頭時,檢測眼睛的虹膜(眼球中的黑色區域)大小比較困難,光照不佳時更明顯。
對于低分辨率攝像頭下的眼睛閉合檢測,一種可行方法是檢測眼睛區域二值化后的積分投影圖并計算虹膜大小[5]。然而實際檢測中在閉合時眼角點明顯會有很大干擾,導致垂直投影所得到的眼高有誤。故本文利用眼睛輪廓計算眼睛寬高比值,再進行眼睛閉合判別。
眼睛閉合檢測流程如圖3所示,為了縮小搜索范圍、加快計算速度,檢測到人臉后根據五官分布直接截取眼部圖片進行檢測;預處理包括直方均衡化和二值化處理,輪廓檢測使用OpenCV的輪廓檢測函數findContour,橢圓擬合處理主要通過擬合得到的橢圓獲取眼睛輪廓寬高比值,由最小二乘法擬合算法[6]實現。
由圖4可知,橢圓擬合有多個結果,且眼睛閉合時擬合得到的眼高與實際不符,因此需設定規則獲取正確的眼睛輪廓寬高值:①剔除長軸大小接近圖片寬度的橢圓;②剔除較小以及過大的橢圓;③剔除中心點過于靠近邊界區域的橢圓;④計算最終結果的橢圓區域面積與實際眼睛輪廓區域面積的比值。當比值過大時,由輪廓區域面積和擬合橢圓得到的寬度值計算實際的高度值。
典型的過濾結果如圖5所示。最后一幅圖中橢圓擬合的高度與實際明顯不符,且橢圓擬合的橢圓面積與實際輪廓面積比值超過一定閾值,需使用規則4計算實際輪廓大小。
計算得到眼睛輪廓寬高比值,當比值低于某一閾值(本文根據實驗分析,閾值取0.2)時,判定該幀圖片中眼睛為閉合狀態。當上述規則過濾后沒有結果時(檢測不到眼睛),同樣判定眼睛為閉合狀態。判定結果為眼睛閉合時,將程序中的眼睛閉合幀數統計值加1。
1.4視線檢測
已有的視線檢測方法通常采用灰度直方圖、LBP特征或傅里葉算子,提取人眼特征分析視線,這些方法主要基于人眼外觀特征,容易受到光線、膚色的影響[7-9]。本文的視線檢測方法通過分析虹膜中心相對于眼睛輪廓的位置關系判別視線。
1.4.1眼睛輪廓檢測
人眼輪廓檢測使用SDM檢測算法[10-12],它是當前檢測人臉特征點最流行的算法之一,速度快且穩定。該方法使用無參數的形狀模型和SIFT特征,從而在復雜環境下也能有很好的檢測效果。
圖6中的點為手工標記的人臉特征點,也是人臉特征點檢測中的最優解x,圖7中的點是初始化時的特征點x0。
1.4.2虹膜中心定位
為避免光照影響,本文利用圖像梯度信息獲取虹膜中心位置,原理為圓形物體的中心點可通過分析圖像上的梯度向量獲取中心點[13]。圖8是一個眼球模擬圖形。
圖8中,c代表可能的瞳孔位置,黑色圓以外區域為鞏膜區域(眼睛白色區域),該模型表示要求的圓心點與圖像梯度方向的關系,其中di為歸一化的位移矢量,gi為梯度向量,當c為真正的圓心時,di和gi有相同的位移矢量,反之兩者將存在一個夾角。
在強光條件下瞳孔會產生亮瞳反應,即在虹膜中心形成一個亮白點,計算出來的結果可能是一個最黑點或最白點,因此需要導入先驗知識:瞳孔通常比皮膚和鞏膜的顏色要深,給每一個可能的中心點c賦予一個權值wc,其中顏色深的權值高于較亮區域的權值,通過以下公式求取實際圓心:
實際的虹膜中心檢測結果如圖9所示,對于頭部偏轉不大時檢測效果良好。
1.4.3視線分析
當頭部處于正視、眼睛睜開的情況下,觀看不同區域時,主要變化為眼睛的睜開程度以及虹膜相對于眼睛輪廓的位置變化,如圖10所示。
簡化后的人眼如圖11所示。
圖12為提取出來的人眼輪廓寬高以及虹膜中心相對于人眼輪廓的位置關系。
由圖12提取以下特征參數:
利用這3個特征參數構成視線檢測的特征向量X(FeatureX,FeatureY,FeatureXY)。視線檢測由SVM訓練的分類器進行判別,SVM中傳入的特征向量為X,使用的樣本如圖13所示。將類別分為兩類:視線在電腦屏幕區域內的為正樣本,標記為A;視線在電腦屏幕區域外的為負樣本,標記為B。
注意力檢測程序對每一幀圖像進行視線偏離檢測。當檢測到視線偏離時,將視線偏離幀統計值加1。圖14為視線偏離檢測。
1.5頭部偏離檢測
頭部偏轉檢測通過預先建立三維模型,人工標定三維模型的臉部特征點,再隨機旋轉平移這些特征點之后,通過相機成像模型投影得到二維點,從而獲得二維臉部特征點到頭部姿態的映射。根據SDM檢測出來的人臉特征點通過線性回歸,可得到頭部偏轉角度[14-15]。
設定頭部偏轉角度超過左右35°時判定為頭部偏離。對每一幀圖像進行頭部偏轉檢測,當檢測到頭部偏離時,將程序中的頭部偏離幀統計值加1。頭部檢測效果如圖15所示。
1.6注意力檢測分析
根據上述檢測算法中閉眼幀數、頭部偏離幀數、視線偏離幀數統計值,每隔一段時間計算閉眼幀數、頭部偏轉幀數、視線偏離幀數占總幀數的比值。當比值超過一定閾值時即判定學生出現了分心情況。
該統計原理主要依據駕駛員疲勞檢測中常用的PERCLOS檢測算法[16],其定義為單位時間(一般取1min或者30s)內眼睛閉合一定比例(70%或80%)所占的時間,計算公式如下:
注意力檢測程序中,利用以上3個統計值,設計定時函數每隔3s,分別獨立計算該時段內的閉眼幀數、頭部偏離幀數、視線偏離幀數占該時段內總的幀數比值,并取3個比值中的最大值作為分心比值。當比值大于某一閾值時(實驗分析后設定為0.7)判別學生在該時段內出現分心情況。
2實驗設計與分析
2.1實驗設計
本文算法在VS2013+OpenCV環境下實現,運行于Inteli72.59GHz筆記本上,攝像頭為筆記本電腦自帶攝像頭,像素值24萬,操作系統為Win10。通過分析一段樣本視頻來實時檢測分析學生的注意力狀態,該視頻長度約為10分鐘,環境為普通光照環境。該采樣視頻要求學生在視頻前15秒保持學習狀態。為了獲得更好的檢測對比效果,學生無規律做出左顧右盼、眼睛閉合或視線偏離的分心動作,并在其中穿插認真學習的狀態。隨后使用單一的眨眼頻率特征和單一的頭部偏轉特征分析學習行為。結合眼睛閉合特征和頭部偏轉特征算法進行檢測,使用融合視線檢測的本文算法檢測該樣本視頻并進行對比分析。
2.2實驗結果及分析
根據上述設計獲取實驗數據后,選取其中區分較明顯的一部分數據構造曲線圖。圖17為單一眼睛閉合檢測和單一頭部偏轉檢測對比;圖18為多特征檢測,分別為眼睛閉合檢測加頭部偏轉檢測以及融合視線檢測的本文算法,利用多個特征中的最大分心比值作為最終結果判別學生是否分心。閾值取0.7,超過該閾值即判定學生在當前檢測時段注意力分散。
實驗分析結果如表1所示。
通過實驗分析,使用了融合視線檢測的本文算法后,如圖18和圖19所示,視線偏離的分心漏檢情況在加入視線檢測后能夠被有效檢測到,并給予了相應提示。
由表1可知,本文的注意力檢測準確率高達89.3%,相對于只使用了眨眼頻率特征和頭部偏轉特征的傳統方法,準確率有所提高,且明顯解決了視線偏離檢測不到的分心問題。
但本系統對于視線朝下的檢測效果不太理想,原因在于視線往下看時,眼睛表現為半睜開狀態,造成眼睛閉合特征檢測出現誤檢,以及虹膜相對于眼睛輪廓的位置變化只有幾個像素點,區分不明顯。
產生此問題原因在于圖像采集設備較為簡單,導致圖片質量不佳,此外采集的數據量不夠,分析有待完善。
3結語
融合視線特征的注意力檢測方法,適應于低分辨率攝像頭,實施簡單,對于學習過程中的瞌睡、視線偏離教學區域等分心行為都能有效檢測出來,整體檢測效果較好,具有較高的準確性和實用價值。對于視線檢測中視線朝下的區分不明顯問題及眼睛半睜開狀態的眼睛閉合誤檢問題,還需進一步優化改進。
參考文獻:
[1]余饒東.基于腦波與計算機視覺的注意力檢測技術在E-Learning中的應用研究[D].昆明:昆明理工大學,2015.
[2]盧希.學習者在線學習狀態檢測工具的設計與實現[D].武漢:華中科技大學,2016.
[3]吳滄海,熊煥亮,王映龍.遠程學習中學習狀態判斷的情感計算研究[J].軟件導刊:教育技術,2013,12(7):24-27.
[4]畢雪芹,惠婷.基于膚色分割與AdaBoost算法的人臉檢測[J].國外電子測量技術,2015(12):82-86.
[5]毛須偉,景文博,王曉曼,等.一種基于眼部狀態的疲勞駕駛檢測方法[J].長春理工大學學報:自然科學版,2016,39(2):125-130.
[6]KANATANIK,RANGARAJANP.Hyperleastsquaresfittingofcirclesandellipses[J].ComputationalStatistics&DataAnalysis;,2011,55(6):2197-2208.
[7]MANSOURYARM,STEILJ,SUGANOY,etal.3Dgazeestimationfrom2Dpupilpositionsonmonocularhead-mountedeyetrackers[C].BiennialACMSymposiumonEyeTrackingResearch&Applications.ACM;,2016:197-200.
[8]SATOY,SUGANOY,SUGIMOTOA,etal.Sensingandcontrollinghumangazeindailylivingspaceforhuman-harmonizedinformationenvironments[C].Human-HarmonizedInformationTechnology,Volume1.SpringerJapan,2016.
[9]FENGL,SUGANOY,OKABET,etal.Inferringhumangazefromappearanceviaadaptivelinearregression[C].InternationalConferenceonComputerVision,2011:153-160.
[10]CHENGY.Superviseddescentmethodbasedonappearanceandshapeforfacealignment[C].IEEEInternationalConferenceonServiceOperationsandLogistics,andInformatics,2016:184-189.
[11]XIONGX,TORREFDL.Superviseddescentmethodanditsapplicationstofacealignment[C].IEEEComputerVisionandPatternRecognition,2013:532-539.
[12]LICY,BALTRUSAITIST,MORENCYLP.Constrainedensembleinitializationforfaciallandmarktrackinginvideo[C].201712thIEEEInternationalConferenceonAutomaticFace&GestureRecognition;(FG2017),2017:697-704.
[13]TIMMF,BARTHE.Accurateeyecentrelocalisationbymeansofgradients[C].ProceedingsoftheSixthInternationalConferenceonComputerVisionTheoryandApplications,2015:125-130.
[14]DALALN,TRIGGSB.Histogramsoforientedgradientsforhumandetection[C].IEEEComputerSocietyConferenceonComputerVisionandPatternRecognition,2005:886-893.
[15]馬召賓.融合眼部特征及頭部姿態的實時疲勞駕駛檢測技術研究[D].濟南:山東大學,2016.
[16]陳恒惕,王進偉,丁云升,等.一種基于PERCLOS算法的汽車防疲勞駕駛枕設計[J].數字化用戶,2017,23(1):168-169.
(責任編輯:杜能鋼)