楊磊 劉美枝
(山西大同大學物理與電子科學學院 山西省大同市 037009)
物聯(lián)網(wǎng)和人工智能時代的到來,人們對健康安全出行重視度越來越高,人臉識別技術(shù)的應(yīng)用產(chǎn)品也貫穿人們的生活中,在銀行金融業(yè)務(wù)辦理進行身份比對、手機移動支付平臺進行刷臉認證、有保密性質(zhì)的辦公場所進行身份認證,采用人臉識別方式進行輔助都可以在一定程度上提供便捷。各種傳統(tǒng)神經(jīng)網(wǎng)絡(luò)算法過渡到現(xiàn)階段被人們廣泛研究的深度學習算法,激發(fā)了人們對人工智能的研究興趣。
機器學習算法廣泛應(yīng)用在語言文字處理、機器視覺、視頻圖像處理等人工智能相關(guān)產(chǎn)品中,海量數(shù)據(jù)流處理使得對學習算法的精度、學習時間以及硬件處理器要求越來越高,
機器通過對大量數(shù)據(jù)的分析和學習,對同種事物的不同表態(tài)進行分類,這樣便極大地提高了現(xiàn)代社會的效率。如果不是機器學習的助力,我們可能需要對處理數(shù)據(jù)中的某個功能寫出具體的算法才可能實現(xiàn)。我們能想到的其中一種解決辦法就是試圖對數(shù)據(jù)進行分析和歸類,歸納出可以被我們使用的信息。比如在本設(shè)計的人臉識別問題上,我們通過對大量人臉樣本的結(jié)構(gòu)和臉部器官的位置進行分析,學習到某種算法可以獲取某個特定人的模式,最終通過匹配這種模式來達到識別的效果。
本次設(shè)計實現(xiàn),是通過隱馬爾可夫模型(Hidden Markov Model,HMM)進行建模,對訓練的人臉樣本生成對應(yīng)的HMM 模型,把未經(jīng)過訓練的人臉與模型進行匹配,最終找到對應(yīng)的訓練樣本的某一個,系統(tǒng)總結(jié)結(jié)構(gòu)如圖1所示。
本文主要研究內(nèi)容如下:
(1)對人臉識別中常用到的特征提取算法進行介紹和比較。由于采集到的人臉圖像會受到很多外界因素的影響,比如光照、背景、噪聲等,因此必須對采集到的圖像進行裁剪歸一化、灰度處理等預處理工作,盡可能降低上面提及的外界因素對人臉識別成功的影響。而且如果直接將預處理后的圖像作為特征向量,那么其運算復雜度會很高,進而大大降低了運行速率。通過提取人臉圖像的關(guān)鍵信息即特征值,可以對觀察數(shù)據(jù)的維度進行歸納,降低運算復雜度。通過比較多種特征提取算法,本文最終選擇離散余弦變換(DCT)作為最終的特征提取算法。
(2)關(guān)于人臉識別的算法進行簡單介紹和分析。傳統(tǒng)的人臉識別方法比如幾何特征法雖說也能實現(xiàn)識別功能,但由于人臉圖像的隨機性導致這種方法有較大的局限性;本文的人臉識別算法采用機器學習中的隱馬爾可夫模型(HMM),該方法穩(wěn)定性強且復雜度低。

圖1:系統(tǒng)總體結(jié)構(gòu)

圖2:特征提取采樣過程
(3)對人臉訓練樣本進行HMM 模型訓練。在MATLAB 運行環(huán)境下對人臉圖像建立模型,得到相應(yīng)的模型集,用于后期的識別。把待識別的人臉圖像進行特征提取,并與訓練好的模型集進行匹配,最終達到系統(tǒng)基本要求。
一般情況下,系統(tǒng)獲取的原始圖像由于受到環(huán)境因素等的限制和噪聲干擾,往往不能直接使用,在本系統(tǒng)中,為了保證提取的的人臉在圖像的大小、位置、偏斜等的不變性、對光照條件的不敏感性以及對頭發(fā)遮擋等,必須在提取特征之前對圖像做預處理工作。
首先,由于人臉圖像在不同光照條件下灰度數(shù)據(jù)變化很大,為了避免光照的影響我們要進行直方圖均衡化。直方圖是圖像各像素灰度值的一種統(tǒng)計度量,表示數(shù)字圖像中每一個灰度級與其出現(xiàn)的頻率之間的統(tǒng)計關(guān)系,直方圖均衡化的基本思想是將各灰度級分量盡量平均分布,在直方圖上表現(xiàn)為由密集的灰度分布變?yōu)榫鶆蚍植迹瑥亩鴣碓鰪妶D像的對比度。對于數(shù)字圖像,設(shè)GL=256 為灰度級數(shù),則第k 級的出現(xiàn)頻度為:

表1:采用不同數(shù)據(jù)庫的識別正確率

式中:Nk為灰度級為k 的像素數(shù),N 為圖像的總像素數(shù),則其直方圖變換函數(shù):

其次,由于人臉庫中人臉的關(guān)鍵部位在圖片中的相對位置不一定相同,這直接影響識別結(jié)果,所謂幾何歸一化包括圖像的平移,旋轉(zhuǎn),翻轉(zhuǎn)和縮放。從而使其他部位如嘴、鼻、臉頰等也保持在相對標準的位置,以此保證人臉位置的一致性。
一直以來,特征提取都是人臉識別算法中很重要的問題,提取高效的人臉特征能夠增強系統(tǒng)對光照、表情、姿態(tài)等的魯棒性,進而有效提高識別率。人臉特征提取方法有很多種,比如Z.M.Hafed等提出了離散余弦變換(DCT)方法[4],Nefian 等提出了二維離散余弦變化(2D-DCT)[5],Sammaria 等提出了直接將圖像灰度值作為觀測向量[6]。其中,DCT 作為一種簡單高效的特征提取方法,在人臉識別算法中被廣泛應(yīng)用,本文采用DCT 特征提取法,假設(shè)輸入人臉圖像大小為H*W,重疊系數(shù)為Y,采用窗口大小為X*W 的矩形進行垂直采樣,那么其觀測序列長度Z 為:

特征提取采樣過程如圖2所示。
隱馬爾可夫模型(HMM)是由馬爾可夫鏈演變而來的,是一個雙重隨機過程,其中的一種隨機過程是指馬爾可夫鏈,即狀態(tài)的轉(zhuǎn)移,二另一個隨機過程是觀察序列與狀態(tài)描述之間的關(guān)系。進一步我們總結(jié)出一個HMM 所應(yīng)有的幾個要素:
(2)M:每個狀態(tài)對應(yīng)的不同觀察序列的總數(shù)


(4)A:狀態(tài)轉(zhuǎn)移概率矩陣

(5)B:觀察概率矩陣


隨后進行遞歸:

進而可得:

(2)對已知HMM 的模型λ 及一個觀察序列Ok,選擇最優(yōu)狀態(tài)序列使用Viterbi 算法在前向變量思路的基礎(chǔ)上,每一步求最大的概率來計算可能的概率;
本次實驗所用計算機為Win10 64 位系統(tǒng),軟件環(huán)境為matlab 2014a。所用數(shù)據(jù)集為ORL 人臉庫和Yale 人臉庫,其中,ORL 人臉庫中收集了40 位不同種族、年齡、性別的對象。每人10 個樣本,不同樣本中人臉部分表情和細節(jié)均有變化,人臉的姿態(tài)也有變化,其深度旋轉(zhuǎn)和平面旋轉(zhuǎn)可達20 度;Yale 人臉庫中收集了不同表情/光照/姿態(tài)下的11 張人臉,沒人15 個樣本,共165 張圖片。通過matlab 仿真,所得實驗數(shù)據(jù)如表1所示。
本文人臉識別主要內(nèi)容包括人臉圖像預處理、人臉特征提取和HMM 模型訓練。通過matlab 軟件分別在人臉數(shù)據(jù)庫中進行仿真,根據(jù)仿真結(jié)果可知,本算法對人臉識別有較高的識別率和穩(wěn)定性。