吳 迪, 馮曉婉, 宋家豪
(沈陽師范大學(xué) 物理科學(xué)與技術(shù)學(xué)院, 沈陽 110034)
受新冠疫情的影響,線上教學(xué)[1]已經(jīng)成為學(xué)生的重要補(bǔ)充學(xué)習(xí)模式之一。同時,隨著信息化和智能化的飛速發(fā)展,將信息技術(shù)融入教育教學(xué)推進(jìn)“教育+互聯(lián)網(wǎng)”[2]已經(jīng)成為教育教學(xué)的新常態(tài)。由于線上學(xué)習(xí)的學(xué)生缺乏教師監(jiān)督和指導(dǎo),師生互動性降低,學(xué)生的線上關(guān)注度下降,注意力分散[3]。因此,線上教學(xué)需實時檢測學(xué)生的關(guān)注度。
近年來, 人臉檢測已被廣泛應(yīng)用于教育教學(xué)、刷臉支付、安檢系統(tǒng)等諸多領(lǐng)域。 國內(nèi)外學(xué)者提出了許多人臉檢測方法, 如基于HOG特征的人臉檢測算法[4], ZHANG等[5]提出的MTCNN算法等。 人眼定位的方法包括基于人臉檢測和面部特征點的定位算法[6]、 灰度積分投影的定位算法[7]、 Hough變換的定位算法[8]等。 注意力是學(xué)生在線學(xué)習(xí)[9]、 眼動追蹤[10]、 疲勞駕駛[11-12]等方向的重要研究內(nèi)容。
綜上所述,本文設(shè)計了基于面部特征的線上關(guān)注度檢測與判斷方法。首先,采用Dlib庫檢測視頻圖像中的人臉和12個眼部特征點。其次,通過計算2個外眼角所在直線與水平線之間的傾斜角度,進(jìn)而分析人臉是否正視屏幕,對未正視屏幕的人臉圖像進(jìn)行矯正。在矯正的人臉圖像上獲取眼部特征點組成的灰度圖,求出虹膜和瞳孔區(qū)域,計算瞳孔中心位置。最后,通過瞳孔中心在眼部的位置判斷線上關(guān)注度。
本文基于Python程序設(shè)計語言、TensorFlow框架、OpenCV和Dlib庫處理獲取的視頻圖像。Dlib庫在正面人臉檢測和面部特征點定位方面,具有較好的效果。其中,dlib.get_frontal_face_detector人臉框位置檢測器和shape_predictor_68_face_landmarks.dat面部68個特征點檢測模型可以獲取人臉位置及面部特征點。圖1和圖2分別為利用Dlib庫檢測人臉位置的效果圖、基于人臉68個特征點模型對眼部12個特征點檢測和定位的效果圖。
在正常狀態(tài)下,由于受坐姿的影響,頭部左右偏轉(zhuǎn)的姿態(tài)在較大程度上影響眼部注意力狀態(tài)的判斷。因此,首先將實時采集的人臉圖像進(jìn)行矯正,然后獲取眼部圖像并判斷眼部注意力狀態(tài),可在一定程度上提高眼部注意力狀態(tài)的檢測精度。
利用式(1)計算左右眼睛2個外眼角所在直線與水平線之間的傾斜角度:
(1)
(a) 未矯正的人臉(b) 已矯正的人臉圖3 原圖Fig.3 Original image
由圖5可以看出,人臉矯正后,根據(jù)眼部特征點的坐標(biāo)獲取矩形眼部區(qū)域,在左右眼二值化圖像中求取面積最大的連通區(qū),即為虹膜和瞳孔區(qū)域。由于虹膜與眼睫毛的顏色相近且受上下眼瞼邊緣的影響,導(dǎo)致虹膜區(qū)域擴(kuò)大,從而影響虹膜和瞳孔區(qū)域中心位置的確定。
(a) 左右眼矩形眼部區(qū)域(b) 左右眼二值化(c) 左右眼虹膜區(qū)域
在已矯正的人臉圖像中,如果以人眼的6個特征點為頂點獲取眼部灰度圖像,可減小眼睫毛和眼瞼邊緣對虹膜和瞳孔區(qū)域定位的影響。首先將眼部灰度圖像進(jìn)行濾波、腐蝕、二值化等預(yù)處理,然后利用二值化圖像求出虹膜和瞳孔的區(qū)域,由于醫(yī)學(xué)上普遍認(rèn)為瞳孔位于虹膜中央[13],故將虹膜和瞳孔區(qū)域的中心作為瞳孔中心位置,如圖6所示。
(a) 原圖(b) 灰度化(c) 二值化(d) 虹膜和瞳孔區(qū)域(e) 瞳孔中心位置
眼睛的注視方向可用來判斷注意力是否集中,瞳孔位置是分析眼部注意力狀態(tài)的主要因素,通過計算瞳孔中心位于眼部圖像中的位置,可以判斷眼睛向左注視或向右注視,進(jìn)而確定眼睛是否正視屏幕。在圖7中:
圖7 眼部注意力狀態(tài)Fig.7 Attention state of the eye
1) 向左注視:d<0.45×w;
2) 向右注視:d>0.75×w;
3) 正視屏幕: 0.45×w 其中:d為瞳孔中心與圖像左側(cè)眼角之間的水平距離;w為內(nèi)眼角與外眼角之間的水平距離。如果連續(xù)3秒以上檢測到眼睛向左(右)注視,則判斷眼睛未正視屏幕,注意力分散。 線上關(guān)注度檢測主要對眼部注意力狀態(tài)進(jìn)行分析,即判斷瞳孔中心在眼部圖像中的位置。在BioID數(shù)據(jù)集中隨機(jī)選取面部無任何遮擋的300張人臉圖像并進(jìn)行測試,其中,274張圖像可以較好判斷出人眼正視屏幕、向右注視和向左注視,圖8展示了部分關(guān)注度測試結(jié)果。剩余的26張圖像中,由于光照、眼睛縱橫比小于眼睛閉合的臨界閾值[14-15]以及默認(rèn)閉眼等因素,未能準(zhǔn)確地判斷出眼部注意力狀態(tài),部分誤差測試結(jié)果如圖9所示。在300張圖像的實驗測試中,準(zhǔn)確率約為91.3%。 (a) 正視屏幕(b) 向右注視(c) 向左注視 (a) 瞳孔中心定位誤差(b) 默認(rèn)閉眼 實驗結(jié)果表明,在無任何遮擋的情況下,本文所設(shè)計的方法能夠較好地分析眼部注意力狀態(tài),有效地判斷學(xué)生線上學(xué)習(xí)的關(guān)注度。由于光照角度和面部遮擋等因素的影響,本文所設(shè)計的方法檢測精度降低,在未來的工作中將進(jìn)一步完善。4 測試結(jié)果及結(jié)論