周曉宇 李連民 張義騫 胡沛遜 仝玉璘 張恩





摘要:對(duì)于疫情期間線上考試人工監(jiān)考費(fèi)時(shí)費(fèi)力,很難發(fā)現(xiàn)學(xué)生作弊行為而且難以當(dāng)場(chǎng)取證的問(wèn)題,文中設(shè)計(jì)了一種利用YOLO算法設(shè)計(jì),基于TensorFlow的智能監(jiān)考系統(tǒng)。此系統(tǒng)通過(guò)收取關(guān)于作弊的面部表情變化圖像建立起訓(xùn)練集模型,對(duì)作弊過(guò)程中面部的表情(例如緊張,眼神飄忽不定等)進(jìn)行分類,從而實(shí)現(xiàn)該系統(tǒng)功能。此系統(tǒng)不僅可以對(duì)考場(chǎng)內(nèi)學(xué)生進(jìn)行實(shí)時(shí)監(jiān)測(cè)并提醒,且對(duì)學(xué)生作弊產(chǎn)生的面部表情以及正在進(jìn)行的作弊行為進(jìn)行取證。經(jīng)過(guò)測(cè)試,此系統(tǒng)能夠在規(guī)定場(chǎng)景中正常運(yùn)行及識(shí)別作弊準(zhǔn)確率達(dá)68.5%,不僅僅滿足疫情期間學(xué)校對(duì)學(xué)生實(shí)時(shí)監(jiān)考的要求,而且為今后無(wú)人監(jiān)考系統(tǒng)大規(guī)模實(shí)施提供了有效參考數(shù)據(jù)。
關(guān)鍵詞:TensorFlow;YOLOv3;人工智能;目標(biāo)檢測(cè)
中圖分類號(hào):TP391 ? 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2021)35-0075-02
近年來(lái),隨著教育的現(xiàn)代化,傳統(tǒng)的考試監(jiān)督方式不太適合形勢(shì)發(fā)展,人工監(jiān)考存在著漏洞,大型考試作弊的事情很難及時(shí)發(fā)現(xiàn),給考試帶來(lái)了不公平,因此,智能監(jiān)考系統(tǒng)迎刃而出。
隨著近年來(lái)計(jì)算機(jī)視覺(jué)技術(shù)以及網(wǎng)絡(luò)的快速發(fā)展,基于python的目標(biāo)檢測(cè)作為計(jì)算機(jī)視覺(jué)一大應(yīng)用,使用深度學(xué)習(xí)進(jìn)行目標(biāo)檢測(cè),并結(jié)合算法,可以實(shí)時(shí)的目標(biāo)檢測(cè),OpenCV深度學(xué)習(xí)的實(shí)時(shí)目標(biāo)檢測(cè)需要有效介入攝像頭,這里在介紹目標(biāo)檢測(cè)時(shí)用的主要的算法,SSD(Single Shot Detectors)算法和YOLO(You Only Look Once)算法。
本文通過(guò)python環(huán)境設(shè)計(jì)了YOLO 算法,通過(guò)數(shù)據(jù)集進(jìn)行訓(xùn)練模型,并結(jié)合圖像處理技術(shù)實(shí)現(xiàn)智能監(jiān)考系統(tǒng)。
1整體性系統(tǒng)設(shè)計(jì)
基于設(shè)計(jì)的系統(tǒng)流程圖設(shè)計(jì)如圖1所示。其運(yùn)行方式分為以下四步:
(1)啟動(dòng)程序,并通過(guò)攝像頭設(shè)備獲取數(shù)據(jù);
(2)對(duì)已獲取的視頻進(jìn)行預(yù)處理;
(3)該系統(tǒng)在TensorFlow框架下,利用YOLOv3算法從圖像中檢測(cè)出人體,并對(duì)人體幀進(jìn)行標(biāo)記;
(4)圖像分為正常圖像和作弊性圖像。一旦發(fā)現(xiàn)多個(gè)作弊行為,系統(tǒng)會(huì)報(bào)警提醒。
2智能監(jiān)考實(shí)現(xiàn)的具體解決辦法
2.1如何識(shí)別考生的作弊動(dòng)作
考生頭部、手部大范圍的移動(dòng)都被算法視為作弊。當(dāng)學(xué)生嘴部張合頻率過(guò)于頻繁、頻繁點(diǎn)頭等都被算法視為作弊。正常考試情況如圖2所示,作弊考試情況如圖3所示。
2.2使用場(chǎng)景
由于本項(xiàng)目在設(shè)計(jì)初衷針對(duì)網(wǎng)課考試的檢測(cè),所以大部分使用場(chǎng)景較為單一,不需要出現(xiàn)多人動(dòng)態(tài)識(shí)別的情況。屆時(shí)可以大大降低對(duì)設(shè)備性能的依賴程度,以及不需要過(guò)度判斷環(huán)境的異常情況,從而可以減少運(yùn)算時(shí)間,加快運(yùn)算識(shí)別速度。
2.3 YOLOv3算法的簡(jiǎn)要概述
YOLO是一種常用的目標(biāo)檢測(cè)算法。YOLO非常快,由于檢測(cè)問(wèn)題是一個(gè)回歸問(wèn)題,所以不需要復(fù)雜的通道。它可以處理更快地處理實(shí)時(shí)的視頻流,可以更快地完成視頻分類,檢驗(yàn)延遲可達(dá)25毫秒,精度相對(duì)于原有的算法也有了兩倍的提升。
2018年4月華盛頓大學(xué)的 Joseph Redmon 和 Ali Farhadi 提出 YOLO 的最新版本 YOLOv3相比。在320×320版本下,YOLOv3的運(yùn)行時(shí)間為22毫秒,速度為28.2 mAP,精度與SSD相當(dāng),但速度是SSD的三倍。
在YOLOv3中,由于只有卷積層,所以當(dāng)通過(guò)更改卷積步長(zhǎng)來(lái)控制輸出圖形大小尺度,所以對(duì)輸入的素材類型大小沒(méi)有嚴(yán)格的限制條件。流程圖中,輸入圖片以256*256作為樣例。YOLO與其他算法的區(qū)別在于它重新定義了一個(gè)回歸。該算法將單個(gè)神經(jīng)網(wǎng)絡(luò)應(yīng)用于整個(gè)素材的識(shí)別,將圖片素材分割化,通過(guò)標(biāo)準(zhǔn)的單元預(yù)測(cè)每個(gè)區(qū)域的類型值。Yolo的整個(gè)網(wǎng)絡(luò),吸取了Resnet、Densenet、FPN的精髓,可以說(shuō)是融合了目標(biāo)檢測(cè)當(dāng)前業(yè)界最有效的全部技巧。如圖4為官方測(cè)試Yolov3算法與其他算法的比較示例圖。
2.4其他情況類比概況
在實(shí)際情況中,學(xué)生在家進(jìn)行網(wǎng)上考試并不一定只有肢體作弊的情況發(fā)生。手持其他物品或以其他形式出現(xiàn)的紙條、參考書、手機(jī)和耳機(jī)等外部資源,也將會(huì)影響考試的公平性。在Yolo算法中將對(duì)不同物品進(jìn)行分類識(shí)別。若此時(shí)學(xué)生并無(wú)違規(guī)動(dòng)作,卻出現(xiàn)了違規(guī)物品,同樣將被判定為作弊。如圖3、圖4所示。
3區(qū)分作弊動(dòng)作的分析與實(shí)驗(yàn)
3.1頭部檢測(cè)
根據(jù)頭部識(shí)別算法,先將頭部的邊界框劃分出來(lái),更具改邊界框值的變化率以及相對(duì)于水平的幾何偏移量可以判別出該考生是否存在異常考試的情況。
3.2眼睛以及嘴部檢測(cè)
在考試過(guò)程中,眼睛的移動(dòng)情況與嘴部的情況也是作弊的一個(gè)判斷點(diǎn)。在識(shí)別初期需要首先進(jìn)行臉部點(diǎn)位的確定,這里使用了TensorFlow的三層CNN模型搭建。
數(shù)據(jù)集主要使用了kaggle上Facial Keypoints Detection比賽提供的數(shù)據(jù)集。該數(shù)據(jù)集包含包括7,049幅圖像,96×96像素的灰度圖像。預(yù)測(cè)15個(gè)人臉關(guān)鍵點(diǎn)。數(shù)據(jù)集中每一張圖片剛好包含整個(gè)人臉。數(shù)據(jù)集預(yù)處理完畢后導(dǎo)出dat文件,并為后續(xù)訓(xùn)練做準(zhǔn)備。
由于數(shù)據(jù)集來(lái)源不夠廣泛,在作弊的目標(biāo)檢測(cè)算法中,目標(biāo)識(shí)別率為86%,作弊診斷率為68.5%,不夠精準(zhǔn),在后續(xù)進(jìn)一步擴(kuò)大數(shù)據(jù)集,有望加強(qiáng)與提高目標(biāo)識(shí)別精度。
各數(shù)據(jù)參數(shù)設(shè)置如圖7所示。
4結(jié)束語(yǔ)
本論文是基于TensorFlow和YOLOv3人工智能目標(biāo)檢測(cè)技術(shù),通過(guò)對(duì)視頻內(nèi)容的切分處理、數(shù)據(jù)集比對(duì)的方式,實(shí)現(xiàn)了通過(guò)計(jì)算機(jī)進(jìn)行考試中作弊檢測(cè),將作弊情況反饋給主機(jī)監(jiān)考系統(tǒng)。實(shí)驗(yàn)中,系統(tǒng)檢測(cè)成功率約為78%,但系統(tǒng)仍存在缺陷,例如,無(wú)法同時(shí)處理多個(gè)攝像頭返回的數(shù)據(jù)圖像,識(shí)別的速度還不夠快。在后續(xù)的實(shí)驗(yàn)測(cè)試中,應(yīng)當(dāng)加強(qiáng)在運(yùn)行速度中的提高,使用更多的數(shù)據(jù)集進(jìn)行訓(xùn)練,達(dá)到一個(gè)可以基本實(shí)現(xiàn)的目標(biāo)水準(zhǔn)。
參考文獻(xiàn)
[1] 吳凱.頭部運(yùn)動(dòng)分析及其在考場(chǎng)視頻監(jiān)控系統(tǒng)中的研究與應(yīng)用[D].北京:北京理工大學(xué),2011.
[2] 李孟曉,王保棟,戴文斌,等.一種標(biāo)準(zhǔn)考場(chǎng)環(huán)境下的考試作弊行為智能檢測(cè)方法[J].信息技術(shù)與信息化,2020(10):213-216.
[3] 鄒國(guó)鋒,傅桂霞,李海濤,高明亮,王科俊.多姿態(tài)人臉識(shí)別綜述[J].模式識(shí)別與人工智能,2015,28(07):613-625.
[4] 張華華.計(jì)算機(jī)化考試與中國(guó)教育評(píng)估[J].心理學(xué)探新,2013,33(05):387-391.
[5] 袁小平,馬緒起,劉賽.改進(jìn)YOLOv3的行人車輛目標(biāo)檢測(cè)算法[J].科學(xué)技術(shù)與工程,2021,21(8):3192-3198.
【通聯(lián)編輯:梁書】