靳 尹,駱文杰,江朝暉
(合肥工業大學 計算機與信息學院,合肥230601)
人臉識別技術主要是根據人臉特點,使用計算機技術來對人臉圖像進行分析,從而根據圖像來識別出有效的數據信息進而來“辨認”人臉[1]。人臉識別系統應用非常廣泛如刑偵破案、交通出行、手機面部解鎖以及金融領域等。
在各個行業中,考勤是影響員工薪資的重要因素,傳統的考勤方式,打卡機打卡考勤以及指紋識別考勤,這些傳統的方式都比較費時費力,降低考勤效率,且準確率也不高。如打卡機打卡主要依靠刷卡,與卡片持有者無關;指紋打卡識別會在秋冬等寒冷季節識別度減弱,導致打卡效率降低,甚至會出現購買假指紋,替打卡的問題,嚴重影響公平性與信息的準確性。隨著移動設備的發展,近年來出現了基于射頻識別的考勤管理系統,但是這些系統存在著很多問題,例如系統和數據庫維護成本高,員工身份驗證方法存在漏洞,用戶操作不友好等[2]。人臉識別技術利用移動設備上帶有的攝像裝備收集人臉圖像,并上傳到數據庫,將采集的人臉圖像自動與數據庫的圖像信息進行匹配,代表著新一代的考勤方向,不但可以規避傳統考勤出現的代替打卡等缺點,其辨識度、準確率都十分高,所以基于人臉識別技術的打卡系統會成為企業的選擇。
人臉識別技術主要是對生物體的面部特征識別,此種方法的特點是效率高,穩定性強,采集方便且不需要接觸,能夠有效解決由于天氣等造成的匹配度降低與設備磨損問題,相比于其它的特征識別更具優勢。對于人臉識別主要的研究方法為深度學習法,其特點是辨識度更高,而且表達能力與泛化性能更強,使得此種學習法的適用范圍越來越廣[3]。
(1)人臉圖像采集及檢測。人臉圖像采集指采集各種人臉信息,例如表情、姿態等,記錄儲存到數據庫中;人臉圖像檢測主要對采集到的信息進行進一步的校準。
(2)人臉圖像預處理。圖像預處理是人臉識別的重要步驟,將收集到的圖像根據其獲取圖像過程的復雜性進行一系列的處理,人臉屬于一種三維圖像模型,將三維圖像投到二維平面上,會出現一些數據的丟失,如圖像的光照會影響圖片的質量、設備的質量會影響圖片成型好壞、年齡的增長面貌會發生改變、姿態不同等對人臉的識別有一些影響等,通過預處理將人臉圖像進行一定的修改。
(3)人臉圖像特征提取。將收集到的人臉面部信息關鍵部位定點,將臉上的器官和輪廓分別打成連續的小點,這些點通過面部器官之間的相對位置來進行定位的,或者是將收集到的生物圖像看成一個沒有生物學意義的向量,再將人臉進行建模相匹配人臉特征。人臉特征68個特征點標記如圖1所示。

圖1 人臉68特征點標記Fig.1 68 Feature Markers of Face
(4)人臉圖像匹配與識別。提取人臉圖像的具體特征之后,將匹配的特征與存儲在數據庫中的人臉圖像進行比對匹配,企業用到的考勤系統通常選用一對多的圖像識別方法,根據預設的相似度來判斷提交的人像信息如圖2所示。相似度需要提前設定,大于等于此相似度的即為匹配成功,反之失敗。

圖2 相識度判別Fig.2 Similarity test
系統功能模塊主要分為6大部分,部門管理模塊配置企業的組織機構,具體到各個公司,各個部門至各個小組,根據組織機構圖確定每一層級的具體權限;用戶管理模塊,用戶作為系統的主要操作者,此模塊主要為系統提供用戶的具體配置信息;數據備份管理模塊主要備份用戶信息;信息管理模塊主要是根據不同的職位分配其不同員工的具體權限管理信息;人臉特征管理模塊,增加,刪減或者是修改員工的個人圖像信息特征;出勤管理模塊負責記錄員工日常出勤情況。系統功能管理結構圖如圖3所示。

圖3 系統功能管理結構圖Fig.3 Function Management Structure
(1)準確性。本系統通過對人臉進行識別,并將識別到的人臉圖像與數據庫中的圖像比對,識別的準確性可達到99.65%
(2)低延時。低延時性作為本系統的另一個重要的優點,其主要指的是數據從傳輸的一端到另一端的時長,時間越短就意味著其傳播速度越快,系統的性能等級越高。
(3)可拓展性強。本系統遵循著開閉原則設計,目的是在增添刪減功能上更具備方便靈活性,不會影響系統整體的正常運行。
(4)非接觸性。避免了人與人之間相互接觸,人與物接觸。
采用人臉識別系統對企業員工進行考勤,可以解決傳統考勤的不足,提高考勤的正確率。其主要流程為:首先,錄入每個員工的具體信息,上傳多張個人圖片統一處理存儲;其二,管理員在系統的終端對各位員工發放考勤任務,具體包括上下班時間,工作時長;其三,員工每天登錄系統點擊簽到,拍攝個人圖像信息,確定信息將被發送至終端服務器;最后,服務器對收集到的信息與前期采集的數據比對,相似度達到預定值即進行下一定位,若定位信息符合要求即為打卡成功,將其信息發送至個人手機終端并提醒簽到成功,反之需要重新打卡簽到。系統流程如圖4所示。

圖4 系統流程圖Fig.4 Flowchart of the system
本系統以Spring Boot 2.1、Spring Framework 5.1、Spring Security 5.1作為主框架,搭配Java EE 8、Apache Maven 3、Servlet 3.0的系統開發環境,利用Vue 2.6、Axios 0.18、Element UI 2.11作為視圖層,構建了一個完整的人臉識別系統的開發平臺。
(1)人臉圖像采集及檢測,把獲取到的ω張人臉特征圖像統一放到集合B里,每張人臉圖像可以變換為一個N維向量,如式(1)所示:

(2)在獲得人臉向量B集合后,通過公式(2)的處理,計算得到平均圖像G。把B集合里的全部向量進行累加求和,最后取平均值。

(3)用集合B里的每一個值減平均圖像值,可以得到每張集合里的圖像與平均圖像的差值η,式(3):

(4)vk表示每張圖像與平均圖像差值η分布情況,找到ω個正交的單位向量。其中,βk為特征值,式(4):

(5)人臉識別:上述步驟就是對人臉進行降維處理,找到合適的向量來表示人臉。首先,考慮一個新的人臉,并用特征人臉進行標記,公式(5)可以計算其對應的權重,一個向量可以由M個權重形成。

獲取特征臉相對人臉的表示,公式(6):

計算歐式幾何距離之后與給定的閥值進行比較,公式(7)。

其中,φ代表要鑒別的人臉,φk代表訓練集內已有的某個人臉,二者都用特征臉的權值來表示。當計算的歐式幾何距離小于設置的給定值時,待鑒別的人臉和訓練集中的第k張人臉是同一個人。當所有的訓練集的值都大于設置的給定值時,可以根據距離值將訓練集劃分為新的人臉和非人臉[4]。
基于人臉識別的企業員工考勤系統的本質是對人臉的特征建模并利用算法分析識別。考勤系統對收集到的信息圖像上器官之間相對位置的距離與數據庫中圖像上具體器官之間的位置和距離進行比對,如眼睛與鼻子的相對距離,鼻子與嘴巴的相對距離,嘴巴與下巴的相對距離,耳朵與下巴的相對距離等,與數據庫信息進行比對,判斷是否為一個人。特征臉訓練與識別的流程如圖5所示。

圖5 特征臉訓練與識別的流程Fig.5 Flow of Feature Face Training and Recognition
本文以人臉識別技術為核心,設計并實現了一種在中小型企業使用的人臉識別考勤系統。文章首先分析了傳統考勤方式存在的問題,使用人臉識別考勤系統的合理性及高效性;其次,對人臉識別的有關技術展開分析,闡述了基于人臉識別的考勤系統的原理,設計出相應的實現方案,明確了以人臉識別技術為基礎的考勤系統的框架以及功能模塊,最后實現了基于人臉識別考勤系統的界面設計和功能測試。基于人臉識別技術的考勤系統可以幫助企業解決代打卡、假冒等現象,營造一個公平公正的企業氛圍。系統達到了對人臉進行檢測識別和考勤記錄的目的,能夠識別員工的身份信息,對員工的考勤進行記錄和統計,并且能夠完成員工信息的錄入、更改以及考勤信息的查詢和統計。