荊洲++權(quán)偉++唐杰++晏寒
摘 要:為解決傳統(tǒng)課堂點名方式所帶來的耗時長、效率低、可靠性差等問題,本文分析并設(shè)計了一種基于人臉識別(FRT)的智能課堂點名系統(tǒng)。系統(tǒng)采用B/S結(jié)構(gòu),綜合使用Access數(shù)據(jù)庫技術(shù)、Web網(wǎng)頁設(shè)計技術(shù),以及C#編程技術(shù),統(tǒng)一了客戶端,將系統(tǒng)功能實現(xiàn)的核心部分集中到服務(wù)器上。本文對系統(tǒng)進(jìn)行了總體流程規(guī)劃,為保證實現(xiàn)系統(tǒng)功能,設(shè)計出人臉檢測程序、數(shù)據(jù)庫、網(wǎng)頁三個模塊。實驗結(jié)果表明,系統(tǒng)實用性強、便捷性好,較傳統(tǒng)點名方式簽到準(zhǔn)確率和課堂效率均得到明顯提高。
關(guān)鍵詞:人臉識別;智能課堂點名系統(tǒng);Web開發(fā);C#編程
中圖分類號:TP391 文獻(xiàn)標(biāo)識碼:A
1 引言(Introduction)
上課點名是教師督促學(xué)生學(xué)習(xí)、提高學(xué)生自覺性的一種基本方法,并能作為評定學(xué)生平時成績的依據(jù)之一。但傳統(tǒng)課堂紙質(zhì)點名方式既占用課堂時間;又影響教師教學(xué)積極性和學(xué)生求知熱情,降低課堂質(zhì)量。
本文分析并設(shè)計了一種基于人臉識別(FRT)的智能課堂點名系統(tǒng)。系統(tǒng)采用B/S結(jié)構(gòu)[瀏覽器(Browser)/服務(wù)器(Server)結(jié)構(gòu)]。B/S結(jié)構(gòu)的用戶界面是通過瀏覽器來實現(xiàn)的,并且瀏覽器界面只承擔(dān)少量邏輯運算,大部分指令邏輯交由服務(wù)器完成。在這種模式下,減少了瀏覽器界面的運行負(fù)荷,有利于系統(tǒng)維護(hù)和升級改造[1]。瀏覽器通過Web Server同Access數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交互,Access既可以用于小型數(shù)據(jù)庫系統(tǒng)開發(fā),又可以作為大中型數(shù)據(jù)庫應(yīng)用系統(tǒng)的輔助數(shù)據(jù)庫或組成部分。Access將數(shù)據(jù)庫信息與Web結(jié)合,可以更方便地共享跨越各種平臺和不同用戶級別的數(shù)據(jù)[2]。本文采用Asp.net開發(fā)平臺進(jìn)行Web設(shè)計。Asp.net在執(zhí)行的過程中,能夠使用VB和C#等多種編程語言,并能夠?qū)⑵渚幾g成能夠被解釋的MSIL程序語言,這就為中層語言的執(zhí)行功能提供了多種語言的使用權(quán)限,大大增強了其使用優(yōu)勢[3]。
上課點名是學(xué)校教學(xué)管理中必不可少的手段之一,隨著科技的進(jìn)步和發(fā)展,不少高校采用新的方式或系統(tǒng)進(jìn)行點名。美國佛羅里達(dá)的一所學(xué)校通過掃描指紋的方式點名,英國郡伊利市的一所社區(qū)學(xué)院通過用紅外線掃描學(xué)生人臉進(jìn)行識別的方式點名;國內(nèi)有的學(xué)校將RFID即無線射頻識別技術(shù)與SMART CARD結(jié)合進(jìn)行點名,有的學(xué)校通過短信貓接收學(xué)生短信進(jìn)行點名等。這些點名方式或系統(tǒng)都借助了專有設(shè)備進(jìn)行點名,不僅成本高,推廣難,操作流程也十分不便[4]。為解決上述問題,本文綜合應(yīng)用人臉識別技術(shù)、圖形處理技術(shù)、匯編語言技術(shù)、網(wǎng)站制作技術(shù)等,設(shè)計出人臉檢測程序、數(shù)據(jù)庫、網(wǎng)頁并將三者互聯(lián),形成一個完整系統(tǒng)。本系統(tǒng)的研發(fā)可上課時間得到更加充分的利用,便于教師授課,節(jié)省寶貴的課堂時間,提升課堂效率。系統(tǒng)操作界面方便、檢索信息迅速、查找方便、可靠性高、易推廣。
2 智能課堂點名系統(tǒng)方案設(shè)計(Design of the
intelligent student attendance system)
現(xiàn)有的課堂智能點名系統(tǒng)結(jié)構(gòu)形式都很簡單,主要突出了對sttuts的應(yīng)用和替簽現(xiàn)象的解決,在數(shù)據(jù)庫方面沒有完全達(dá)到“智能”[5]。本文所設(shè)計的基于人臉識別的智能課堂點名系統(tǒng)是一種結(jié)構(gòu)嚴(yán)謹(jǐn)、邏輯性強的系統(tǒng),其方案流程為:
教師或攝像頭拍攝課堂照片并上傳至系統(tǒng)網(wǎng)站。網(wǎng)站中的人臉識別程序利用大小可變的矩形框框定照片中人臉圖像,將其提取、存檔至以時間命名的文件夾中,同時更新數(shù)據(jù)庫的對應(yīng)內(nèi)容。學(xué)生登錄系統(tǒng),跳轉(zhuǎn)至學(xué)生簽到界面,依據(jù)學(xué)期、課程代碼和簽到次數(shù)進(jìn)行查詢,檢索出本次簽到的人臉圖像表。學(xué)生在呈現(xiàn)的表格中識別自己的人臉圖像,選定圖像后提交,網(wǎng)頁將自動依據(jù)GridView中被選定的按鈕對應(yīng)行的人臉圖像地址捕捉,通過登錄頁面?zhèn)鬟f的各項基準(zhǔn)信息,利用update語句更新相應(yīng)數(shù)據(jù)庫表格中學(xué)生的簽到圖片地址。當(dāng)學(xué)生誤選人臉圖像時,可再次選擇人臉圖像;當(dāng)學(xué)生發(fā)現(xiàn)自己實到卻無自己人臉圖像,可前往查詢頁面查詢本次點名大圖,觀察人臉識別程序是否切割出其人臉;當(dāng)學(xué)生誤選人臉圖像并發(fā)現(xiàn)自己實到卻無自己人臉圖像,可通過重置按鈕清空數(shù)據(jù)庫對應(yīng)內(nèi)容后前往查詢頁面查詢。出現(xiàn)上述幾類情況時,學(xué)生可向教師留言報錯;同時,教師在收到學(xué)生報錯的留言后,可進(jìn)入查詢頁面查看大圖進(jìn)行判斷,告知留言學(xué)生簽到情況無誤或確定其出勤。教師通過查看學(xué)生選定的人臉圖像結(jié)果和該生對應(yīng)的教務(wù)圖像信息,根據(jù)二者是否一致,判斷簽到者是否為學(xué)生本人,勾選確定按鈕,最終提交更新,以此作為評定學(xué)生平時成績的依據(jù)。管理員根據(jù)情況定期維護(hù)。
具體的系統(tǒng)流程圖如圖1所示。
3 系統(tǒng)軟件的設(shè)計和實現(xiàn)(Design and implementation
of system software)
3.1 人臉識別程序設(shè)計
作為系統(tǒng)的核心部分,人臉識別程序的研發(fā)顯得尤為重要。通常所說的人臉檢測就是從給定的圖像或視頻中判定人臉的數(shù)目、位置和大小[6]。人臉檢測系統(tǒng)輸入可能包含人臉的圖片,輸出在圖片切割出的人臉圖像信息。
在實際人臉圖像處理過程中,人臉圖像的遮擋會經(jīng)常出現(xiàn),如頭發(fā)、口罩、圍巾等,而遮擋對人臉識別有很大的影響。如何準(zhǔn)確、自動地檢測人臉遮擋區(qū)域成為遮擋人臉識別處理的關(guān)鍵問題之一[7]。
實現(xiàn)人臉識別的方法多種多樣,我們選擇基于Emgu CV的環(huán)境利用熟知的C#語言進(jìn)行設(shè)計、開發(fā)。Emgu CV是一個跨平臺的、封裝Open CV的圖像處理庫,因其可靠性高、易于配置被廣泛應(yīng)用。人臉識別程序設(shè)計過程為:在Visual Studio操作界面中適配Emgu CV環(huán)境,調(diào)用haarcascade_frontalface_default.xml圖形庫進(jìn)行識別,利用大小可變的矩形框體框定照片中人臉圖像,如圖2所示,將其提取、存檔至以時間命名的文件夾中,同時更新數(shù)據(jù)庫的對應(yīng)內(nèi)容。
3.2 數(shù)據(jù)庫設(shè)計
本文根據(jù)課堂實際點名情況,在access數(shù)據(jù)庫中建立6個基本信息表格,具體內(nèi)容如表1所示。
表1 數(shù)據(jù)庫表
Tab.1 Database table
表格名稱 表格內(nèi)容
簽到記錄表
(tb_CheckInRecords) 本表記錄了學(xué)生簽到和對應(yīng)的教師確認(rèn)信息,以學(xué)生學(xué)號為主鍵對應(yīng)的學(xué)期、課程代碼、選定的人臉圖像信息和雙方的留言等內(nèi)容
人臉圖像存儲表
(tb_Course2Images) 為保存每次課堂由人臉識別程序提取出的圖像信息,制作本表保存對應(yīng)的提取圖像和其所在課程、學(xué)期、點名次數(shù)的大圖
課程信息表(tb_Courses) 本四張表格分別登記和記錄課程信息,學(xué)生基本信息和登錄賬戶,教師基本信息和登錄賬戶,以及管理員登錄賬戶,便于網(wǎng)頁設(shè)置權(quán)限和定期維護(hù)
學(xué)生信息表(tb_Students)
教師信息表(tb_Teacher)
管理員信息表(tb_Users)
3.3 網(wǎng)頁設(shè)計
網(wǎng)頁前端設(shè)計采用html5+css3技術(shù),創(chuàng)建了基于bootstrap的扁平化網(wǎng)頁,其界面美觀,動畫效果流程,有質(zhì)感。html5具有以下優(yōu)點:(1)提高可用性和改進(jìn)用戶的友好體驗;(2)可移植性好。css3可以使用新的定制設(shè)計的選擇器和屬性,這些變化改進(jìn)不但使得以往特定效果需要實現(xiàn)的代碼得到了顯著優(yōu)化,還可以設(shè)計出眾多新式的客戶端特效[8]。網(wǎng)頁后端設(shè)計采用Asp.net技術(shù),Asp.net完全基于模塊與組件,其可擴(kuò)展性好、可定制性強,采用Asp.net技術(shù)開發(fā)可有效縮短Web應(yīng)用程序的開發(fā)時間。
由于網(wǎng)頁訪問頻率很高,如每次訪問都要重新動態(tài)生成,嚴(yán)重影響其訪問的效率。如果采用數(shù)據(jù)緩存技術(shù),將全部或部分?jǐn)?shù)據(jù)暫時存放在內(nèi)存中(或硬盤緩存區(qū)),頁面上不變的數(shù)據(jù)可以直接從緩存中取用,這樣就可以大大提高數(shù)據(jù)訪問的效率[9]。
3.3.1 登錄頁面
登錄人員輸入賬號密碼,選定身份類型登錄;網(wǎng)頁調(diào)用數(shù)據(jù)庫判斷是否跳轉(zhuǎn),并通過賬號密碼為基準(zhǔn)調(diào)用登錄人員的檢索信息,如學(xué)號或工號,作為其他網(wǎng)頁互聯(lián)的數(shù)據(jù)基準(zhǔn),存入網(wǎng)頁緩存區(qū)。
3.3.2 學(xué)生簽到頁面
登錄人員為學(xué)生時,網(wǎng)頁自動跳轉(zhuǎn)至本頁面。學(xué)生依據(jù)學(xué)期、課程代碼和簽到次數(shù)查詢,檢索出本次簽到的人臉圖像表。后臺實現(xiàn)過程為:通過Selcet語句(Select語句是SQL中的數(shù)據(jù)查詢命令,具有非常強大的數(shù)據(jù)查詢功能,在access中可以使用Select語句來實現(xiàn)數(shù)據(jù)的查詢操作[10]),在tb_Course2Images表格中篩選相應(yīng)人臉圖像表列,呈現(xiàn)在網(wǎng)頁中,如圖3所示。
學(xué)生在呈現(xiàn)的表列中識別自己的人臉圖像,選定圖像并提交,網(wǎng)頁將自動依據(jù)GridView中按下的選定按鈕所在行對應(yīng)的人臉圖像地址捕捉,依據(jù)登錄頁面?zhèn)鬟f的各項基準(zhǔn)信息,利用update語句更新tb_CheckInRecords表格中該生簽到圖片地址,等候教師登錄確認(rèn)。
當(dāng)提交有誤時,學(xué)生可直接選擇正確的人臉圖像,按下提交按鈕;或通過重置按鈕直接清空對應(yīng)單元格中的地址信息,再次選擇。當(dāng)學(xué)生發(fā)現(xiàn)自己實到卻無自己人臉圖像時,若已誤選,可通過重置按鈕清空對應(yīng)單元格中地址信息后,前往查詢頁面查詢本次點名大圖,觀察是否人臉識別程序未切割出人臉,或者教師誤拍;出現(xiàn)此類情況時,學(xué)生可向教師留言報錯,教師可根據(jù)實際情況進(jìn)行回復(fù)和更改。
3.3.3 教師確認(rèn)頁面
在學(xué)生簽到選擇這一環(huán)節(jié)完成后,教師登錄到本頁面,依據(jù)學(xué)期、課程代碼和簽到次數(shù)進(jìn)行查詢,網(wǎng)頁通過調(diào)用數(shù)據(jù)庫tb_CheckInRecords表格,將查詢生成的表格反饋到本頁面呈現(xiàn),如圖4所示。教師通過查看學(xué)生選定的人臉圖像結(jié)果和該生對應(yīng)的教務(wù)圖像信息,根據(jù)二者是否一致,判斷簽到者是否為學(xué)生本人,進(jìn)行逐個確認(rèn),最終提交更新,作為評定學(xué)生平時成績的依據(jù)。
為應(yīng)對兩種特殊情況(a.同一人臉圖像被多個學(xué)生勾選;b.收到學(xué)生留言),設(shè)計者為本頁面添加了回復(fù)按鈕。按下回復(fù)按鈕時,網(wǎng)頁向tb_CheckInRecords表中的TeacherMsg列中寫入信息,用于教師告知相應(yīng)學(xué)生誤勾,并提示該生登錄學(xué)生簽到頁面重新勾選;同時,教師在收到學(xué)生報錯留言后,可選擇進(jìn)入查詢頁面,查看大圖進(jìn)行判斷,告知留言學(xué)生簽到情況無誤或確定其出勤。回復(fù)按鈕實現(xiàn)了教師、學(xué)生在網(wǎng)頁上的交互,凸顯了系統(tǒng)人性化、智能化特色。
3.3.4 查詢頁面
本頁面分為兩個部分,分別對應(yīng)學(xué)生查詢和教師查詢。
當(dāng)學(xué)生需了解自己的簽到信息時,可根據(jù)自己想查詢的內(nèi)容在Textbox中輸入相應(yīng)查詢條件,網(wǎng)頁根據(jù)Textbox的返回值和登錄頁面保存的該生基準(zhǔn)數(shù)據(jù)生成對應(yīng)的SQL語句,與后臺數(shù)據(jù)庫管理系統(tǒng)建立連接、提取數(shù)據(jù)、斷開連接,最后將檢索結(jié)果以二維數(shù)組的形式返回給調(diào)用者[11],顯示在GridView中。同時,學(xué)生查詢頁面中包含查看大圖選項,對應(yīng)于學(xué)生簽到頁面的報錯查詢,保證簽到的準(zhǔn)確性,如圖5所示。
當(dāng)教師收到學(xué)生留言時,可進(jìn)入教師查詢頁面,查出該生的基本信息和他反饋的相應(yīng)簽到信息,如該次簽到大圖。查看大圖后,教師可跳轉(zhuǎn)到教師確認(rèn)頁面對此進(jìn)行回復(fù)。若教師想了解課程相關(guān)簽到信息,在輸入查詢條件后,網(wǎng)頁根據(jù)緩存的教師基準(zhǔn)信息查詢數(shù)據(jù)庫,調(diào)出相關(guān)信息顯示于GridView控件中呈現(xiàn)給教師,如教師可查詢出他所教授的某門課程下所有學(xué)生的簽到信息。
圖5 查詢頁面
Fig.5 Query page
3.3.5 管理員頁面
管理員可以通過自身的最高權(quán)限,修改學(xué)生信息資料。如學(xué)生姓名、學(xué)生照片、學(xué)生性別和學(xué)生所在班級等。管理員輸入學(xué)生學(xué)號進(jìn)行查詢,即可看到完整的學(xué)生信息表格。
在學(xué)生信息表末端,點擊編輯按鈕,網(wǎng)頁將學(xué)生信息置入各文本標(biāo)簽,選中任意一個標(biāo)簽,即可在此標(biāo)簽中修改相應(yīng)信息;為保護(hù)學(xué)生安全,管理員不能修改學(xué)生登錄密碼,其他信息均可以修改,又由于查詢條件(學(xué)生學(xué)號)屬性被設(shè)為只讀,故管理員只可修改除學(xué)生學(xué)號和學(xué)生登錄密碼以外的信息。修改相應(yīng)信息后更新,后臺會將網(wǎng)頁信息讀入數(shù)據(jù)庫,完成信息的更新。點擊刪除按鈕,可直接在網(wǎng)頁刪除數(shù)據(jù)庫中的相應(yīng)學(xué)生信息。
4 結(jié)論(Conclusion)
智能課堂點名系統(tǒng)充分結(jié)合了智能識別技術(shù)、計算機技術(shù)和網(wǎng)絡(luò)技術(shù),可有效提高高校教務(wù)管理的智能化與信息化水平。課題所涉及的人臉識別、網(wǎng)頁開發(fā)技術(shù)是智能識別系統(tǒng)研究的熱點,所采用的技術(shù)成熟、應(yīng)用性和移植性強;系統(tǒng)開發(fā)基于流行的軟件架構(gòu),利于實現(xiàn);系統(tǒng)結(jié)構(gòu)和設(shè)計清晰,功能明確,操作簡單。本課題的研究和設(shè)計成果可為高校管理的智能化和信息化建設(shè)提供有益的借鑒和參考。但是本文設(shè)計的人臉識別程序在實際使用時,識別準(zhǔn)確率還有待提高??紤]到實際需要,需在原有基礎(chǔ)上隨時做出調(diào)整,實現(xiàn)難度較大,部分軟件版權(quán)要求高,使用上還存在一定困難。
從全文分析可看出:通過人臉識別程序、數(shù)據(jù)庫、網(wǎng)頁的綜合開發(fā),科學(xué)、高效處理課堂點名的各類問題,系統(tǒng)將逐步改變傳統(tǒng)點名方式的格局,響應(yīng)大數(shù)據(jù)時代的背景。如今,管理智能化、信息化已成為一種潮流,必須以大數(shù)據(jù)的思維,才能充分利用大數(shù)據(jù)的優(yōu)勢,使教務(wù)教學(xué)系統(tǒng)良性發(fā)展,提高課堂效率、增強教學(xué)質(zhì)量。
參考文獻(xiàn)(References)
[1] Ji Huiwen.Analysis for B/S and C/S Structures[J].Electronic technology & Software engineering,2017:202.
[2] Zhang Tian,Li Xuefei.Development and application of the database of four row cylindrical roller bearing based on access[J].Bearing,2017,3:60-63.
[3] Hu erxidaimu·Yi Miti.Analysis and comparison of ASP and ASP.NET[J].China Computer&Communication,
2015,18:69-70.
[4] 王竹君.基于人臉檢測的移動點名系統(tǒng)研究與實現(xiàn)[D].云南:云南大學(xué),2014.
[5] 王姍.課堂智能點名系統(tǒng)[D].南陽:南陽理工學(xué)院,2011.
[6] 王攀,李少波.基于膚色和FBLBP算法的人臉檢測[J].計算機與發(fā)展,2017,27(1):44-47.
[7] 王志一,楊大利.人臉識別中發(fā)型遮擋檢測方法研究[J].微型機與應(yīng)用,2016,35(2):32-34.
[8] 白蕾,郭清菊.HTML5與CSS3的設(shè)計模式[J].智能計算機與應(yīng)用,2015,6(2):104-109.
[9] 張衛(wèi)明.ASP_NET2_0緩存技術(shù)在動態(tài)網(wǎng)頁設(shè)計中的應(yīng)用[J].軟件導(dǎo)刊,2010,9(12):138-139.
[10] 李凌春.淺談Access中Select語句的應(yīng)用[J].湖北經(jīng)濟(jì)學(xué)院學(xué)報(人文社會科學(xué)版),2012,9(7):133-134.
[11] 梅炳夫.基于ASP的通用網(wǎng)頁查詢函數(shù)的設(shè)計[J].現(xiàn)代計算機(專業(yè)版),2008:131-132.
作者簡介:
荊 洲(1996-),男,本科生.研究領(lǐng)域:電氣工程及其自動化.
權(quán) 偉(1982-),男,博士,講師.研究領(lǐng)域:控制科學(xué)與工程. 本文通訊作者.
唐 杰(1997-),男,本科生.研究領(lǐng)域:電氣工程及其自動化.
晏 寒(1995-),男,本科生.研究領(lǐng)域:電氣工程及其自動化.