吳 迪,董雪晴,馮曉婉
(沈陽師范大學 物理科學與技術學院,沈陽 110034)
2020年年初的疫情導致學生無法按期開學,為不延誤課程,教育部支持學校開展線上教學活動,確?!巴Un不停學”[1]。但疫情沖擊下流行起來的線上授課方式是利弊共存的,優(yōu)點是教師可遠距離、無接觸完成教學任務,缺點是對于自律性差的學生,家長需要一直監(jiān)督學生線上學習,這極大影響了家長的工作和生活[2]。因此,在線上授課期間需要利用電子產品自動監(jiān)督學生的聽課狀態(tài)。
近年,隨著人工智能技術的發(fā)展,人臉檢測成為人工智能應用開發(fā)中一項基礎且重要的研究內容,例如人臉識別打卡[3]、人臉表情識別[4]等。而深度學習作為當前的研究熱點,也早已被應用到人臉檢測之中,基于深度學習的人臉檢測算法模型已有許多,例如Faster R-CNN[5],SSD[6],MTCNN[7]等。人眼狀態(tài)檢測依賴于人臉檢測,通過人臉檢測結合人眼定位先驗知識[8]可得到人眼圖像,以不同方法處理和分析人眼圖像,可檢測不同的人眼狀態(tài)[9-12]。疲勞駕駛檢測[13]技術正是通過分析人眼圖像中人眼的閉合程度,檢測駕駛員是否處于疲勞狀態(tài)[14-15]。本文綜合上述諸多因素,針對線上課堂學生的聽課狀態(tài),設計了基于多任務卷積神經網絡(MTCNN)的人眼狀態(tài)檢測與判斷系統(tǒng),在線上課堂教師授課過程中,判斷學生人眼關注點是否放在屏幕兩側,從而確定學生是否認真聽課。
MTCNN采用了Viola-Jones檢測器[16]中的級聯(lián)概念,級聯(lián)3個CNN,分別是Proposal Network(P-Net),Refine Network(R-Net),Out Network(O-Net)。在MTCNN模型結構中,P-Net用于獲取人臉區(qū)域候選窗口和邊界框回歸向量,利用邊界框回歸對候選窗口進行校準,通過非極大值抑制(NMS)合并高度重合的候選框;R-Net在前者基礎上丟棄錯誤的候選窗口,使用邊界框回歸校準候選窗口,通過NMS合并高度重合的候選框;O-Net與R-Net相似,但O-Net描述更多人臉細節(jié),并輸出5個人臉特征點。
MTCNN模型訓練用不同類型的數(shù)據(jù)學習3個不同的任務:利用Negative和Positive數(shù)據(jù)訓練人臉與非人臉的分類;利用Positive和Part faces數(shù)據(jù)訓練邊界框回歸;利用Landmark face數(shù)據(jù)訓練特征點定位。
1)人臉檢測是一個分類任務,使用交叉熵損失函數(shù):
2)邊界框回歸(bounding box regression)是一個回歸問題,使用歐式距離計算回歸損失:
3)特征點定位是回歸問題,同樣使用歐式距離計算回歸損失:
實驗設備是一臺普通筆記本電腦,具體配置:處理器Intel Core i3,顯示適配器NVIDA GeForce 710 M,內存4.0 GB,操作系統(tǒng)Windows 8。如下為人眼狀態(tài)檢測與判斷系統(tǒng)流程圖:
圖1 人眼狀態(tài)檢測與判斷系統(tǒng)流程圖Fig.1 Flow chart of human eye state detection and judgment system
設置視頻顯示窗口像素為500×500。視頻經過MTCNN模型檢測得到實時人臉框和人臉特征點的位置信息以及人臉置信度值(Score),在顯示窗口中畫出人臉框,并標記置信度值和5個特征點位置,如圖2所示;根據(jù)人眼特征點位置信息、人臉框位置信息和人眼定位先驗知識,可得式(1):
圖2 人臉框圖Fig.2 Face block
(1)
這里:(x,y)是人眼特征點坐標;(sx,sy)與(ex,ey)分別是人臉框左上點坐標和右下點坐標;(SX,SY)與(EX,EY)分別是矩形人眼框左上點坐標和右下點坐標。由式(1)可得人眼框相對于整個視頻幀的坐標,再根據(jù)矩形人眼框坐標信息在視頻幀中獲取人眼圖3。
圖3 人眼圖Fig.3 Human eye map
由于已獲人眼框的中心位置無法準確反映人眼的中心位置,因此,在已獲人眼框的基礎上進行人眼提純。將人眼框內的人眼圖像進行灰度化處理。在灰度圖中分別以豎直和水平方向選取2條穿過虹膜中心的線,摘取2條線上像素點的像素值,并向坐標軸進行投影(圖5)。根據(jù)圖5(a)和圖5(b)中2條投影曲線中像素值隨坐標變化的趨勢,選擇適當像素閾值對灰度圖做二值化處理,得到圖4(a),其中黑色區(qū)域為眼睛輪廓和虹膜。以人眼左右眼角點的橫坐標作提純框的初、末橫坐標,以虹膜區(qū)域最高點和最低點的縱坐標作提純框的初、末縱坐標,得到提純人眼框坐標。圖4(b)為提純人眼。提純的人眼中心位置能夠準確地反映人眼的中心點。
圖4 眼睛提純過程圖Fig.4 Eye purification process chart
圖5 投影曲線圖Fig.5 Projection graph
對提純后得到的人眼圖像進行灰度二值化處理,二值化閾值選擇小于人眼提純中的閾值,盡可能排除眼睛輪廓的像素點,保留虹膜區(qū)域的像素點,得到圖6。
圖6 灰度-二值化圖Fig.6 Grayscale-binary image
根據(jù)式(2)計算的虹膜中心大致位置(虹膜中心),即圖7人眼中標記的紅點。
圖7 虹膜中心Fig.7 Iris center
(2)
這里:(xi,yi)表示像素點i的坐標;Sum(X,Y)是所有像素值為0的像素點的坐標總和;n表示像素值為0的像素點個數(shù)。利用已得到的虹膜中心位置與提純的人眼中心位置計算二者之間距離:
(3)
其中:D表示虹膜中心與提純人眼中心之間的距離;(x,y)表示虹膜中心位置;(mx,my)表示提純人眼中心位置。設置適當虹膜中心至人眼中心的閾值距離,若虹膜大致停留在人眼中心,即虹膜中心與提純人眼中心的距離小于閾值距離,代表人眼的關注點放在屏幕上;若虹膜距人眼中心較遠,即虹膜中心與提純人眼中心距離大于閾值距離,則表示人眼的關注點在屏幕兩側,即表示學生一定沒有認真觀看屏幕中播放的內容。
實驗條件:非過亮或過暗的光線環(huán)境,人臉及人眼無任何遮擋。實驗測試規(guī)則:設置初始值為0的計數(shù)變量k,當檢測到虹膜中心點與提純人眼中心點之間的距離(D)大于閾值距離(DT)時開始計數(shù),k值加1,即k=k+1;若連續(xù)5張(5 s)人眼圖像均為D>DT,即當k=5時,則表示人眼狀態(tài)異常,提示警告;否則表示人眼狀態(tài)正常,不作提示。
表1中選取了2幅提純后的人眼圖像,藍點表示提純人眼中心點,紅點表示虹膜中心點。比較系統(tǒng)計算的2個中心點距離與利用畫圖軟件獲取的2個中心點坐標人為計算距離,2個值之間相差較小,不影響判斷效果,所以系統(tǒng)計算的距離結果可信度高。
表1 人為與系統(tǒng)計算距離對比表Table 1 Comparison of man-made and systematic distances
表2中展示了3組人眼圖像及其圖像中心點與虹膜中心點之間的距離。表中第1組、第3組圖像寬度范圍在40~50像素,對應的閾值距離為4.5像素;第2組圖像寬度范圍在30~40像素,對應的閾值距離為3個像素。比較2個中心點距離與閾值距離,得出系統(tǒng)判斷的人眼狀態(tài)結果。系統(tǒng)判斷的人眼狀態(tài)與直觀感受得到的人眼狀態(tài)一致,因此文中利用人眼中心點與虹膜中心點之間距離判斷人眼狀態(tài)的結果可靠。
表2 人眼狀態(tài)判斷Table 2 Human eye state judgement
本文主要設計了基于MTCNN的人眼狀態(tài)檢測與判斷系統(tǒng)。根據(jù)MTCNN模型檢測得到正面人臉的人臉框及人臉特征點的位置信息,結合人眼定位的先驗知識,得到了粗略的人眼圖像,再利用灰度二值化處理人眼圖像,結合處理后圖像的像素值分布特點,提純了人眼圖像,并得到準確的人眼中心點以及大致的虹膜中心點,最后通過計算二者之間的距離,實現(xiàn)了人眼關注點是否落在屏幕中的判斷。實驗結果表明,該方法能夠有效判斷學生在線上課堂聽課時是否關注屏幕。