鄧宗平,趙啟軍,陳 虎
(四川大學(xué) 計算機學(xué)院 視覺合成圖形圖像技術(shù)國防重點學(xué)科實驗室,四川 成都 610065)
基于深度學(xué)習(xí)的人臉姿態(tài)分類方法
鄧宗平,趙啟軍,陳 虎
(四川大學(xué) 計算機學(xué)院 視覺合成圖形圖像技術(shù)國防重點學(xué)科實驗室,四川 成都 610065)
人臉姿態(tài)通常表達(dá)著有用的信息,準(zhǔn)確地把握人臉的姿態(tài),往往在人臉對齊、人類行為分析以及司機疲勞駕駛監(jiān)控等方面有著重要的作用。文中方法與以往姿態(tài)估計方法不一樣,是一種基于卷積神經(jīng)網(wǎng)絡(luò),應(yīng)用深度學(xué)習(xí)做人臉姿態(tài)分類的方法。首先,第一次網(wǎng)絡(luò)對姿態(tài)在yaw方向上進(jìn)行5分類,同時在roll方向具有魯棒性。之后,將第一次輸出正臉的結(jié)果進(jìn)入第二次網(wǎng)絡(luò),對姿態(tài)在pitch方向進(jìn)行3分類。所有的輸出結(jié)果對光照都具有魯棒性。文中采用級聯(lián)的方法在公開庫上做測試,準(zhǔn)確率高達(dá)95%以上。在實際監(jiān)控視頻中,姿態(tài)估計不僅有較高的準(zhǔn)確率,而且有驚人的速度。由于本身實驗的設(shè)計獨特性,只做了自身實驗對比。結(jié)果充分展示了用合理的神經(jīng)網(wǎng)絡(luò)與網(wǎng)絡(luò)級聯(lián)的方法在姿態(tài)估計上面的發(fā)展?jié)摿Α?/p>
姿態(tài)分類;級聯(lián);深度學(xué)習(xí);卷積神經(jīng)網(wǎng)絡(luò)
人臉姿態(tài)估計是模式識別與計算機視覺領(lǐng)域重要的研究課題。人臉姿態(tài)估計在人臉對齊、人臉識別方面有著重要的影響。比如,在已知不同的姿態(tài)前提下可以有更精確的算法來進(jìn)行對齊或匹對工作。此外,人臉姿態(tài)自身也具有重要的實際應(yīng)用價值,比如疲勞駕駛監(jiān)控[1]、消費者購物行為分析等。
研究人員提出了很多姿態(tài)估計的方法,比如:基于模型的方法[2]、基于人臉外觀的方法[3]、基于3維人臉的方法[4]。同時在文獻(xiàn)[5]中,還提出了一種基于橢圓模板和眼睛嘴巴位置的人臉姿態(tài)估計方法。常用算法包括支持向量機、基于特征空間的方法[6],以及使用神經(jīng)網(wǎng)絡(luò)[7]的姿態(tài)估計,等等。
文中運用深度學(xué)習(xí)的方法對人臉姿態(tài)進(jìn)行大角度分類。首先用第一級網(wǎng)絡(luò)進(jìn)行5種姿態(tài)分類(左+,左,正,右,右+),在第一級分類為正臉的前提下進(jìn)行第二層網(wǎng)絡(luò),再區(qū)分3種姿態(tài)(俯,正,仰),然后進(jìn)行相關(guān)參數(shù)對比實驗。實驗結(jié)果表明,用深度學(xué)習(xí)的方法進(jìn)行姿態(tài)分類是可行的,而且可以得到令人滿意的效果。實驗的關(guān)鍵在于合理的卷積神經(jīng)網(wǎng)絡(luò)設(shè)計,有效的數(shù)據(jù)處理與級聯(lián)方式,以及在訓(xùn)練網(wǎng)絡(luò)過程中選擇合適的參數(shù)。
深度學(xué)習(xí)的概念源自人工神經(jīng)網(wǎng)絡(luò),其是包含多隱藏層的多層感知器(MLP)。它通過對輸入數(shù)據(jù)的低層特征學(xué)習(xí)來形成更加抽象的高層特征表示,從而學(xué)習(xí)到數(shù)據(jù)的分布規(guī)律[8]。文獻(xiàn)[9]揭示了深度學(xué)習(xí)的發(fā)展?jié)摿Α4撕螅墨I(xiàn)[10-12]也展示了深度學(xué)習(xí)在圖片分類、人臉識別、行人檢測、信號處理等領(lǐng)域所取得的成果。深度學(xué)習(xí)之所以稱之為“深度”是相較于傳統(tǒng)的機器學(xué)習(xí)方法而言的,比如支持向量機(SVM)[13]、提升方法(boosting)、最大熵方法等。
深度學(xué)習(xí)網(wǎng)絡(luò)的非線性操作的層數(shù)比較多,屬于非監(jiān)督的學(xué)習(xí)。深度學(xué)習(xí)常用的算法包括:自動編碼器、稀疏自動編碼器、受限玻爾茲曼機、卷積神經(jīng)網(wǎng)絡(luò)、深度信念網(wǎng)絡(luò)[14]等。實驗選用卷積神經(jīng)網(wǎng)絡(luò)。
卷積神經(jīng)網(wǎng)絡(luò)是人工神經(jīng)網(wǎng)絡(luò)的一種,是計算機視覺與模式識別、語音分析等領(lǐng)域研究的熱點。卷積神經(jīng)網(wǎng)絡(luò)是由多層的神經(jīng)網(wǎng)絡(luò)構(gòu)成,每一層又可以有多個二維平面,每一個平面有多個獨立的神經(jīng)元。典型的卷積神經(jīng)網(wǎng)絡(luò)如圖1所示。

圖1 卷積神經(jīng)網(wǎng)絡(luò)
文中實驗也按照這樣的“卷積-pooling-卷積-pooling”設(shè)計模式進(jìn)行網(wǎng)絡(luò)設(shè)置,并且采用兩層級聯(lián)的方法進(jìn)行相應(yīng)的姿態(tài)分類。
測試實驗評估包括兩個方面:一方面是訓(xùn)練模型實時輸出性能指標(biāo),包括損失函數(shù)(loss)、訓(xùn)練中測試準(zhǔn)確率(accuracy);另一方面是模型測試性能指標(biāo),包括分類準(zhǔn)確率、姿態(tài)分類時間。
2.1 訓(xùn)練實時輸出性能指標(biāo)分析
假設(shè)網(wǎng)絡(luò)最后的全連接層輸出5維數(shù)據(jù)是θi(i=0,1,…,4),則輸出概率函數(shù)可表示為:
(1)
損失函數(shù)定義如下:
loss=-log(σi(θ))
(2)
其中,σi(θ)表示屬于第i類的概率大小,即預(yù)測出來的屬于每一類的概率大小。由于σi(θ)在[0,1]之間,則對應(yīng)的loss值就應(yīng)該取值在(0,+∞)。因此,loss值越小,表明學(xué)習(xí)到的特征越好。
網(wǎng)絡(luò)最后接accuracy層輸出,其為評判分類準(zhǔn)確度,accuracy越接近1,說明訓(xùn)練分類效果越好。
對比實驗主要是調(diào)節(jié)三個參數(shù),它們分別是學(xué)習(xí)率(base_lr)、學(xué)習(xí)步長(stepsize)、最大迭代次數(shù)(max_iter)。學(xué)習(xí)率是指神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)數(shù)據(jù)特征的能力,學(xué)習(xí)步長是每學(xué)習(xí)一定次數(shù)之后相應(yīng)改變學(xué)習(xí)率的次數(shù)大小,最大迭代次數(shù)是學(xué)習(xí)總的次數(shù)。
2.2 測試結(jié)果性能指標(biāo)
對訓(xùn)練好的模型進(jìn)行性能評估,包含了兩個重要指標(biāo):一是測試已知類型的姿態(tài)圖片獲取的準(zhǔn)確率;二是進(jìn)行姿態(tài)分類估計所需要耗費的時間(ms)。
3.1 數(shù)據(jù)集
訓(xùn)練數(shù)據(jù)分別來源于FERET,Multi-pie,Cas-peal和point-04公開數(shù)據(jù)庫。四個數(shù)據(jù)庫的共同特點在于,它們的數(shù)據(jù)是按照不同角度進(jìn)行的分類,因此便于對數(shù)據(jù)集進(jìn)行加標(biāo)簽分類。實驗第一個網(wǎng)絡(luò)把姿態(tài)角分為5類,第二個網(wǎng)絡(luò)姿態(tài)分為3類。
3.2 數(shù)據(jù)處理方式
由于原始數(shù)據(jù)的數(shù)量有限性,實驗需要對原始數(shù)據(jù)進(jìn)行擴(kuò)充。實驗之前,對相應(yīng)的原始數(shù)據(jù)按1:5的比例劃分測試集與訓(xùn)練集,然后對訓(xùn)練數(shù)據(jù)進(jìn)行擴(kuò)充。數(shù)據(jù)處理方法如下:
(1)人臉檢測;
(2)獲取人臉框之后,用旋轉(zhuǎn)、平移、縮放的方式對訓(xùn)練數(shù)據(jù)進(jìn)行擴(kuò)充;
(3)同時為了讓姿態(tài)分類模型適應(yīng)不同的環(huán)境條件,實驗對部分圖片進(jìn)行加光照、加噪聲的處理。
在各種處理方式下,最終數(shù)據(jù)分布均勻,訓(xùn)練圖片全部歸一化為32*32大小的灰度圖,如圖2所示。

圖2 實驗灰度圖(旋轉(zhuǎn)角(上),俯仰角(下))
3.3 網(wǎng)絡(luò)設(shè)置
實驗網(wǎng)絡(luò)使用3層卷積層,3層下采樣,網(wǎng)絡(luò)層之間加適當(dāng)?shù)淖儞Q層,最后的網(wǎng)絡(luò)進(jìn)行兩次全連接。第一次網(wǎng)絡(luò)輸出一組5維向量,第二次網(wǎng)絡(luò)在第一次預(yù)測結(jié)果為正臉的情況下進(jìn)行再分類,精細(xì)姿態(tài)角是俯仰還是平視角度,最后的輸出都是3維向量。最終經(jīng)過兩層網(wǎng)絡(luò),實驗得到的結(jié)果是7分類問題。級聯(lián)方式如圖3所示。

圖3 級聯(lián)示意圖
3.4 對比訓(xùn)練方法與評估
表1是實驗對部分參數(shù)的嘗試并且修改部分參數(shù)
后獲取的結(jié)果。進(jìn)行了多組實驗,結(jié)果表明,當(dāng)初始base_lr設(shè)置過大(大于0.01),網(wǎng)絡(luò)很快出現(xiàn)飽和狀態(tài),反之,學(xué)習(xí)能力很弱,獲取的有效信息很少。同時,對學(xué)習(xí)步長和學(xué)習(xí)迭代次數(shù)的設(shè)置也會直接影響學(xué)習(xí)的效果。因此,設(shè)計了5組實驗進(jìn)行對比,對比結(jié)果如表1所示,兩層網(wǎng)絡(luò)的訓(xùn)練方法是一致的。
3.5 測試方法與結(jié)果
根據(jù)上面的實驗比較,把實驗4訓(xùn)練出的模型作為測試模型,測試方法是根據(jù)已知角度的圖片進(jìn)行定量分析,測試集不僅包括訓(xùn)練的各種角度,而且包含了光照、旋轉(zhuǎn)的變化。所有的測試圖片預(yù)處理方法與訓(xùn)練數(shù)據(jù)一致。同時,實驗對人臉由輸入網(wǎng)絡(luò)到輸出結(jié)果的所需時間進(jìn)行計算,準(zhǔn)確地記錄姿態(tài)估計所需要的時間。實驗取得了較高的準(zhǔn)確率,在測試速度上也同樣令人滿意。測試結(jié)果與測試環(huán)境如表2所示。

表1 參數(shù)對比實驗及結(jié)果
注:Mean-loss表示平均誤差,參數(shù)越小越好;Max-accuracy表示訓(xùn)練中最大準(zhǔn)確率;Last-accuracy表示最終收斂的準(zhǔn)確率。

表2 網(wǎng)絡(luò)實驗結(jié)果與時間統(tǒng)計
注:測試電腦配置,4核cpu處理器:intel i5-4690 3.50 GHz,顯卡:NVIDIA GeForce GTX750。
3.6 實驗總結(jié)
由實驗結(jié)果可知,使用深度學(xué)習(xí)方法進(jìn)行姿態(tài)估計,不管在數(shù)據(jù)庫還是在實際應(yīng)用場景都是可行的。
文中應(yīng)用深度學(xué)習(xí)在人臉姿態(tài)問題上進(jìn)行了嘗試,結(jié)果表明,深度學(xué)習(xí)是一種高效、高準(zhǔn)確度的新方法。但是,實驗還存在不足之處,有待進(jìn)一步研究。總的說來,深度學(xué)習(xí)下進(jìn)行人臉姿態(tài)估計,是一個可行且高效的方法。為了突破已有成果與應(yīng)用的限制,更大的數(shù)據(jù)、更深的網(wǎng)絡(luò)將會是一個契機,在大數(shù)據(jù)的支持下,把更多更好的人臉姿態(tài)估計應(yīng)用到實際生活中,比如:場景監(jiān)控、司機駕駛監(jiān)控,甚至是物體形態(tài)分析,都將成為可能,相信在深度學(xué)習(xí)的浪潮中人臉姿態(tài)估計會有更好的發(fā)展。
[1] Ghaffari A,Rezvan M,Khodayari A,et al.A robust head pose tracking and estimating approach for driver assistant system[C]//Proc of IEEE international conference on vehicular electronics and safety.[s.l.]:IEEE,2011:180-186.
[2] Yang R,Zhang Z.Model-based head pose tracking with stereovision[C]//Proceedings of fifth IEEE international conference on automatic face and gesture recognition.[s.l.]:IEEE,2002:255-260.
[3]NgJ,GongS.Compositesupportvectormachinesfordetectionoffacesacrossviewsandposeestimation[J].Image&VisionComputing,2002,20(5):359-368.
[4]BaggioDL,EmamiS,EscrivaDM,etal.MasteringOpenCVwithpracticalcomputervisionprojects[M].Birminghan:PacktPublishingLtd,2012:208-254.
[5] 施 華.頭部姿態(tài)估計與跟蹤系統(tǒng)的研究與實現(xiàn)[D].上海:華東師范大學(xué),2015.
[6]DarrellT,MoghaddamB,PentlandAP.Activefacetrackingandposeestimationinaninteractiveroom[C]//Procof2013IEEEconferenceoncomputervisionandpatternrecognition.[s.l.]:IEEEComputerSociety,1996:67-67.
[7]HoggT,ReesD,TalhamiH.Three-dimensionalposefromtwo-dimensionalimages:anovelapproachusingsynergeticnetworks[C]//ProceedingsofIEEEinternationalconferenceonneuralnetworks.[s.l.]:IEEE,1995:1140-1144.
[8] 余 凱,賈 磊,陳雨強,等.深度學(xué)習(xí)的昨天、今天和明天[J].計算機研究與發(fā)展,2013,50(9):1799-1804.
[9]KrizhevskyA,SutskeverI,HintonGE.Imagenetclassificationwithdeepconvolutionalneuralnetworks[M]//Advancesinneuralinformationprocessingsystems.[s.l.]:[s.n.],2012:1097-1105.
[10]LuoP.Hierarchicalfaceparsingviadeeplearning[C]//ProcofIEEEconferenceoncomputervisionandpatternrecognition.[s.l.]:IEEE,2012:2480-2487.
[11]SunY,WangX,TangX.Deepconvolutionalnetworkcascadeforfacialpointdetection[C]//ProceedingsofIEEEcomputersocietyconferenceoncomputervisionandpatternrecognition.[s.l.]:IEEE,2013:3476-3483.
[12]ZhuZ,LuoP,WangX,etal.Deeplearningidentity-preservingfacespace[C]//Proceedingsof2013IEEEinternationalconferenceoncomputervision.[s.l.]:IEEEComputerSociety,2013:113-120.
[13] 王 輝.主成分分析及支持向量機在人臉識別中的應(yīng)用[J].計算機技術(shù)與發(fā)展,2006,16(8):24-26.
[14]HuangGB.Learninghierarchicalrepresentationsforfaceverificationwithconvolutionaldeepbeliefnetworks[C]//ProcofIEEEconferenceoncomputervisionandpatternrecognition.[s.l.]:IEEE,2012:2518-2525.
Face Pose Classification Method Based on Deep Learning
DEND Zong-ping,ZHAO Qi-jun,CHEN Hu
(National Key Laboratory of Fundamental Science on Synthetic Vision,School of Computer Science,Sichuan University,Chengdu 610065,China)
Face pose usually contains useful information,so detecting it accurately plays an important role in face alignment,human behavior analysis and drivers’ fatigue driving monitoring.A novel method is proposed in this paper which applies deep learning to human face pose classification based on convolutional neural networks.It can be divided into two steps mainly.First,layer one classifies pose into 5 categories at direction yaw,and it’s of robustness at direction roll.Then layer two takes the result of step one as input to classify pose into 3 categories at direction pitch.All outputs are robust to illumination.The cascade connection is used to test on public benchmark,and the result shows that its accuracy is 95%.In real surveillance video,it has both high accuracy and fast estimating speed.Due to the particularity of experiment,it only contrasts the result to itself.Experimental results show that well-designed cascade connection of neural network can estimate pose well.
pose classification;cascade;deep learning;convolutional neural network
2015-11-12
2016-03-09
時間:2016-06-22
國家自然科學(xué)基金資助項目(61202160,61202161);科技部重大儀器專項(2013YQ49087904)
鄧宗平(1990-),男,碩士研究生,研究方向為模式識別、計算機視覺;趙啟軍,副教授,碩士生導(dǎo)師,研究方向為深度學(xué)習(xí)、模式識別、機器學(xué)習(xí)、計算機視覺等;陳 虎,講師,碩士生導(dǎo)師,研究方向為模式識別、圖像處理等。
http://www.cnki.net/kcms/detail/61.1450.TP.20160622.0845.060.html
TP301
A
1673-629X(2016)07-0011-03
10.3969/j.issn.1673-629X.2016.07.003