劉元慶,朱丹丹
(徐州市教育局,江蘇 徐州 221000)
在互聯網時代背景下,OpenCV 人臉識別技術應運而生,該技術憑借著自身非接觸性、非強制性、并發性等特點,被廣泛地應用于智能考試系統設計中,可以構建出系統、完善的人臉識別流程,實現對管理員、教師和學生的人臉識別和身份驗證,促使在線考試變得更加智能化、高效化,為用戶帶來良好的使用體驗[1]。 因此,在OpenCV 人臉識別技術的應用背景下,如何科學設計智能考試系統是技術人員必須思考和解決的問題。
系統需求分析作為智能考試系統設計基礎內容,在正式進入系統設計之前,技術人員要從以下兩個維度出發,做好對系統需求分析[2]。 (1)用戶需求分析。該系統所涉及的用戶主要包含管理員用戶、教師用戶和學生用戶。 用戶類型不同,其系統需求也存在的一定的差異。 (2)功能需求分析。 系統功能主要包含身份驗證模塊、管理員模塊、教師模塊、在線考試模塊等模塊,技術人員要重點做好對這些功能模塊的設計和實現,以保證用戶的使用體驗。
該系統主要包含以下三大模塊:(1)管理員模塊。管理員主要負責對系統的嚴格化管理,其管理內容主要包含對系統題庫的維護以及人員個人信息的收集、管理,如學生信息管理、試題信息管理、考試結果管理等[3]。 (2)教師模塊。 教師作為系統的核心工作人員,除了負責對題庫信息的有效更新外,還負責引導學生快速、高效地查詢所需要的信息。 (3)在線考試模塊。該模塊為學生的網絡化考試提供了比較智能化的服務體驗,便于學生更好地驗證個人身份信息。 因此,該模塊在實際設計期間,要加強對人臉識別功能的設計和實現。 當該系統各個功能模塊被有效確定后,完成對系統數據庫的科學設計以及相關數據模型的構建。
智能考試系統在具體的設計中,主要涉及了管理員模塊、教師模塊和在線考試模塊,系統功能結構如圖1 所示,從圖1 中可以看出,該系統主要包含學生信息管理功能、試題信息管理功能、科目信息管理功能、考試結果管理功能等功能。 總之,管理員模塊、教師模塊和在線考試模塊三種模塊之間存在相輔相成、相互聯系等關系,技術人員要嚴格按照如圖1 所示的功能結構圖,保證系統各大功能模塊的實現效果,從而為用戶提供更加的優質的服務體驗[4]。

圖1 智能考試系統總體功能模塊
身份驗證算法流程如圖2 所示,從圖2 中可以看出,在進行身份信息驗證期間,首先,要借助攝像頭,實現對管理員、學生人臉圖像的自動化、精確化采集;然后,對其進行人臉檢測,并對檢測好的人臉區域進行標定處理;最后,從這些人臉區域中,提取出眼睛、鼻子、嘴巴三大特征點,同時,針對定位好的特征點,科學校正人臉的角度和位置。 在此基礎上,對人臉識別器進行科學訓練,將最終訓練結果與數據庫存儲的人臉樣本進行科學的比對。 比對成功說明登錄成功,否則,說明登錄失敗[5]。

圖2 身份驗證算法流程
另外,還要借助OpenCV 全面檢測攝像頭所采集到的人臉圖像,然后,使用矩形框對人臉圖像進行標定,標定結果。 OpenCV 在設計系統人臉識別功能期間,主要用到了FaceRecognizer 類,該類重點集成和應用了具有典型性的人臉識別算法,采用手工制作的方式,完成對人臉圖像訓練樣本集的制定,樣本集含有5 個人,每人所對應的圖像共3 幅,這些樣本集經過組合,形成了人臉數據庫。
3.2.1 管理員登錄功能規劃與具體實現
管理員登錄功能作為該系統的常用功能,主要是指管理員通過向系統中輸入正確的賬號、密碼,獲取相應的管理員權限,以達到正常訪問和使用智能考試系統的目的。 該功能在具體的設計中,需要管理員在系統登錄界面輸入正確的賬號、密碼。 此時,該系統會自動啟用內部TextBox 組價,對管理員所輸入的賬號、密碼信息進行接收,對這些程序進行編寫處理,確保這些信息與數據庫之間建立起有效的連接。 當連接成功后,系統會自動接收處理用戶所輸入的賬號字符串,便于管理員更好地開展賬號字段查詢工作,全面地分析和判斷用戶當前所處的查詢狀態。 如果查詢狀態顯示“成功”,說明該賬號字段被系統得以全方位、精確化查詢。 此時,系統會根據賬號字段內容,完成對相應密碼字段的反饋,并將最終的反饋結果與用戶所輸入的密碼字段進行比對,如果比對成功,說明該用戶擁有管理員的登錄身份。
3.2.2 管理員添加教師信息功能具體實現
要想確保管理員在使用該系統期間,能夠快捷有效地添加教師信息,技術人員要嚴格遵循以下設計流程:(1)需要在系統的指定界面位置處,設置多個文本框,該文本框與數據庫內教師字段存在一一對應的關系。 (2)還要利用TextBox 控件,完成對教師字段信息的有效接收和管理,并確保相關程序與數據庫之間能夠建立起良好的連接關系。 (3)當連接關系構建成功后,用戶可以使用數據庫,完成對教師表的快捷化插入和保存。 當數據表插入成功后,說明教師信息添加功能得以有效設計和實現。 該功能模塊在具體的設計中,主要運用了ADO.Net 技術,以實現對conn 對象的構建。
3.3.1 教師瀏覽信息功能具體實現
在具體的設計中,教師瀏覽信息功能將相關試題表定位到指定的教師操作界面中。 用戶對界面中的瀏覽按鈕進行點擊。 此時,系統會自動運行相關程序,與數據庫之間建立起有效的連接。 當連接成功后,教師可以借助數據庫,實現對試題表中所需字段信息的精確化查詢,從而達到瀏覽操作試題信息的目的。
3.3.2 教師成績查詢功能具體實現
教師成績查詢功能主要是指教師向系統登錄界面中輸入正確的賬號、密碼,然后,采用以下兩種方式,實現對學生成績的精確化查詢,一種是學生姓名搜索方式,另一種是考試得分范圍搜索方式,與傳統手動搜索方式相比,該系統的搜索功能具有一定的高效性和智能性。
在整個系統中,學生使用頻率最高。 學生幾乎在每學期都會頻繁用到該系統。 為此,技術人員要重視對學生注冊功能的開設和實現。 學生注冊功能主要是指學生在正式使用該系統之前,要采用注冊審核的方式,完成對個人登錄信息的填寫和注冊。 該功能模塊的具體設計流程如下:首次登錄系統的學生點擊系統界面上的“注冊”按鈕后,會自動進入學生注冊界面。此時,系統通過利用TextBox 控件,對學生所提交的信息進行全面讀取和接收,然后,利用ASP 技術不斷提高操作水平,便于學生在使用系統期間能夠規范化地輸入注冊信息,并確保編寫好的程序與數據庫之間建立起有效的連接。 當連接成功后,系統會利用數據庫自動完成對學生賬號字段的精確化、快捷化查詢。 經過查詢,如果所提交的賬號申請信息與數據庫內的字段存在一一對應的關系,說明數據庫已經保存過該用戶的登錄信息,數據庫無需對這些信息進行再次保存;反之,需要嚴格按照所設置好的字段信息,將學生新提交的注冊申請信息插入指定的數據表中,此時,頁面會顯示“申請成功”。 學生注冊算法流程,如圖3所示。

圖3 學生注冊算法流程
綜上所述,在OpenCV 人臉識別技術的應用背景下,本文針對高校教師和學生個性化使用需求,根據系統需求分析結果,完成對智能考試系統的各大功能模塊的科學設計和開發。 該系統所取得的設計成果如下:(1)通過將OpenCV 人臉識別技術與智能考試系統設計進行充分結合。 在正式進入考試之前,高校需要借助該系統,將學生的臉部信息安全、可靠地存入系統數據庫中,然后,采用人臉識別的方式,對學生的登錄信息進行驗證。 在正式考試期間,攝像頭會將當前所讀取的學生面部信息與系統數據庫已存儲的學生面部信息進行比對,如果比對成功,可允許考生進入考場進行考試,反之,則取消學生考試權限,從而避免出現替考現象。 (2)確定系統基本框架。 該系統通過采用B/S 設計模式,提高系統的層次感,便于工作人員能夠更好地升級和維護系統。 (3)完成對系統數據庫的科學設計。 該系統在全面分析教師和學生使用需求的基礎上,確定正確的系統設計目標,然后,科學地規劃和設計系統數據庫,從而實現對管理員基本情況表、教師基本情況表、學生基本情況表、試題基本情況表、考試科目基本情況表、考試記錄基本情況表等數據表的科學設計,使得各個數據表之間的依賴關系得以有效地明確,為統一化、規范化管理智能考試相關數據打下堅實的基礎。 (4)設計和開發系統核心功能模塊。 本文完成了對該系統的身份驗證模塊、管理員模塊、教師模塊、在線考試模塊等模塊的科學設計,完全符合實際應用需求。