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