劉元慶,朱丹丹
(徐州市教育局,江蘇 徐州 221000)
在互聯(lián)網(wǎng)時(shí)代背景下,OpenCV 人臉識(shí)別技術(shù)應(yīng)運(yùn)而生,該技術(shù)憑借著自身非接觸性、非強(qiáng)制性、并發(fā)性等特點(diǎn),被廣泛地應(yīng)用于智能考試系統(tǒng)設(shè)計(jì)中,可以構(gòu)建出系統(tǒng)、完善的人臉識(shí)別流程,實(shí)現(xiàn)對(duì)管理員、教師和學(xué)生的人臉識(shí)別和身份驗(yàn)證,促使在線(xiàn)考試變得更加智能化、高效化,為用戶(hù)帶來(lái)良好的使用體驗(yàn)[1]。 因此,在OpenCV 人臉識(shí)別技術(shù)的應(yīng)用背景下,如何科學(xué)設(shè)計(jì)智能考試系統(tǒng)是技術(shù)人員必須思考和解決的問(wèn)題。
系統(tǒng)需求分析作為智能考試系統(tǒng)設(shè)計(jì)基礎(chǔ)內(nèi)容,在正式進(jìn)入系統(tǒng)設(shè)計(jì)之前,技術(shù)人員要從以下兩個(gè)維度出發(fā),做好對(duì)系統(tǒng)需求分析[2]。 (1)用戶(hù)需求分析。該系統(tǒng)所涉及的用戶(hù)主要包含管理員用戶(hù)、教師用戶(hù)和學(xué)生用戶(hù)。 用戶(hù)類(lèi)型不同,其系統(tǒng)需求也存在的一定的差異。 (2)功能需求分析。 系統(tǒng)功能主要包含身份驗(yàn)證模塊、管理員模塊、教師模塊、在線(xiàn)考試模塊等模塊,技術(shù)人員要重點(diǎn)做好對(duì)這些功能模塊的設(shè)計(jì)和實(shí)現(xiàn),以保證用戶(hù)的使用體驗(yàn)。
該系統(tǒng)主要包含以下三大模塊:(1)管理員模塊。管理員主要負(fù)責(zé)對(duì)系統(tǒng)的嚴(yán)格化管理,其管理內(nèi)容主要包含對(duì)系統(tǒng)題庫(kù)的維護(hù)以及人員個(gè)人信息的收集、管理,如學(xué)生信息管理、試題信息管理、考試結(jié)果管理等[3]。 (2)教師模塊。 教師作為系統(tǒng)的核心工作人員,除了負(fù)責(zé)對(duì)題庫(kù)信息的有效更新外,還負(fù)責(zé)引導(dǎo)學(xué)生快速、高效地查詢(xún)所需要的信息。 (3)在線(xiàn)考試模塊。該模塊為學(xué)生的網(wǎng)絡(luò)化考試提供了比較智能化的服務(wù)體驗(yàn),便于學(xué)生更好地驗(yàn)證個(gè)人身份信息。 因此,該模塊在實(shí)際設(shè)計(jì)期間,要加強(qiáng)對(duì)人臉識(shí)別功能的設(shè)計(jì)和實(shí)現(xiàn)。 當(dāng)該系統(tǒng)各個(gè)功能模塊被有效確定后,完成對(duì)系統(tǒng)數(shù)據(jù)庫(kù)的科學(xué)設(shè)計(jì)以及相關(guān)數(shù)據(jù)模型的構(gòu)建。
智能考試系統(tǒng)在具體的設(shè)計(jì)中,主要涉及了管理員模塊、教師模塊和在線(xiàn)考試模塊,系統(tǒng)功能結(jié)構(gòu)如圖1 所示,從圖1 中可以看出,該系統(tǒng)主要包含學(xué)生信息管理功能、試題信息管理功能、科目信息管理功能、考試結(jié)果管理功能等功能。 總之,管理員模塊、教師模塊和在線(xiàn)考試模塊三種模塊之間存在相輔相成、相互聯(lián)系等關(guān)系,技術(shù)人員要嚴(yán)格按照如圖1 所示的功能結(jié)構(gòu)圖,保證系統(tǒng)各大功能模塊的實(shí)現(xiàn)效果,從而為用戶(hù)提供更加的優(yōu)質(zhì)的服務(wù)體驗(yàn)[4]。
圖1 智能考試系統(tǒng)總體功能模塊
身份驗(yàn)證算法流程如圖2 所示,從圖2 中可以看出,在進(jìn)行身份信息驗(yàn)證期間,首先,要借助攝像頭,實(shí)現(xiàn)對(duì)管理員、學(xué)生人臉圖像的自動(dòng)化、精確化采集;然后,對(duì)其進(jìn)行人臉檢測(cè),并對(duì)檢測(cè)好的人臉區(qū)域進(jìn)行標(biāo)定處理;最后,從這些人臉區(qū)域中,提取出眼睛、鼻子、嘴巴三大特征點(diǎn),同時(shí),針對(duì)定位好的特征點(diǎn),科學(xué)校正人臉的角度和位置。 在此基礎(chǔ)上,對(duì)人臉識(shí)別器進(jìn)行科學(xué)訓(xùn)練,將最終訓(xùn)練結(jié)果與數(shù)據(jù)庫(kù)存儲(chǔ)的人臉樣本進(jìn)行科學(xué)的比對(duì)。 比對(duì)成功說(shuō)明登錄成功,否則,說(shuō)明登錄失?。?]。
圖2 身份驗(yàn)證算法流程
另外,還要借助OpenCV 全面檢測(cè)攝像頭所采集到的人臉圖像,然后,使用矩形框?qū)θ四槇D像進(jìn)行標(biāo)定,標(biāo)定結(jié)果。 OpenCV 在設(shè)計(jì)系統(tǒng)人臉識(shí)別功能期間,主要用到了FaceRecognizer 類(lèi),該類(lèi)重點(diǎn)集成和應(yīng)用了具有典型性的人臉識(shí)別算法,采用手工制作的方式,完成對(duì)人臉圖像訓(xùn)練樣本集的制定,樣本集含有5 個(gè)人,每人所對(duì)應(yīng)的圖像共3 幅,這些樣本集經(jīng)過(guò)組合,形成了人臉數(shù)據(jù)庫(kù)。
3.2.1 管理員登錄功能規(guī)劃與具體實(shí)現(xiàn)
管理員登錄功能作為該系統(tǒng)的常用功能,主要是指管理員通過(guò)向系統(tǒng)中輸入正確的賬號(hào)、密碼,獲取相應(yīng)的管理員權(quán)限,以達(dá)到正常訪問(wèn)和使用智能考試系統(tǒng)的目的。 該功能在具體的設(shè)計(jì)中,需要管理員在系統(tǒng)登錄界面輸入正確的賬號(hào)、密碼。 此時(shí),該系統(tǒng)會(huì)自動(dòng)啟用內(nèi)部TextBox 組價(jià),對(duì)管理員所輸入的賬號(hào)、密碼信息進(jìn)行接收,對(duì)這些程序進(jìn)行編寫(xiě)處理,確保這些信息與數(shù)據(jù)庫(kù)之間建立起有效的連接。 當(dāng)連接成功后,系統(tǒng)會(huì)自動(dòng)接收處理用戶(hù)所輸入的賬號(hào)字符串,便于管理員更好地開(kāi)展賬號(hào)字段查詢(xún)工作,全面地分析和判斷用戶(hù)當(dāng)前所處的查詢(xún)狀態(tài)。 如果查詢(xún)狀態(tài)顯示“成功”,說(shuō)明該賬號(hào)字段被系統(tǒng)得以全方位、精確化查詢(xún)。 此時(shí),系統(tǒng)會(huì)根據(jù)賬號(hào)字段內(nèi)容,完成對(duì)相應(yīng)密碼字段的反饋,并將最終的反饋結(jié)果與用戶(hù)所輸入的密碼字段進(jìn)行比對(duì),如果比對(duì)成功,說(shuō)明該用戶(hù)擁有管理員的登錄身份。
3.2.2 管理員添加教師信息功能具體實(shí)現(xiàn)
要想確保管理員在使用該系統(tǒng)期間,能夠快捷有效地添加教師信息,技術(shù)人員要嚴(yán)格遵循以下設(shè)計(jì)流程:(1)需要在系統(tǒng)的指定界面位置處,設(shè)置多個(gè)文本框,該文本框與數(shù)據(jù)庫(kù)內(nèi)教師字段存在一一對(duì)應(yīng)的關(guān)系。 (2)還要利用TextBox 控件,完成對(duì)教師字段信息的有效接收和管理,并確保相關(guān)程序與數(shù)據(jù)庫(kù)之間能夠建立起良好的連接關(guān)系。 (3)當(dāng)連接關(guān)系構(gòu)建成功后,用戶(hù)可以使用數(shù)據(jù)庫(kù),完成對(duì)教師表的快捷化插入和保存。 當(dāng)數(shù)據(jù)表插入成功后,說(shuō)明教師信息添加功能得以有效設(shè)計(jì)和實(shí)現(xiàn)。 該功能模塊在具體的設(shè)計(jì)中,主要運(yùn)用了ADO.Net 技術(shù),以實(shí)現(xiàn)對(duì)conn 對(duì)象的構(gòu)建。
3.3.1 教師瀏覽信息功能具體實(shí)現(xiàn)
在具體的設(shè)計(jì)中,教師瀏覽信息功能將相關(guān)試題表定位到指定的教師操作界面中。 用戶(hù)對(duì)界面中的瀏覽按鈕進(jìn)行點(diǎn)擊。 此時(shí),系統(tǒng)會(huì)自動(dòng)運(yùn)行相關(guān)程序,與數(shù)據(jù)庫(kù)之間建立起有效的連接。 當(dāng)連接成功后,教師可以借助數(shù)據(jù)庫(kù),實(shí)現(xiàn)對(duì)試題表中所需字段信息的精確化查詢(xún),從而達(dá)到瀏覽操作試題信息的目的。
3.3.2 教師成績(jī)查詢(xún)功能具體實(shí)現(xiàn)
教師成績(jī)查詢(xún)功能主要是指教師向系統(tǒng)登錄界面中輸入正確的賬號(hào)、密碼,然后,采用以下兩種方式,實(shí)現(xiàn)對(duì)學(xué)生成績(jī)的精確化查詢(xún),一種是學(xué)生姓名搜索方式,另一種是考試得分范圍搜索方式,與傳統(tǒng)手動(dòng)搜索方式相比,該系統(tǒng)的搜索功能具有一定的高效性和智能性。
在整個(gè)系統(tǒng)中,學(xué)生使用頻率最高。 學(xué)生幾乎在每學(xué)期都會(huì)頻繁用到該系統(tǒng)。 為此,技術(shù)人員要重視對(duì)學(xué)生注冊(cè)功能的開(kāi)設(shè)和實(shí)現(xiàn)。 學(xué)生注冊(cè)功能主要是指學(xué)生在正式使用該系統(tǒng)之前,要采用注冊(cè)審核的方式,完成對(duì)個(gè)人登錄信息的填寫(xiě)和注冊(cè)。 該功能模塊的具體設(shè)計(jì)流程如下:首次登錄系統(tǒng)的學(xué)生點(diǎn)擊系統(tǒng)界面上的“注冊(cè)”按鈕后,會(huì)自動(dòng)進(jìn)入學(xué)生注冊(cè)界面。此時(shí),系統(tǒng)通過(guò)利用TextBox 控件,對(duì)學(xué)生所提交的信息進(jìn)行全面讀取和接收,然后,利用ASP 技術(shù)不斷提高操作水平,便于學(xué)生在使用系統(tǒng)期間能夠規(guī)范化地輸入注冊(cè)信息,并確保編寫(xiě)好的程序與數(shù)據(jù)庫(kù)之間建立起有效的連接。 當(dāng)連接成功后,系統(tǒng)會(huì)利用數(shù)據(jù)庫(kù)自動(dòng)完成對(duì)學(xué)生賬號(hào)字段的精確化、快捷化查詢(xún)。 經(jīng)過(guò)查詢(xún),如果所提交的賬號(hào)申請(qǐng)信息與數(shù)據(jù)庫(kù)內(nèi)的字段存在一一對(duì)應(yīng)的關(guān)系,說(shuō)明數(shù)據(jù)庫(kù)已經(jīng)保存過(guò)該用戶(hù)的登錄信息,數(shù)據(jù)庫(kù)無(wú)需對(duì)這些信息進(jìn)行再次保存;反之,需要嚴(yán)格按照所設(shè)置好的字段信息,將學(xué)生新提交的注冊(cè)申請(qǐng)信息插入指定的數(shù)據(jù)表中,此時(shí),頁(yè)面會(huì)顯示“申請(qǐng)成功”。 學(xué)生注冊(cè)算法流程,如圖3所示。
圖3 學(xué)生注冊(cè)算法流程
綜上所述,在OpenCV 人臉識(shí)別技術(shù)的應(yīng)用背景下,本文針對(duì)高校教師和學(xué)生個(gè)性化使用需求,根據(jù)系統(tǒng)需求分析結(jié)果,完成對(duì)智能考試系統(tǒng)的各大功能模塊的科學(xué)設(shè)計(jì)和開(kāi)發(fā)。 該系統(tǒng)所取得的設(shè)計(jì)成果如下:(1)通過(guò)將OpenCV 人臉識(shí)別技術(shù)與智能考試系統(tǒng)設(shè)計(jì)進(jìn)行充分結(jié)合。 在正式進(jìn)入考試之前,高校需要借助該系統(tǒng),將學(xué)生的臉部信息安全、可靠地存入系統(tǒng)數(shù)據(jù)庫(kù)中,然后,采用人臉識(shí)別的方式,對(duì)學(xué)生的登錄信息進(jìn)行驗(yàn)證。 在正式考試期間,攝像頭會(huì)將當(dāng)前所讀取的學(xué)生面部信息與系統(tǒng)數(shù)據(jù)庫(kù)已存儲(chǔ)的學(xué)生面部信息進(jìn)行比對(duì),如果比對(duì)成功,可允許考生進(jìn)入考場(chǎng)進(jìn)行考試,反之,則取消學(xué)生考試權(quán)限,從而避免出現(xiàn)替考現(xiàn)象。 (2)確定系統(tǒng)基本框架。 該系統(tǒng)通過(guò)采用B/S 設(shè)計(jì)模式,提高系統(tǒng)的層次感,便于工作人員能夠更好地升級(jí)和維護(hù)系統(tǒng)。 (3)完成對(duì)系統(tǒng)數(shù)據(jù)庫(kù)的科學(xué)設(shè)計(jì)。 該系統(tǒng)在全面分析教師和學(xué)生使用需求的基礎(chǔ)上,確定正確的系統(tǒng)設(shè)計(jì)目標(biāo),然后,科學(xué)地規(guī)劃和設(shè)計(jì)系統(tǒng)數(shù)據(jù)庫(kù),從而實(shí)現(xiàn)對(duì)管理員基本情況表、教師基本情況表、學(xué)生基本情況表、試題基本情況表、考試科目基本情況表、考試記錄基本情況表等數(shù)據(jù)表的科學(xué)設(shè)計(jì),使得各個(gè)數(shù)據(jù)表之間的依賴(lài)關(guān)系得以有效地明確,為統(tǒng)一化、規(guī)范化管理智能考試相關(guān)數(shù)據(jù)打下堅(jiān)實(shí)的基礎(chǔ)。 (4)設(shè)計(jì)和開(kāi)發(fā)系統(tǒng)核心功能模塊。 本文完成了對(duì)該系統(tǒng)的身份驗(yàn)證模塊、管理員模塊、教師模塊、在線(xiàn)考試模塊等模塊的科學(xué)設(shè)計(jì),完全符合實(shí)際應(yīng)用需求。