一種基于級聯深度神經網絡的人臉屬性識別方法
【專利摘要】本發明涉及一種基于級聯深度神經網絡的人臉屬性識別方法,其步驟包括:1)建立由多個獨立的卷積深度神經網絡構成的級聯的深度神經網絡;2)采用大量人臉圖像數據逐級訓練所述級聯的深度神經網絡中的各級網絡,將前一級網絡的輸出作為后一級網絡的輸入,得到由粗到細的神經網絡結構;3)采用所述由粗到細的神經網絡結構對輸入的人臉圖像進行屬性識別,并輸出最終的識別結果。本發明在深度學習的基礎上引入了級聯算法體系,加快訓練時間,并且通過級聯的由粗到細的處理過程,每層利用上層網絡的信息提高了最終網絡的性能,能夠有效提高人臉屬性識別的速度和準確率。
【專利說明】一種基于級聯深度神經網絡的人臉屬性識別方法
【技術領域】
[0001]本發明屬于圖像處理和人臉識別【技術領域】,具體涉及一種基于級聯深度神經網絡的人臉屬性識別方法。
【背景技術】
[0002]人臉屬性即從人的面部特征能夠得到的人的性別,年齡,種族等屬性。對人臉屬性的識別,能夠幫助人臉識別更加精確,且單獨的人臉屬性識別也有著很多的應用場景。傳統的人臉屬性識別方法采用人工設計的紋理算子加上SVM等傳統分類器的淺層結構,往往得不到較為精確的預測效果。
[0003]深度神經網絡是近幾年來比較熱的一個研究方向,它從仿生學的角度模擬人腦的分多層計算架構體系,是最接近人工智能(Al)的一個方向,相對于SVM等傳統的淺層機器學習架構,它更能表征一些復雜的模式與函數。近幾年在語音識別及圖像處理領域,深度學習均取了 state-of-the-art的結果。但深度學習存在訓練困難,訓練周期長等缺點,雖然已經在人臉屬性識別及分類方面得到應用,但人臉屬性識別的精度和處理速度方面都不能很好的滿足實際需求。
【發明內容】
[0004]本發明針對上述的問題,提供一種基于級聯深度神經網絡的人臉屬性識別方法,在深度學習的基礎上引入了級聯算法體系,加快訓練時間,并且通過級聯的由粗到細(coarse-to-fine)的處理過程,每層利用上層網絡的信息提高了最終網絡的性能。
[0005]為實現上述目的,本發明采用的技術方案如下:
[0006]一種基于級聯深度神經網絡的人臉屬性識別方法,其步驟包括:
[0007]I)建立由多個獨立的卷積深度神經網絡構成的級聯的深度神經網絡;
[0008]2)采用大量人臉圖像數據逐級訓練所述級聯的深度神經網絡中的各級網絡,將前一級網絡的輸出作為后一級網絡的輸入,得到由粗到細的神經網絡結構;
[0009]3)采用所述由粗到細的神經網絡結構對輸入的人臉圖像進行屬性識別,并輸出最終的識別結果。
[0010]進一步地,所述級聯的深度神經網絡中每一級獨立的卷積深度神經網絡包含多層,包括:卷積層,最大采樣層,unshared卷積層,全連接層,soft-max層。
[0011]進一步地,對輸入所述級聯的深度神經網絡的人臉圖像進行預處理,包括標定和歸一化處理。
[0012]進一步地,所述人臉屬性為下列中的一種:性別,年齡,種族。
[0013]一種采用上述方法對人臉圖像進行年齡識別的方法,其步驟包括:
[0014]I)對輸入的人臉圖像數據進行對齊仿射變換和歸一化預處理,將人的年齡分為多個年齡段;
[0015]2)建立兩級級聯的深度卷積神經網絡,將預處理后的人臉圖像輸入第一級網絡,通過多層卷積神經網絡、全連接網絡以及soft-max分類器,得到輸入的人臉圖像的年齡段;
[0016]3)將第一級網絡得到的人臉圖像的年齡段輸入第二級網絡,通過卷積神經網絡層、全連接網絡層、線性回歸層,輸出所述年齡段內精確的年齡。
[0017]進一步地,上述方法將人的年齡分為O~6歲,6~18歲,18~40歲,40~60歲,60+歲五個年齡段,所述第一級網絡采用三層卷積神經網絡。
[0018]一種采用上述方法對人臉圖像進行性別識別的方法,其步驟包括:
[0019]I)建立由兩級獨立的卷積深度神經網絡構成的級聯的深度神經網絡;
[0020]2)采用大量包含不同性別的人臉圖像數據訓練所述級聯的深度神經網絡;
[0021]3)采用訓練得到兩級級聯的神經網絡結構對輸入的人臉圖像進行性別識別,并輸出最終的識別結果
[0022]進一步地,所述第一級網絡采用三層卷積神經網絡,所述第二級網絡與所述第一級網絡的結構相同。
[0023]本發明采用多層級聯深度卷 積神經網絡模型,每個Level是一個獨立的卷積深度神經網絡,按照Level的遞增,后續Level在前面Level基礎上完成更精細的計算,完成又粗到細(coarse-to-fine)的過程;每個Layer為獨立卷積深度神經網絡的一層,它由卷積神經網絡層,全連接層,soft-max層等組成,共同完成單個Level的工作。采用本發明的方法,能夠加快訓練時間,有效提高人臉屬性識別的速度和準確率。
【專利附圖】
【附圖說明】
[0024]圖1是本發明的基于級聯深度神經網絡的人臉屬性識別方法的步驟流程圖。
[0025]圖2是實施例中深度神經網絡的結構示意圖。
【具體實施方式】
[0026]下面通過具體實施例和附圖,對本發明做進一步說明。
[0027]本發明的基于級聯深度神經網絡的人臉屬性識別方法,其步驟流程如圖1所示,首先建立由多個獨立的卷積深度神經網絡構成的級聯的深度神經網絡;然后采用大量人臉圖像數據逐級訓練所述級聯的深度神經網絡中的各級網絡,得到由粗到細的神經網絡結構;然后采用所述由粗到細的神經網絡結構對輸入的人臉圖像進行屬性識別,并輸出最終的識別結果。下面進行具體說明。
[0028]1.預處理
[0029]為了減少噪聲及人類pose (姿態)等因素對人臉屬性的較大影響,在進行分層的深度級聯神經網絡之前,我們對輸入圖像進行標定、歸一化等處理,提升后續網絡的性能。
[0030]標定采用多個關鍵點,不失一般性地,本實施例使用5個關鍵點,輸入人臉圖像進行對齊仿射變換,減少不同pose對屬性的影響。
[0031]歸一化的過程為:
[0032]Iti = tank (’?5..)
[0033]其中Iij為標定后的人臉矩形框I的位置(i,j)處的像素值,I_nS整個矩形框像素平均值,Istd為像素標準差。
[0034]2.卷積深度神經網絡
[0035]卷積深度神經網絡受生物學的啟發,特別是Hubel和Wiesel早期關于貓視覺神經的研究結果而模仿的視覺系統,是一個自下而上的網絡結構。它采用多層網絡,逐層抽象,每一層在上層的基礎上抽象出更高階的應對各種不變性的紋理表示,達到在視覺識別或分類過程中應對各種圖像變化更加魯棒的結構。它每一層卷積網絡的組成一般為多個二維平面組成(feature map),每個feature map由以下幾個部分組成:
[0036](I) shared 或 unshared 卷積
[0037]i).shared卷積采用共享的權值對整個可視域進行掃描構成一個單獨的映射(feature map),這樣大大減少了網絡的參數且能帶來一定的平移,縮放不變性。
[0038]ii).unshared卷積在不同的可視域位置采用不同的卷積核,我們在較為上層的網絡層中使用這種卷積,以區別對待各個不同區域高級抽象表達對后續網絡的影響。
[0039](2)非線性變換
[0040]非線性變換模仿神經元的非線性作用,產生刺激,常用的有sigmoid,tanh函數等。以tanh為例,第k個feature map非線性變換的輸出為:
[0041 ] h^^tanh ((Wk*x) ij+bk),
[0042]其中,X為卷積神經網絡層的輸入,Wk為第k個feature map對應的卷積核,bk為第k個feature map的偏差,Iiij為輸入x經過卷積和非線性變換后的輸出。
[0043](3)聚合池化(pooling/sub-sampling)`[0044]pooling的過程是一個下采樣的過程,常用的pooling過程有max pooling,average pooling等。pooling的目的在于在減少下層網絡的輸入,從而減少計算量的同時,保證網絡具有一定的平移不變性,更加魯棒。
[0045]通過上述的卷積網絡訓練得到的圖像紋理表達輸入I inear regression或者soft-max等算法即可完成各種分類及識別任務。一個典型的卷積神經網絡如圖2所示,包括:卷積層(convolutional,簡稱為conv.,或者稱為卷積神經網絡層),最大采樣層(maxpooling,簡稱為 maxp.) , unshared 卷積層(unshared conv.),全連接層(fullyconnected),后續還可以級聯soft-max層(soft-max分類器)等等。
[0046]3.級聯算法
[0047]深度卷積神經網絡由于其網絡的復雜度,存在訓練困難,訓練周期長,較難優化等缺點。為了克服這些缺點,本發明在深度卷積神經網絡的基礎上引入了級聯算法。級聯算法的出發點是將模型分為多層,每層在上層較為模糊的結果的基礎上進一步提高性能,逐級提升,由粗到精提升整個模型的性能。
[0048]鑒于深度學習訓練的復雜性以及人臉屬性識別的特殊性。本發明結合卷積神經網絡與級聯算法,創造一種新的算法架構,將原始的深度神經網絡分解為多個復雜度較低的深度神經網絡(即一個單獨的Level)。在訓練的過程中,我們逐級訓練各級網絡。由這個逐步逼近,由粗到細訓練過程,最后得到較原始復雜度很高的網絡更優的網絡結構,且減少了訓練時間,加快了工程應用。我們將這種架構用于人臉屬性的鑒別,取得較單獨卷積神經網絡更好的性能。不失一般性,這種架構在人臉屬性以外的應用場景也能大大提升系統的性能。[0049]本發明采用的多層級聯深度卷積神經網絡模型,其包括以下結構:
[0050]I) Level:每個Level是一個獨立的卷積深度神經網絡,按照Level的遞增,后續Level在前面Level基礎上完成更精細的計算,完成coarse-to-fine的過程;
[0051]2) Layer:每個Layer為獨立卷積深度神經網絡的一層,它由卷積神經網絡層,全連接層,soft-max層等組成,共同完成單個Level的工作。
[0052]模型訓練過程:
[0053]因為采用了分級(Level)的結構,本發明在訓練時,先訓練第一級Levell。如果Levell不能繼續收斂,且模型效果未達到技術指標的情況下,在Levell基礎上增加一級Levell,繼續訓練Levell。以此類推,直到訓練的某層達到技術指標要求不再增加下一級。
[0054]4.采用級聯深度卷積神經網絡進行人臉屬性分析和識別
[0055]I)年齡預測:
[0056]在年齡的預測中我們對比了淺層網絡SVM+FEATURE SELECT,深層卷積神經網絡(CNN LEARNING),以及本發明的級聯深度卷積神經網絡(CNN LEARNING+CASCADE)三種算法的計算復雜度與性能。
[0057]1.1)網絡結構
[0058]我們采用的級聯深度卷積神經網絡的結構為:
[0059](I)預處理使用alignment算法得到60x60的人臉圖片,然后進行歸一化處理;
[0060](2)兩級級聯深度卷積神經網絡:
[0061]i) Level 1:
[0062]將人的年齡分為O?6歲,6?18歲,18?40歲,40?60歲,60+歲五個年齡段,
網絡采用3層卷積神經網絡,每層神經網絡的配置如下:
[0063]Iayerl:輸入:預處理后的人臉圖像;輸出:5x5shared卷積+max pooling生成20個 feature map ;
[0064]layer2:輸入:layerl 的 20 個 feature map ;輸出:5x5shared卷積+max pooling生成 40 個 feature map ;
[0065]layer3:輸入:layer2 的 40 個 feature map ;輸出:3x3shared卷積+max pooling生成 60 個 feature map。
[0066]上述三層卷積神經網絡后,將layer3的輸出進行串行化(flatten),作為后續級聯的全連接網絡的輸入,全連接網絡輸出500維數據,再傳給后續級聯的soft-max分類器進行分類,得到最后輸入圖像的年齡段。
[0067]ii) Level2
[0068]在Levell輸出的五個年齡段,各級聯一個較為簡單的深度神經網絡:
[0069]Iayerl:卷積神經網絡層,輸入:預處理后的人臉圖像;輸出:5x5shared卷積+maxpooling 生成 20 個 feature map ;
[0070]layer2:全連接網絡層,輸入:layerlf Iatten后數據;輸出:200維數據;
[0071]layer3:線性回歸(linear regression),輸入:layer2輸出;輸出:該年齡段內精確的年齡。
[0072]1.2)實驗結果
[0073]我們使用以上介紹的級聯深度卷積神經網絡(CNN LEARNING+CASCADE)與非級聯的深度卷積神經網絡(CNN LEARNING),基于SVM分類器的特征選擇算法(SVM+FEATURESELECT)進行對比測試,結果如表1所示。
[0074]表1.age預測實驗結果對比列表
[0075]
【權利要求】
1.一種基于級聯深度神經網絡的人臉屬性識別方法,其步驟包括: O建立由多個獨立的卷積深度神經網絡構成的級聯的深度神經網絡; 2)采用大量人臉圖像數據逐級訓練所述級聯的深度神經網絡中的各級網絡,將前一級網絡的輸出作為后一級網絡的輸入,得到由粗到細的神經網絡結構; 3)采用所述由粗到細的神經網絡結構對輸入的人臉圖像進行屬性識別,并輸出最終的識別結果。
2.如權利要求1所述的方法,其特征在于:所述級聯的深度神經網絡中每一級獨立的卷積深度神經網絡包含多層,包括:卷積層,最大采樣層,unshared卷積層,全連接層,soft-max 層。
3.如權利要求1所述的方法,其特征在于:對輸入所述級聯的深度神經網絡的人臉圖像進行預處理,包括標定和歸一化處理。
4.如權利要求3所述的方法,其特征在于:所述標定采用多個關鍵點,對輸入的人臉圖像進行對齊仿射變換以減少不同姿態對屬性的影響;所述歸一化的方法為:
5.如權利要求1所述的方法,其特征在于:所述級聯的深度神經網絡包括兩級獨立的卷積深度神經網絡。
6.如權利要求1所述的方法,其特征在于,所述人臉屬性為下列中的一種:性別,年齡,種族。
7.一種采用權利要求1所述方法對人臉圖像進行年齡識別的方法,其步驟包括: 1)對輸入的人臉圖像數據進行對齊仿射變換和歸一化預處理,將人的年齡分為多個年齡段; 2)建立兩級級聯的深度卷積神經網絡,將預處理后的人臉圖像輸入第一級網絡,通過多層卷積神經網絡、全連接網絡以及soft-max分類器,得到輸入的人臉圖像的年齡段; 3)將第一級網絡得到的人臉圖像的年齡段輸入第二級網絡,通過卷積神經網絡層、全連接網絡層、線性回歸層,輸出所述年齡段內精確的年齡。
8.如權利要求7所述的方法,其特征在于:將人的年齡分為O~6歲,6~18歲,18~40歲,40~60歲,60+歲五個年齡段,所述第一級網絡采用三層卷積神經網絡。
9.一種采用權利要求1所述方法對人臉圖像進行性別識別的方法,其步驟包括: O建立由兩級獨立的卷積深度神經網絡構成的級聯的深度神經網絡; 2)采用大量包含不同性別的人臉圖像數據訓練所述級聯的深度神經網絡; 3)采用訓練得到兩級級聯的神經網絡結構對輸入的人臉圖像進行性別識別,并輸出最終的識別結果。
10.如權利要求9所述的方法,其特征在于:所述第一級網絡采用三層卷積神經網絡,所述第二級網絡與所述第一級網絡的結構相同。
【文檔編號】G06N3/08GK103824054SQ201410053852
【公開日】2014年5月28日 申請日期:2014年2月17日 優先權日:2014年2月17日
【發明者】印奇, 曹志敏, 姜宇寧, 楊東 申請人:北京曠視科技有限公司