李睿,李科,孫家煒
(1.四川大學計算機學院,成都 610065;2.四川大學視覺合成圖形圖像技術國防重點學科實驗室,成都 610065;3.四川川大智勝軟件股份有限公司,成都 610045)
在互聯網技術不斷發展的今天,人工智能[1]成為了當前眾多前沿技術的潮流,追求軟件應用的快捷、安全是各個領域重要的主題。由于人工智能中計算機視覺技術[2]的快速發展,誕生出基于深度學習[3]的人臉識別技術可應用于各種需要驗證身份的場景,如銀行交易認證、車站卡口認證以及門禁系統等眾多安防領域。
目前的人臉識別主要是利用二維人臉檢測特征點[4],并分部分訓練深度學習模型提取特征,再利用特征信息比對進行身份識別。但是由于受到姿勢、光照、表情變化等因素的影響,其有較大的局限性。此外,隨著二維人臉識別技術的成熟與廣泛應用,更高標準的安全性、可靠性要求被提出,于是三維人臉識別技術[5]開始誕生。經過國內外研究人員的大量研究證明三維人臉可大大提高識別技術的可靠性。
雖然直接利用三維人臉信息的識別方法不斷有新的進展,且能夠更加準確豐富地描述人臉特征,并不容易受到光照和姿態影響,但是三維人臉具有信息采集耗時耗力,采集條件苛刻、成本高等缺點。所以本方法結合二維圖像采集方便快捷和三維人臉識別更為可靠準確的優勢,利用二維紋理重建三維人臉深度信息,將二維人臉與三維人臉轉換到同一度量空間,再進行同一度量空間的人臉信息對比識別。
三維人臉數據中的深度信息與二維人臉圖像中的紋理信息具有不同的性質和屬性,按照紋理的具體表現形式分類可將紋理分為:顏色紋理、凹凸紋理、過程紋理。凹凸紋理是二維紋理由于不同部位光反射的不同,可以體現人臉表面的凹凸特性,該凹凸特性在三維人臉中的表現為三維人臉數據中的深度信息。考慮到實際應用中在注冊端采用三維人臉采集設備進行注冊是可行的且二維攝像機已經普及,因此本文重點研究了三維人臉注冊加二維人臉識別,以期推動三維人臉識別的實際應用。三維人臉注冊加二維人臉識別是一個異源異質異構問題,其核心問題在于如何將三維人臉與二維人臉轉換到同一度量空間,本文研究了二維人臉如何轉換為三維結構信息(深度圖),提出了一套高精度三維人臉結構信息對二維人臉紋理信的人臉識別框架與算法。
本研究從FRGC 數據庫中取466 人,共3276 組數據(每組由一張二維人臉紋理圖像和對應的三維人臉深度圖像構成,同一人有多組數據)。
(1)預處理
由于訓練數據量較少以及三維深度圖擴充受限(不受光照等影響),所以本研究將二維人臉紋理圖像進行了擴展與增強[6],通過OpenCV 訪問圖像像素改變其對比度亮度生成新的紋理圖像,再映射出其相應的三維深度圖像。 亮度對比度調整公式為:g(i,j)=a*f(i,j)+b,其中 i 和 j 表示 i 行 j 列,f(i,j)為源圖像像素,g(i,j)為輸出圖像像素,參數a 為控制對比度參數,參數b 為控制亮度的參數。擴展效果圖如圖1。

圖1 圖像擴展
(2)算法框架及網絡結構
①算法的總體框架
如圖2 所示,該方法利用二維圖像通過深度網絡重建三維深度圖后進行人臉特征提取,同時原有數據集中三維人臉數據投影形成的人臉深度圖也進行特征提取,最后進行特征比對。實質上本方法是將二維紋理與三維深度信息通過深度網絡映射到同一特征空間上進行比較。

圖2 三維深度與二維紋理的識別流程
②二維紋理到三維深度圖的映射網絡
二維紋理到三維深度的映射是端到端的像素映射,除特征表達外還進行了重建,且必須從總體上計算光照(紋理)與深度之間的關系。因此作為特征提取的卷積神經網絡不適合二維紋理到三維深度。本研究設計通過自編碼網絡[7]結構實現映射,通過自編碼網絡對輸入數據進行了降維壓縮,然后在輸出層中解壓縮,通過這種網絡訓練可以將冗余信息去除并保留其主要的特征。算法結構如圖3 所示。

圖3 自編碼網絡結構
對于該自編碼神經網絡,含有2N 個全連接層,且具有對稱性。編碼器含有前N 個全連接層,解碼器含有后N 個全連接層,設第k(k=1,2,…,2N)個全連接層的輸出神經元單元數為m(k),網絡的輸入為x ∈Rd,則第 k 層的輸出表達為 h(k)=g(W(k)h(k-1)+b(k)) ,其中為該層的參數矩陣,b(k)∈Rm(k)為偏置項,為激活函數。于是最后一層的輸出為,其中 H:Rd→Rd,即為從二維人臉紋理圖到三維人臉深度圖的非線性映射模型。整個二維人臉紋理圖到三維人臉深度圖轉換的問題轉化為求取H 的問題。


圖4 自編碼網絡詳細結構
③三維深度圖特征提取網絡
由于訓練數據量較少以及三維深度圖擴充受限(不受光照等影響),所以本研究將二維人臉紋理圖像進行了擴展,通過改變其對比度亮度生成新的紋理圖像,再映射出其相應的三維深度圖像[8]。然后針對本研究設計了簡單的卷積神經網絡[9]以實現三維深度圖的訓練與特征提取。該網絡結構如圖5 所示。

圖5 三維人臉深度圖與二維人臉映射圖特征提取網絡
該網絡包含了兩個卷積層,兩個池化層,以及兩個全鏈接層。Conv1 和Conv2 為卷積層,簡單來說卷積層為利用二維濾波器根據步長在二維圖像(三維深度圖為二維圖像)的像素點上滑動,同時與該像素點及其附近像素點做內積,通過這樣的卷積操作可以不斷提取圖像的特征。兩個Pooling 層為池化層,該層可達到減少數據處理量的作用,通過利用圖像的局部相關性對圖像進行子抽樣,還可以保留有用的信息,并且能夠在一定程度上控制過擬合。IP1 和IP2 為全連接層,全連接層中的每個神經元與其前一層的所有神經元進行全連接。全連接層可以整合卷積層和池化層中具有類別區分性的局部信息。該網絡具有簡潔但層次完備的特點,適用于本研究數據量較少的情況。
(3)評估方法
算法評估中,本研究從FRGC 數據庫中取466 人,共3276 組(每組由一張二維人臉紋理圖像和三維人臉深度圖像構成)數據中選取100 人的722 組數據作為測試對象,余下的366 人的所有數據作為訓練集。為了保證特征提取的魯棒性,從訓練集中隨機抽取一半的數據(1277 組)用于二維紋理到三維深度的映射網絡的訓練學習,通過學習訓練形成的模型將訓練集中所有的二維人臉紋理圖像映射為三維深度圖。最后利用映射得到的三維深度圖形成特征提取的訓練數據進行學習訓練,得到特征提取模型以提取用于人臉識別的特征。在應用到人臉識別階段用提取的特征值進行對比,求得余弦相似度,判斷是否為同一人臉,并計算判斷正確的準確率。
通過二維人臉紋理圖到三維人臉深度圖的非線性映射模型映射出的結果如圖6(每對圖像中左圖為二維紋理圖,中間圖為三維投影深度圖,右圖為二維紋理重建三維深度圖)。

圖6 二維紋理到三維深度映射的深度神經網絡網絡與映射結果
通過三維深度圖特征提取網絡提取特征后進行特征比對,測試結果表明在沒有其他任何信息支撐的前提下,三維人臉深度圖像對二維人臉紋理圖像的異構異質識別率在 100 人的 722 組數據上,達到了75.21%。
由于該實驗數據集較小,所以識別率還未達到最好效果。且由于使用深度學習的方法可以在數據繼續擴充的情況下不斷優化訓練模型并提升準確度,且二維人臉紋理采集方便、三維深度信息可信度高,對比與當前的二維人臉識別與三維人臉識別技術,基于二維紋理重建三維人臉深度圖像后的人臉識別有不錯的應用價值和發展前景。與其他方法相比,該研究具有以下優勢:①用采集二維紋理圖代替了采集三維信息,且本研究中的兩種深度學習框架架構簡單,訓練方便。②利用三維深度圖作為驗證手段,提升了人臉識別的可靠性。
針對該實驗可以預見,通過采集二維人臉紋理并利用三維深度圖進行人臉識別的方法將使基于人臉識別的應用更加便捷且更加可靠。對于該文中使用的深度學習模型,如果繼續增加數據集以及改進深度學習網絡為更多層更深的網絡并使用更好的設備進行訓練模型,會得到準確率更高的深度學習模型。