葉陽 顧國民
摘要:高校教學管理中,課堂出勤率至關重要。基于目前課堂考勤的需求,文章研究了采用人臉識別技術的課堂管理系統的設計。
關鍵詞:考勤;人臉識別;教學
中圖分類號:G642.423 文獻標志碼:A 文章編號:1674-9324(2019)31-0272-02
高校教學管理中,課堂出勤率至關重要。目前大多數高校在日常考勤工作中主要采用的仍是人工考勤。教師根據選課名單隨堂點名,這些考勤方式仍存在以下幾個問題:第一,任課教師并不認識每一位學生,所以有可能存在冒名頂替和代替考勤的現象;第二,在開學第一周后的退補選課,使得教學班名單會發生改變,與傳統行政班名單有很大出入;第三,部分全校公選課依然使用大班化教學,全面點名費時較多,隨機點名則容易被學生渾水摸魚。所以傳統的考勤方式不適用于如今學校考勤需求,若是設計一套能解決上述問題的課堂考勤系統,方便教師課堂考勤、督促學生積極上課,以及為學生的學習提供便利,最終將能夠有效地提高教學綜合效率[1]。
人臉識別技術是生物特征識別領域中最可靠、最方便、最自然的一項身份驗證技術,現在在大多數領域中起到舉足輕重的作用,尤其是用在機關單位的安全和考勤、網絡安全、銀行、海關邊檢、物業管理、軍隊安全、智能身份證、智能門禁、司機駕照驗證、計算機登錄系統。在對比國內外視頻中人臉的研究與實現的基礎上,本文將研究目標定位于利用C++語言來實現視頻中人臉的識別以方便課堂考勤。本次設計是旨在實現視頻中捕捉人臉,并進行識別的系統;其中人臉其任務首先是人臉檢測,從各種不同的場景中找出人臉所在位置與其所占區域;再進行提取人臉的特征,確定測出的人臉和數據庫中的描述方式;其中人臉識別是提供一個接口,將用等待識別的人臉與數據庫中的已知人臉比較,得出相關信息[2]。
本次設計的具體內容包括人臉檢測與人臉識別兩部分:
人臉檢測是對于給定的任意一段視頻資料,采用一定的方法對其進行檢測以確定圖像中是否含有人臉,如果有則返回人臉的位置、大小和姿態,為身份鑒定提供條件。
與人臉檢測不同,人臉識別利用的主要是人臉個體差異的信息。有兩種識別目的和情況需要區別:一種是對人臉圖像的驗證,即要確認輸入人臉圖像中的人是否在數據庫中,屬于有監督的識別;另一種是對人臉圖像的辨識,即要確認輸入圖像中的人的身份,屬于無監督的識別。主要分為以下步驟:
1.特征提取,采取某種表示方式來表述檢測出的人臉和數據庫中的已知人臉。
2.特征降維。由于人臉是一個非剛性的自然物體(柔性體),從人臉圖像中可提取很多不同特征,所以表征人臉的原始特征對應高維空間中的數據(對一幅M×N的圖像,空間維數可達M×N)。在特征提取后,需采用緊湊的人臉表征方式,將原始特征進行篩選組合,集中信息,降低維數,使這些低維空間的有效性得到提高,以有利于接下來的匹配分類。
3.匹配識別。在特征提取的基礎上,選擇使當的匹配策略,可將待識別的人臉與數據庫中的已知人臉進行匹配比較,建立它們的相關關系,并輸出所做出的判斷決策/決定(識別結果)。
系統關鍵功能的實現:
1.人臉圖像獲取:要判斷待識別的人是否存在于數據庫中,系統要獲取待識別的人臉圖像。本系統通過攝像頭實時獲取人臉圖像,調用cvshowimage顯示函數把顯示的圖片映射到窗口,再利用IplImage類將人臉圖片讀入。通過read_image函數讀取人臉庫中的人臉,并加入images這個人臉集,然后用createMyLBPHfaceRecognizer函數創建訓練模型,并調用train函數對人臉集進行訓練,訓練結束之后用save進行保存,用set(threshold)設置閾值,防止識別不在庫中的人臉。
2.圖像預處理:一般來說圖像可以分為彩色和灰度,彩色圖像每個像素顏色由RGB構成,對于256級圖像的每一個像素點共有67777216種取值,對于人臉特征提取來說,不需要如此復雜的圖像和無用的背景,系統需要將彩色圖像轉換成灰度圖像,使得圖像只含有亮度的信息。灰度值公式
Gray=0.3×R+0.59×G+0.11×B
3.人臉訓練學習:對于數據庫中不存在的人臉,我們需要通過人臉學習建立人臉模型并且標注身份,首先讀入人臉(已經預處理好的人臉,這個在截取訓練人臉模塊中實現),然后把人臉數據和標簽(人臉的身份)分別讀入兩個vector,創建LBP訓練模型,并且訓練這些人臉數據存儲在模型當中。
4.人臉圖像特征提取:人臉圖像特征提取是人臉識別的一個必要過程,沒有特征提取這一過程就無法實現人臉識別,其意義是從人臉圖像中提取一組反映人臉特征的數值來表示圖像,來防止以圖像全部像素作為特質降低識別運算速度,然后根據特征將圖像進行分類和識別,這個功能主要基于OpenCV實現,它提供了三種基礎的人臉特征算法,這三種算法都有較好的特征提取效果,本系統的設計采取LBP算法并在此基礎上加以改進。
5.人臉識別:基于OpenCV實現人臉識別功能,利用數據庫中的已知人臉,給出人臉識別結果,主要思想是將待識別的圖像與數據庫中的人臉模型進行比較,通過設定一個閾值,當相似度超過閾值,輸出匹配得到的結果。這一過程又分為兩種:一種是確認,比較的過程是一對一,另一類是辨認,圖像匹配對比的過程是一對多。識別人臉用一個while循環,只有當不認識的新人臉出現才會退出循環,我們預先設置好要預測的人臉圖片和預測人臉的路徑以便后續進行人臉圖片的拼接,然后用一個while循環不斷讀取target中的target.pgm文件,即我們要進行識別的圖片,然后調用predict函數進行人臉預測,預測的人臉會返回訓練人臉時輸入的姓名。
本系統基本實現了人臉的檢測與識別,結合實驗室課堂教學的應用,可以有效地進行課堂考勤,但依然有一些需要解決的技術難點。
1.面部遮擋問題。倘若有人刻意地偽裝,這樣在采集視頻資料時會出現不完全甚至錯誤的判斷,會加大工作的難度。
2.運動分割問題。主要在非約束條件下進行運動分割,圖像會受到多方面的影響,像天氣變化、光照、運動目標的影子等。
參考文獻:
[1]王婉清.基于人臉識別的考勤系統設計[D].江蘇:南京郵電大學,2016.
[2]邢永生.人臉識別系統的研究與開發[D].吉林:吉林大學,2016.