吳美香,鄧園園,裴楓華,余松森,潘家輝
(華南師范大學(xué) 軟件學(xué)院,廣東 南海 528225)
高校課堂是學(xué)生學(xué)習(xí)知識(shí)、培養(yǎng)能力、提高個(gè)人綜合素質(zhì)的主要場(chǎng)所。然而目前大學(xué)生課堂缺勤現(xiàn)象日益嚴(yán)重,嚴(yán)重違背了大學(xué)課堂的教學(xué)理念?,F(xiàn)有的高校學(xué)生考勤管理存在著人工管理效率低、信息分散、實(shí)時(shí)性差、難于統(tǒng)計(jì)、利用率低的問(wèn)題,給高校對(duì)學(xué)生的日常管理帶來(lái)困難,期末總評(píng)時(shí)考勤信息不全,而且學(xué)生的安全問(wèn)題無(wú)法保障?;谏鲜鲈?,本文設(shè)計(jì)一種考勤系統(tǒng)來(lái)為學(xué)校考勤提供便利,本系統(tǒng)以人臉識(shí)別技術(shù)為基礎(chǔ),采用Android Studio開發(fā)工具、OpenCV、Bmob云數(shù)據(jù)庫(kù)等技術(shù)進(jìn)行開發(fā)設(shè)計(jì)。
隨著社會(huì)的不斷進(jìn)步以及各方面對(duì)于快速有效的自動(dòng)身份驗(yàn)證的迫切要求,生物特征識(shí)別技術(shù)在近幾十年中得到了飛速的發(fā)展。作為人的一種內(nèi)在屬性,并且具有很強(qiáng)的自身穩(wěn)定性及個(gè)體差異性,生物特征成為了自動(dòng)身份驗(yàn)證的最理想依據(jù)。當(dāng)前的生物特征識(shí)別技術(shù)主要包括有:指紋識(shí)別、視網(wǎng)膜識(shí)別、虹膜識(shí)別、步態(tài)識(shí)別、靜脈識(shí)別、人臉識(shí)別等。與其他識(shí)別方法相比,人臉識(shí)別由于具有直接、友好、方便的特點(diǎn),使用者無(wú)任何心理障礙,易于為用戶所接受,從而得到了廣泛的研究與應(yīng)用[1]。
國(guó)內(nèi)關(guān)于人臉自動(dòng)識(shí)別的研究始于二十世紀(jì)80年代。國(guó)內(nèi)的研究工作主要是集中在三大類方法的研究:基于幾何特征的人臉正面自動(dòng)識(shí)別方法、基于代數(shù)特征的人臉正面自動(dòng)識(shí)別方法和基于連接機(jī)制的人臉正面自動(dòng)識(shí)別方法。我國(guó)人臉識(shí)別技術(shù)起步有些晚,但隨著社會(huì)的廣泛關(guān)注與其商業(yè)利用價(jià)值越來(lái)越高,我國(guó)的科學(xué)研究人員也逐漸著手于此,目前人臉識(shí)別技術(shù)的應(yīng)用市場(chǎng)十分廣闊[2]。
本系統(tǒng)主要以人臉識(shí)別在課堂考勤中的應(yīng)用為主。系統(tǒng)的功能介紹如下:打開本系統(tǒng)軟件后,系統(tǒng)會(huì)輸出一個(gè)用戶登錄注冊(cè)頁(yè)面,使用此系統(tǒng)的教師需要登錄到系統(tǒng)中。登錄完畢,系統(tǒng)主要功能呈現(xiàn):包括信息錄入、刷臉考勤、考勤結(jié)果、考勤統(tǒng)計(jì)以及賬號(hào)管理。
用戶點(diǎn)擊信息錄入后,創(chuàng)建班級(jí)和學(xué)生信息之后。上課前拍一張班級(jí)合照上傳,點(diǎn)擊考勤即可識(shí)別出合照中的單個(gè)人臉以及姓名。點(diǎn)擊考勤結(jié)果可以查看本次考勤的出席人數(shù)和缺勤人數(shù)。最后經(jīng)過(guò)多次考勤可以查看考勤的統(tǒng)計(jì)情況。系統(tǒng)總功能說(shuō)明圖如圖1所示。
圖1 系統(tǒng)總功能圖Fig.1 General function diagram of the system
系統(tǒng)主要分為注冊(cè)登錄、信息錄入、實(shí)時(shí)考勤、考勤統(tǒng)計(jì)、賬號(hào)管理五個(gè)模塊。信息錄入是錄入班級(jí)里所有學(xué)生的信息,主要是照片的采集;實(shí)時(shí)考勤是對(duì)班級(jí)里所有學(xué)生進(jìn)行拍合照考勤;考勤統(tǒng)計(jì)是對(duì)實(shí)時(shí)考勤中得到的數(shù)據(jù)進(jìn)行匯總,以供查詢。功能結(jié)構(gòu)圖如圖2所示。
圖2 功能結(jié)構(gòu)圖Fig.2 Functional configuration
人臉識(shí)別(Facial Recognition),就是通過(guò)視頻采集設(shè)備獲取用戶的面部圖像,再利用核心的算法對(duì)其臉部的五官位置、臉型和角度進(jìn)行計(jì)算分析,通過(guò)對(duì)圖像的灰度化、二值化等預(yù)處理進(jìn)而和自身數(shù)據(jù)庫(kù)里已有的范本進(jìn)行比對(duì),后判斷出用戶的真實(shí)身份,最后顯示相應(yīng)的人臉身份信息。人臉識(shí)別的主要過(guò)程如圖3所示。
圖3 人臉識(shí)別總流程Fig.3 General process of face recognition
人臉識(shí)別模塊主要分為五個(gè)子模塊,如圖4所示。
圖4 人臉識(shí)別分模塊圖Fig.4 Face recognition module
(1)人臉圖像采集模塊
通過(guò)本地圖庫(kù)或者攝像機(jī)或者視頻流獲取待測(cè)試者的圖像的過(guò)程,將圖片顯示在系統(tǒng)界面中,提供人臉標(biāo)記。
(2)人臉圖像預(yù)處理模塊
在獲取了人臉圖像后,就要進(jìn)行預(yù)處理的工作,使得圖像中的人臉特征能夠更加明顯的顯現(xiàn)出來(lái)。整個(gè)預(yù)處理階段包含了:人臉圖像光線增強(qiáng)、灰度化變換、二值化處理、邊緣檢測(cè)、圖像尺寸歸一化、幾何校正等。
(3)人臉檢測(cè)與定位模塊
判斷圖像是否含有人臉的臉部特征存在,若存在則確定給出人臉?biāo)诘奈恢靡约胺秶?,以便隨后的特征提取與識(shí)別,而不是整張圖像,這樣可以大幅度減少計(jì)算量和等待的時(shí)間。
(4)人臉圖像特征提取模塊
用統(tǒng)計(jì)特征如二階矩、高階矩,建立人臉空間中的一個(gè)新的坐標(biāo)系。人臉圖像在這個(gè)坐標(biāo)系下的投影即為該圖像的特征。對(duì)于一張待識(shí)別的人臉圖像,求出該圖像在這個(gè)坐標(biāo)系中的坐標(biāo)也就是求出了這個(gè)圖像的特征。
(5)人臉圖像匹配與識(shí)別模塊
把從人臉圖片中提取的一系列面部特征值進(jìn)行運(yùn)算,該坐標(biāo)系下的坐標(biāo)相比較,再到特征數(shù)據(jù)庫(kù)中進(jìn)行匹配,然后找到最相似的圖像,最后把該圖像相對(duì)應(yīng)的人物信息顯示出來(lái)。
人臉識(shí)別技術(shù)就是利用計(jì)算機(jī)分析人臉圖像,檢測(cè)圖像的頻域空間滑動(dòng)檢測(cè)圖像塊,判別是否是人臉區(qū)域,提取有效的特征信息,用來(lái)識(shí)別人身份的一種技術(shù)[4]。人臉識(shí)別法主要集中在二維圖像方面,二維人臉識(shí)別主要利用分布在人臉上從低到高80 個(gè)節(jié)點(diǎn)或標(biāo)點(diǎn),通過(guò)測(cè)量眼睛、顴骨、嘴巴、下巴等之間的間距來(lái)進(jìn)行身份認(rèn)證[5]。Principle Component Analysis( PCA),即主成分分析技術(shù)[6],是一種常用的數(shù)據(jù)分析方法。PCA通過(guò)線性變換將原始數(shù)據(jù)變換為一組各維度線性無(wú)關(guān)的表示,可用于提取數(shù)據(jù)的主要特征分量,常用于高維數(shù)據(jù)的降維。
PCA算法步驟如下:
設(shè)有m條n維數(shù)據(jù)。
將原始人臉數(shù)據(jù)按列組成n行m列矩陣X[n, m]。
(1)將X的每一行(代表一個(gè)屬性字段)進(jìn)行零均值化,即減去這一行的均值,使每一維的均值為0。即:
(2)求出協(xié)方差:數(shù)學(xué)上可以用兩個(gè)字段的協(xié)方差表示其相關(guān)性,由于已經(jīng)讓每個(gè)字段均值為0,則:
(3)協(xié)方差矩陣:
其中,這個(gè)矩陣對(duì)角線上的兩個(gè)元素分別是兩個(gè)字段的方差,而其它元素是兩個(gè)字段的協(xié)方差。兩者被統(tǒng)一到了一個(gè)矩陣上;
(4)求出協(xié)方差矩陣的特征值及對(duì)應(yīng)的特征向量;
(5)將特征向量按對(duì)應(yīng)特征值大小從上到下按行排列成矩陣,取前k行組成矩陣P;
(6)Y=PXY=PX即為降維到k維后的數(shù)據(jù)。
通過(guò)主成分分析,降低數(shù)據(jù)空間維數(shù),可以將多元數(shù)據(jù)特征在低維空間里直觀地表示出來(lái)[7]。
實(shí)驗(yàn)所用的測(cè)試機(jī)為 Android手機(jī)華為榮耀手機(jī),型號(hào)是Che-YLOOM,處理器為八核1.2 GHz,Android版本是4.4.2,手機(jī)系統(tǒng)版本號(hào)是EMUI系統(tǒng)3.0,本次實(shí)驗(yàn)進(jìn)行了三次,第一次測(cè)試了12人,第二次測(cè)試了25人,第三次測(cè)試了35人,實(shí)驗(yàn)準(zhǔn)確率在75%以上。實(shí)驗(yàn)步驟如下:
(1)注冊(cè)登錄模塊測(cè)試:注冊(cè)了兩個(gè)教師賬戶,然后根據(jù)toast返回的信息進(jìn)行數(shù)據(jù)庫(kù)查詢,測(cè)試是否注冊(cè)成功。注冊(cè)成功后,我們利用已經(jīng)注冊(cè)過(guò)的賬戶進(jìn)行登錄功能的測(cè)試;
(2)信息錄入模塊測(cè)試:測(cè)試時(shí)創(chuàng)建一個(gè)班級(jí),通過(guò)本地錄入該班12個(gè)學(xué)生照片以及個(gè)人信息,并顯示在班級(jí)列表中;
(3)實(shí)時(shí)考勤系統(tǒng)模塊測(cè)試:在該班級(jí)上課前,拍攝該班到場(chǎng)學(xué)生的合照,上傳到該系統(tǒng)中進(jìn)行人臉識(shí)別,得到缺席人數(shù)為3人及缺席名單,合照里的學(xué)生只有9名為該班的學(xué)生,實(shí)時(shí)考勤過(guò)程見圖5,考勤結(jié)果見圖6;
(4)重復(fù)以上步驟,測(cè)試25以及35個(gè)人的班級(jí),考勤時(shí)并從不同的角度拍攝合照。
圖5 實(shí)時(shí)考勤結(jié)果Fig.5 Real-time attendance results
(1)在進(jìn)行不同的角度拍攝合照時(shí),有些學(xué)生的臉被遮擋住了,只出現(xiàn)四分之三左右,導(dǎo)致系統(tǒng)檢測(cè)不出人臉,無(wú)法進(jìn)行人臉識(shí)別。解決方法:在信息錄入模塊,每名學(xué)生可以增加錄入的照片數(shù),正臉、側(cè)臉不同方位的照片都可以錄入進(jìn)去,用多張照片去訓(xùn)練分類器。
(2)拍攝的考勤照片亮度太低導(dǎo)致人臉識(shí)別率低。解決方法:上傳照片后先對(duì)照片進(jìn)行亮度檢測(cè),設(shè)定一個(gè)亮度值,如果亮度低于這個(gè)值,則要對(duì)照片進(jìn)行亮度處理,再進(jìn)行人臉識(shí)別。
圖6 考勤結(jié)果Fig.6 Attendance results
本系統(tǒng)基于成熟的人臉識(shí)別算法原理進(jìn)行分析設(shè)計(jì),預(yù)期借助手機(jī)快速完成考勤,解決了課堂考勤難題。經(jīng)過(guò)反復(fù)的實(shí)驗(yàn)與調(diào)試,本系統(tǒng)實(shí)現(xiàn)了75%以上的準(zhǔn)確率,成功完成移動(dòng)課堂考勤功能,充分驗(yàn)證了系統(tǒng)總體設(shè)計(jì)的可行性。針對(duì)實(shí)際場(chǎng)景的多變性,系統(tǒng)具備了相應(yīng)的處理機(jī)制和保障措施??偟膩?lái)說(shuō),本文對(duì)人臉識(shí)別邁向?qū)嵱没翱记诜绞絼?chuàng)新做出了有意義的探索和嘗試。
[1] 宋嘉程. 人臉識(shí)別技術(shù)的現(xiàn)狀和發(fā)展[J]. 電子技術(shù)與軟件工程, 2017, (17): 104.
[2] 吳天昊, 趙健麟, 周劍秋. 基于人臉識(shí)別的學(xué)生考勤系統(tǒng)[J]. 機(jī)電產(chǎn)品開發(fā)與創(chuàng)新, 2016, 29(06): 44-46.
[3] Jing Jin, Bin Xu, Xiaoliang Liu, Yuanqing Wang, Liqun Cao,Lei Han, Biye Zhou, Minggao Li. A face detection and location method based on Feature Binding[J]. Signal Processing, 2015,(35): 10-11.
[4] 劉吉安, 江金滾. 基于區(qū)域改進(jìn)LBP和KNN的人臉識(shí)別[J].電腦知識(shí)與技術(shù), 2016, 12(13): 184-185.
[5] 劉琴. 基于二維圖像表示的人臉識(shí)別算法研究[J]. 無(wú)線互聯(lián)科技, 2016, (23): 111-112.
[6] 梁瓊, 熊建斌, 梁澤溥, 張清華, 孫國(guó)璽, 彭志平. 基于PCA人臉識(shí)別的智能防盜報(bào)警系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 廣東石油化工學(xué)院學(xué)報(bào), 2014, 24(06): 26-30.
[7] 佟嘉岐, 賀青, 遲宗濤. 基于PCA人臉識(shí)別方法的考勤系統(tǒng)的設(shè)計(jì)[J]. 山東工業(yè)技術(shù), 2017, (13): 151-152.
[8] 李宜蓉. 基于OPENCV的計(jì)算機(jī)視覺技術(shù)研究[J]. 電子世界, 2014, (18): 141-142.