姜麗莉 王澍廷
摘? 要:借助于計(jì)算機(jī)視覺(jué)與模式識(shí)別技術(shù),主要探討智慧課堂中人臉識(shí)別考勤和課堂行為分析等技術(shù),通過(guò)Jakarta EE平臺(tái),設(shè)計(jì)并開(kāi)發(fā)智慧課堂分析系統(tǒng),實(shí)現(xiàn)課堂考勤、課堂督查以及課堂分析。提出了一種適用于學(xué)習(xí)分析的專注度評(píng)估方法。該方法給出了出勤率、抬頭率、疲勞程度的計(jì)算方法,并建立了綜合評(píng)估學(xué)生的課堂專注度的模型。系統(tǒng)可以實(shí)現(xiàn)對(duì)學(xué)生上課數(shù)據(jù)的采集與自動(dòng)分析,并生成面向校方與老師的可視化數(shù)據(jù)報(bào)表。
關(guān)鍵詞:人臉識(shí)別;智慧課堂;Jakarta EE
中圖分類號(hào):TP311 ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2096-4706(2022)04-0024-04
Design and Implementation of Smart Classroom Analysis System?Based on Face Recognition
JIANG Lili, Wang Shuting
(Nanjing Tech University Pujiang Institute, Nanjing? 211200, China)
Abstract: With the help of computer vision and pattern recognition technology, this paper mainly discusses the technologies of face recognition attendance and classroom behavior analysis and so on in smart classroom. Through Jakarta EE platform, this paper designs and develops smart classroom analysis system to realize classroom attendance, classroom supervision and classroom analysis. A focus evaluation method suitable for learning analysis is proposed. This method gives the calculation methods of attendance rate, head up rate and fatigue degree, and establishes a model for comprehensively evaluating students classroom concentration degree. The system can realize the collection and automatic analysis of students class data, and generate visual data reports for the school and teachers.
Keywords: face recognition; smart classroom; Jakarta EE
0? 引? 言
智慧課堂是順應(yīng)如今教育信息化發(fā)展戰(zhàn)略應(yīng)運(yùn)而生的新興教學(xué)模式,其核心特征在于教學(xué)決策的數(shù)據(jù)化,體現(xiàn)在教學(xué)過(guò)程依賴于教學(xué)中的客觀數(shù)據(jù),方便教師有的放矢地開(kāi)展更具針對(duì)性的教學(xué)工作,推動(dòng)以學(xué)定教[1]。
隨著計(jì)算機(jī)視覺(jué)和機(jī)器學(xué)習(xí)技術(shù)的蓬勃發(fā)展,利用人臉識(shí)別、表情識(shí)別等技術(shù),可以將學(xué)校教學(xué)領(lǐng)域中存在的海量影響教學(xué)質(zhì)量的各相關(guān)要素,進(jìn)行動(dòng)態(tài)的數(shù)據(jù)采集與分析,實(shí)現(xiàn)對(duì)學(xué)生課堂表現(xiàn)的數(shù)據(jù)化存檔,以輔助學(xué)情分析與學(xué)習(xí)分析工作的開(kāi)展。
課堂教學(xué)存在海量的高價(jià)值學(xué)習(xí)行為數(shù)據(jù),但這些客觀數(shù)據(jù)仍然存在利用率低下的問(wèn)題。教育學(xué)一直在吸納并利用各類先進(jìn)技術(shù)輔助學(xué)情分析和學(xué)習(xí)分析,以便于為包括學(xué)生、教師和學(xué)校等相關(guān)者提供更好的教學(xué)環(huán)境[2]。近些年來(lái),學(xué)情分析的理論研究表明,教學(xué)設(shè)計(jì)的起點(diǎn)應(yīng)該是學(xué)生情況而非教學(xué)規(guī)律,教學(xué)只有針對(duì)具體的學(xué)生個(gè)體才有意義,不僅應(yīng)關(guān)注學(xué)生受教育后的結(jié)果,也應(yīng)重視學(xué)生受教育前的狀態(tài)。
1? 系統(tǒng)分析與技術(shù)方案
1.1? 系統(tǒng)分析
本系統(tǒng)主要面對(duì)教師與教務(wù)人員,考慮到系統(tǒng)的易用性角度,需要提供網(wǎng)頁(yè)端應(yīng)用與后臺(tái)管理頁(yè)面以方便用戶操作,同時(shí)需要提供一定的操作引導(dǎo)方式,保障操作便捷。
考慮到后期維護(hù)角度,需要保障系統(tǒng)的高內(nèi)聚性與低耦合性,并進(jìn)行適當(dāng)?shù)哪K化,使得系統(tǒng)功能調(diào)整時(shí)無(wú)需對(duì)系統(tǒng)結(jié)構(gòu)進(jìn)行大規(guī)模重構(gòu)。
本文所設(shè)計(jì)的系統(tǒng)是典型的B/S架構(gòu)的應(yīng)用程序。借助于目前成熟的數(shù)據(jù)庫(kù)與Web應(yīng)用程序開(kāi)發(fā)的技術(shù)方案,足以實(shí)現(xiàn)包括服務(wù)器部署、界面設(shè)計(jì)等大部分功能。另一方面,本文所設(shè)計(jì)的課堂評(píng)估方法需要借助于人臉檢測(cè)、人臉識(shí)別、表情識(shí)別等技術(shù),目前均有成熟的研究方法與技術(shù)方案。
1.2? 人臉檢測(cè)及識(shí)別模型
本文的人臉檢測(cè)技術(shù)選用RetinaFace模型[3]。RetinaFace是目前對(duì)不同尺寸的人臉圖像的識(shí)別率最高、識(shí)別精度最高的人臉檢測(cè)模型之一,其基于RetinaNet模型[4]的結(jié)構(gòu),采用圖像特征金字塔技術(shù)實(shí)現(xiàn)了單步人臉檢測(cè)。其核心思想是在圖像特征金字塔中設(shè)計(jì)有三個(gè)檢測(cè)分支,步長(zhǎng)分別為32、16和8,在特征圖上具有不同的感受野,以檢測(cè)不同尺度的人臉圖像。
本文的人臉識(shí)別技術(shù)選用InsightFace模型[4]。InsightFace模型是目前識(shí)別速度和識(shí)別精度兼具極高的開(kāi)源人臉識(shí)別模型,其核心思想在于考慮到在人臉識(shí)別的決策邊界中,角度距離因素對(duì)角度判斷的影響相比于余弦距離因素更加直接,通過(guò)對(duì)AmSoftmax模型[5]進(jìn)行改進(jìn),使用角度距離替代了AmSoftmax模型中的余弦距離,并改造了ResNet網(wǎng)絡(luò)[6]的內(nèi)部結(jié)構(gòu),使之更加適用于對(duì)人臉圖像的訓(xùn)練。InsightFace中同樣使用了FocalLoss[4]作為損失函數(shù),可以有效緩解因類別不平衡問(wèn)題所導(dǎo)致的識(shí)別精度低下的問(wèn)題,而InsightFace作為單步識(shí)別算法,具有較快的識(shí)別速度。1DD1D306-C2F8-4C4A-8C29-7F0A4C45C252
2? 系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
2.1? 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)架構(gòu)
本系統(tǒng)在網(wǎng)絡(luò)拓?fù)浼軜?gòu)設(shè)計(jì)中,采取內(nèi)外網(wǎng)結(jié)合的架設(shè)模式,即服務(wù)器部署于校園網(wǎng)內(nèi)部核心網(wǎng)中,由于內(nèi)網(wǎng)的網(wǎng)絡(luò)環(huán)境安全,允許教務(wù)用戶通過(guò)內(nèi)網(wǎng)直接訪問(wèn)服務(wù)器;由于外網(wǎng)環(huán)境中存在一定的不可控的安全風(fēng)險(xiǎn),需要在內(nèi)外網(wǎng)之間架設(shè)企業(yè)級(jí)防火墻,對(duì)外部潛在的非法訪問(wèn)進(jìn)行過(guò)濾,以確保數(shù)據(jù)完整性與安全性,為用戶提供安全可靠的服務(wù),系統(tǒng)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示。
2.2? 邏輯架構(gòu)層次設(shè)計(jì)
根據(jù)系統(tǒng)總體需求,本系統(tǒng)采用微服務(wù)架構(gòu)[7]設(shè)計(jì)為五層:表現(xiàn)層、網(wǎng)關(guān)層、業(yè)務(wù)層、持久層、基礎(chǔ)設(shè)施,如圖2所示。微服務(wù)架構(gòu)是新興的模塊化企業(yè)級(jí)應(yīng)用架構(gòu)設(shè)計(jì),基于微服務(wù)架構(gòu)的軟件體系結(jié)構(gòu)將傳統(tǒng)SOA單體應(yīng)用依據(jù)其業(yè)務(wù)需求將其模塊化,拆分為可以獨(dú)立運(yùn)作、互相協(xié)作的一組服務(wù)。這種面向業(yè)務(wù)需求的應(yīng)用體系結(jié)構(gòu)可以有效提高業(yè)務(wù)模塊的高內(nèi)聚性與低耦合性,并易于拓展[8]。
2.3? 功能設(shè)計(jì)
如圖3所示。智慧課堂分析系統(tǒng)設(shè)計(jì)時(shí),依照功能需求,劃分為以下功能模塊:(1)信息管理。信息管理包括對(duì)學(xué)生的學(xué)號(hào)、姓名、班級(jí)等信息,班級(jí)的名稱、專業(yè)、學(xué)院等信息,專業(yè)的名稱、學(xué)院等信息,學(xué)院的名稱等信息,教師的姓名等信息,課程的名稱、學(xué)生等信息,課時(shí)的默認(rèn)教室、默認(rèn)時(shí)間、授課教師,教室的名稱、監(jiān)控等信息的管理功能。(2)監(jiān)控管理。監(jiān)控管理包括監(jiān)控管理以及視頻流采集等功能。監(jiān)控管理包括對(duì)監(jiān)控信息的增刪查改,以及視頻流播放等子功能。視頻流采集是系統(tǒng)根據(jù)教室信息記錄的監(jiān)控?cái)z像頭的ip地址,連接到對(duì)應(yīng)攝像頭進(jìn)行視頻流錄制。(3)人像標(biāo)識(shí)。人像標(biāo)識(shí)包括圖像預(yù)處理、人像檢測(cè)以及人像標(biāo)識(shí)等功能。圖像預(yù)處理是對(duì)視頻流按一定時(shí)間間隔進(jìn)行視頻幀提取,并進(jìn)行預(yù)處理,以便后續(xù)檢測(cè)與識(shí)別工作。人像檢測(cè)是依據(jù)本文所選用的人臉檢測(cè)算法,對(duì)課堂圖像中的學(xué)生進(jìn)行檢測(cè),并將檢測(cè)結(jié)果提取分割并保存。人像標(biāo)識(shí)包括身份標(biāo)識(shí)、疲勞標(biāo)識(shí)以及情緒標(biāo)識(shí)等子功能,采用本文所選的方法標(biāo)識(shí)對(duì)人像對(duì)應(yīng)的識(shí)別信息。(4)數(shù)據(jù)報(bào)告。數(shù)據(jù)報(bào)告由系統(tǒng)依據(jù)課堂圖像標(biāo)識(shí)的結(jié)果,對(duì)學(xué)生的出勤情況、抬頭率、疲勞程度、表情等課堂數(shù)據(jù)進(jìn)行匯總統(tǒng)計(jì),并自動(dòng)生成高可讀性報(bào)告。數(shù)據(jù)報(bào)告可以學(xué)生、班級(jí)、專業(yè)、學(xué)院、教師、課程以及課時(shí)為單位呈現(xiàn)給用戶查看。(5)系統(tǒng)管理。系統(tǒng)管理負(fù)責(zé)對(duì)系統(tǒng)用戶、用戶角色、角色權(quán)限等方面的管理功能,并提供系統(tǒng)日志追蹤的服務(wù),以便在數(shù)據(jù)異常時(shí)可以按照日志進(jìn)行數(shù)據(jù)恢復(fù)。
2.4? 課堂評(píng)估方法設(shè)計(jì)
課堂評(píng)估方法設(shè)計(jì)內(nèi)容有:
(1)抬頭率評(píng)估。通過(guò)評(píng)估學(xué)生的抬頭率可以有效反映授課過(guò)程中學(xué)生的聽(tīng)課狀態(tài)。本文選定每間隔一定時(shí)間對(duì)教室監(jiān)控的視頻流進(jìn)行截圖,并對(duì)截取的圖像進(jìn)行一次人臉檢測(cè)與識(shí)別,被識(shí)別出的學(xué)生人臉視為抬頭。
為統(tǒng)計(jì)每個(gè)學(xué)生的抬頭情況,可以認(rèn)為學(xué)生的個(gè)人抬頭率r是學(xué)生個(gè)人被識(shí)別的總次數(shù)t與系統(tǒng)在課時(shí)中的總識(shí)別次數(shù)T的比值,如公式(1)所示。
(1)
同時(shí),可以認(rèn)為班級(jí)整體的抬頭率R是每一次人臉識(shí)別中識(shí)別出的總?cè)四様?shù)Ni與總學(xué)生數(shù)N的比值的均值,如公式(2)所示。
(2)
(2)疲勞度評(píng)估。評(píng)估授課過(guò)程中學(xué)生的疲勞程度可以直接反映學(xué)生的聽(tīng)課狀態(tài)。PERCLOS原理[9]是20世紀(jì)80年代由卡內(nèi)基梅隆研究所提出的通過(guò)眼睛睜閉情況評(píng)估人的疲勞程度的方法,其定義為對(duì)象在單位時(shí)間內(nèi)眼睛閉合一定比例所占的時(shí)間tc與總時(shí)間t的比值,當(dāng)時(shí)間比超過(guò)一定閾值時(shí),如70%,可視為對(duì)象疲勞。其定義表達(dá)式如公式(3)所示。
(3)
而對(duì)于視頻流,可以認(rèn)為截取的圖片幀數(shù)與時(shí)間時(shí)長(zhǎng)存在一一對(duì)應(yīng)關(guān)系,因此在視頻流中可將時(shí)間比轉(zhuǎn)化為幀數(shù)比,據(jù)此可以判斷,當(dāng)眼睛閉合的總幀數(shù)fc占總幀數(shù)f的比值越高,則可視為疲勞程度越嚴(yán)重,如公式(4)所示。
(4)
(3)表情分?jǐn)?shù)評(píng)估。評(píng)估學(xué)生的上課表情可以有效反應(yīng)學(xué)生的聽(tīng)課效率。根據(jù)第4章所選用的表情識(shí)別方法,可以對(duì)學(xué)生在課堂中的平靜、皺眉、驚訝等關(guān)鍵表情進(jìn)行識(shí)別,則可以對(duì)學(xué)生上課過(guò)程中出現(xiàn)的表情進(jìn)行評(píng)分,如平靜的權(quán)重設(shè)為0.7,皺眉與驚訝的權(quán)重設(shè)為1,其他情緒的權(quán)重設(shè)為0.5。由此,通過(guò)加權(quán)求和可以得到學(xué)生i的情緒評(píng)分si,如公式(5)所示。
(5)
其中Wj是第j種表情的權(quán)重,Eij是學(xué)生i的第j種表情的頻率。
對(duì)所有分?jǐn)?shù)進(jìn)行歸一化處理,得到最終分?jǐn)?shù),如公式(6)所示。
(6)
其中,S=UNsN是學(xué)生課堂表情評(píng)分的樣本空間,N是學(xué)生總數(shù)。
(4)專注度評(píng)估。通過(guò)對(duì)學(xué)生上課時(shí)的出勤考核、抬頭率評(píng)估、疲勞度評(píng)估以及表情分?jǐn)?shù)評(píng)估,可以綜合評(píng)估出學(xué)生的上課專注度。考慮到出勤率、抬頭率、疲勞度等因素均與課堂專注度呈正相關(guān)關(guān)系,本文對(duì)學(xué)生x的課堂專注度A(x)的評(píng)估方法如公式(7)所示。
A(x)=norm(a(x)· r(x)· PERCLOS(x)· z(x))? ?(7)
其中a(x)是學(xué)生在該堂課中的出勤分?jǐn)?shù),全勤為1,否則為0;r(x)是學(xué)生的抬頭率;PERCLOS(x)是學(xué)生的疲勞度;z(x)是學(xué)生的上課表情分?jǐn)?shù)。
2.5? 系統(tǒng)開(kāi)發(fā)環(huán)境與關(guān)鍵功能實(shí)現(xiàn)
2.5.1? 系統(tǒng)開(kāi)發(fā)環(huán)境
為確保系統(tǒng)能順利實(shí)現(xiàn)、安裝與調(diào)試,需要對(duì)系統(tǒng)開(kāi)發(fā)環(huán)境進(jìn)行充分的準(zhǔn)備工作,本文所設(shè)計(jì)的智慧課堂分析系統(tǒng)的系統(tǒng)開(kāi)發(fā)環(huán)境如表1所示。
2.5.2? 關(guān)鍵功能實(shí)現(xiàn)
關(guān)鍵功能實(shí)現(xiàn)的內(nèi)容有:
(1)學(xué)生詳情。學(xué)生詳情界面如圖4所示。系統(tǒng)在學(xué)生詳情頁(yè)面會(huì)顯示學(xué)生的姓名、學(xué)號(hào)、班級(jí)、專業(yè)、學(xué)院等信息,同時(shí)會(huì)給出學(xué)生過(guò)去一個(gè)月內(nèi)的出勤情況,以及各個(gè)課程中的平均疲勞度、抬頭率與專注度。1DD1D306-C2F8-4C4A-8C29-7F0A4C45C252
(2)數(shù)據(jù)報(bào)告板。數(shù)據(jù)報(bào)告板是本系統(tǒng)的核心功能,負(fù)責(zé)呈現(xiàn)系統(tǒng)所收集并分析后的數(shù)據(jù),如圖5所示。系統(tǒng)在這個(gè)界面提供了出勤情況、疲勞度、抬頭率以及課堂專注度的全局?jǐn)?shù)據(jù)圖表,可以方便地讓系統(tǒng)用戶一覽學(xué)校內(nèi)的課堂情況。
3? 結(jié)? 論
在智慧課堂分析系統(tǒng)的設(shè)計(jì)過(guò)程中,基于當(dāng)下學(xué)情分析與學(xué)習(xí)分析對(duì)教育信息化、現(xiàn)代化的數(shù)據(jù)挖掘與分析的需求作為背景,并結(jié)合了當(dāng)下先進(jìn)的信息技術(shù)理念,包含微服務(wù)架構(gòu)、鑒權(quán)授權(quán)、深度學(xué)習(xí)等。設(shè)計(jì)與實(shí)現(xiàn)的智慧課堂分析系統(tǒng)的目的,旨在解決學(xué)校教學(xué)環(huán)境中課堂教學(xué)評(píng)估數(shù)據(jù)收集中依然以人工為主的管理模式的問(wèn)題,提高管理效率,為教育現(xiàn)代化提供信息化保障。
圖5? 數(shù)據(jù)報(bào)告板界面
參考文獻(xiàn):
[1] 劉邦奇.“互聯(lián)網(wǎng)+”時(shí)代智慧課堂教學(xué)設(shè)計(jì)與實(shí)施策略研究 [J].中國(guó)電化教育,2016(10):51-56+73.
[2] 邵燕楠,黃燕寧.學(xué)情分析:教學(xué)研究的重要生長(zhǎng)點(diǎn) [J].中國(guó)教育學(xué)刊,2013(2):60-63.
[3] DENG J K,GUO J,ZHOU Y X,et al.RetinaFace:Single-stage Dense Face Localisation in the Wild [J/OL].arXiv:1905.00641 [cs.CV].[2021-12-03].https://arxiv.org/abs/1905.00641.
[4] DENG J K,GUO J,XUE N N,et al.ArcFace:Additive Angular Margin Loss for Deep Face Recognition [J/OL].arXiv:1801.07698 [cs.CV].[2021-12-06].https://arxiv.org/abs/1801.07698.
[5] LU Z,PU H M,WANG F C,et al.The Expressive Power of Neural Networks:A View from the Width [J/OL].arXiv:1709.02540 [cs.LG].[2021-12-08].https://arxiv.org/abs/1905.00641.
[6] HE K,ZHANG X,REN S,et al.Deep Residual Learning for Image Recognition[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition(CVPR).Las Vegas:CVPR,2016:770-778.
[7] 辛園園,鈕俊,謝志軍,等.微服務(wù)體系結(jié)構(gòu)實(shí)現(xiàn)框架綜述 [J].計(jì)算機(jī)工程與應(yīng)用,2018,54(19):10-17.
[8] 易文康,程驊,程耕國(guó).Shiro框架在Web系統(tǒng)安全性上的改進(jìn)與應(yīng)用 [J].計(jì)算機(jī)工程,2018,44(11):135-139.
[9] DINGES D F,GRACE R.PERCLOS:A Valid Psychophysiological Measure of Alertness as Assessed by Psychomotor Vigilance [J].Tech Brief,1998,31(5):1237-1252.
作者簡(jiǎn)介:姜麗莉(1985—),女,漢族,江蘇徐州人,講師,碩士,研究方向:深度學(xué)習(xí)、數(shù)據(jù)挖掘、軟件工程;王澍廷(1998—),男,漢族,廣東深圳人,本科,研究方向:深度學(xué)習(xí)、軟件工程。1DD1D306-C2F8-4C4A-8C29-7F0A4C45C252