皮冰斌 王云光
摘要:面部表情識別是計算機視覺熱門領域.表情識別技術(shù)使得計算機能夠理解人類的情緒,具有廣闊應用前景。針對基于傳統(tǒng)機器學習和深度學習的表情識別方法進行研究,首先歸納表情識別領域常用的公開數(shù)據(jù)集;然后從傳統(tǒng)的機器學習和深度學習角度介紹表情識別基本流程與常見方法;最后指出表情識別領域存在的問題,并對未來可能的發(fā)展方向進行了總結(jié)。
.
關鍵詞:表情識別;機器學習;深度學習;圖像預處理;特征提取;表情分類
DOI:10.11907/rjdk.192322 開放科學(資源服務)標識碼(OSID):
中圖分類號:TP301文獻標識碼:A 文章編號:1672-7800(2020)006-0044-04
0 引言
心理學家Russeli的研究結(jié)果表明,人們?nèi)粘=涣髦兄挥?%的信息是通過語言傳遞的,55%的信息是通過面部表情體現(xiàn)的。文獻[1]-文獻[2]表明,面部表情是人類傳達情緒狀態(tài)和意圖最有效、最自然和最普遍的信號之一。
早在2l世紀,心理學家Ekman&Friesen就提出人類有6種主要情感(憤怒、高興、悲傷、驚訝、厭惡和恐懼)。人臉表情識別,就是利用表情識別技術(shù)對人面部的表情信息進行特征提取和表情分類的過程。計算機獲知人的表情信息,進而推斷人的心理狀態(tài),最終實現(xiàn)人機智能交互。
表情識別是計算機視覺和人工智能的一個重要領域,不僅具有突出的科研價值,還有廣闊的應用前景,例如臨床醫(yī)療、網(wǎng)絡學習、安全駕駛等。在相關領域,國內(nèi)已取得不少研究成果,但國外表情識別研究大幅領先,目前已經(jīng)進入商業(yè)化階段。
1 表情識別數(shù)據(jù)集
對于深度表達識別系統(tǒng)設計,擁有足夠數(shù)量的標記訓練數(shù)據(jù)且數(shù)據(jù)盡可能多地考慮到種群和環(huán)境變化是十分重要的。表情識別領域常用的公開數(shù)據(jù)集如表l所示。
2 表情識別基本流程與方法
表情識別分為圖像預處理、特征提取和表情分類3個步驟,如圖1所示。①從輸人的圖片中識別找出目標區(qū)域(人臉檢測),并將圖片進行歸一化處理;②從處理后的圖片中提取能夠最大程度上表達整個人臉面部的特征信息;③將上一步得到的特征送到分類器中進行表情分類。
2.1 傳統(tǒng)方法
2.1.1 圖像輸入
目前表情識別研究中,輸人數(shù)據(jù)的形式主要是靜態(tài)二維圖像和動態(tài)視頻流。表情識別數(shù)據(jù)集經(jīng)歷了從傳統(tǒng)實驗室獲取較小樣本再到現(xiàn)實生活中大規(guī)模數(shù)據(jù)庫的過程,前者的表情圖片一般具有良好頭部姿態(tài),并且整個面部基本無遮擋,例如CK+、JAFFE和MMI等數(shù)據(jù)集;后者的識別因圖片接近真實的復雜環(huán)境而十分困難,常見的有FER2013和SFEW2.0等數(shù)據(jù)集。在表1中可以查看更多相關信息。
2.1.2 預處理
圖像預處理結(jié)果直接影響表情特征提取的準確性和表情分類效果,從而影響表情識別準確率。表情識別的預處理包括人臉檢測和歸一化兩部分。
人臉檢測就是使用人臉檢測算法檢測出人臉區(qū)域,即從包含非人臉區(qū)域的人臉圖像中找到并框選出人臉部分。傳統(tǒng)方法包括模板匹配、形狀與邊緣特征、紋理特征等基于知識的方法,以及支持向量機、隱馬爾可夫模型、Adaboost算法和主成分分析等基于統(tǒng)計的方法。
傳統(tǒng)人臉檢測技術(shù)最重要的突破是Viola-Jones人臉檢測器的成功設計。2001年,Paul Viola&Michael Jones設計出基于Haar特征的高效人臉檢測器,即VJ人臉檢測器。其算法創(chuàng)新包括3個方面:使用積分圖作為特征的快速計算方法、使用AdaBoost作為有效的分類器學習方法,以及高效的級聯(lián)結(jié)構(gòu)作為分類策略。在特征選擇方面,還有基于LBP、SURF和SIFT等特征的人臉檢測方法。直到2006年深度學習逐漸走進人們視野之后,人臉檢測技術(shù)才慢慢實現(xiàn)深度學習的跨越式發(fā)展。
人臉圖像的歸一化,目的是使不同成像條件(光照強度、方向、距離、姿勢等)下拍攝的同一人照片具有一致性。人臉歸一化主要包括幾何歸一化和灰度歸一化。幾何歸一化目的是將表情子圖像變換為統(tǒng)一尺寸,有利于表情特征提取;灰度歸一化作用是增加圖像亮度,使圖像細節(jié)更加清晰,以降低光線和光照強度的影響。
2.1.3 特征提取
表情特征提取主要采用數(shù)學方法,依靠計算機技術(shù)對人臉表情的數(shù)字圖像進行數(shù)據(jù)的組織和處理,提取表情特征,去除非表情噪聲。傳統(tǒng)特征提取方式可根據(jù)面部形變及紋理的不同分為主成分分析(PCA)、獨立分量分析(ICA)、線性判別分析(LDA)等方法,以及根據(jù)局部肌肉、紋理劃分為Gabor小波法、LBP算子法和Haar-like特征提取等方法,再就是基于動態(tài)的光流法和模型法(ASM、AAM)等。文獻中使用優(yōu)化的ASM提取幾何特征并在模型中采用三角特征,最終得到了不錯的結(jié)果;文獻[16]中結(jié)合使用AAM和ASM方法,彌補了AAM中特征點收斂問題。
絕大多數(shù)傳統(tǒng)方法使用人工提取特征或淺層特征。隨著大量表情數(shù)據(jù)庫的建立、計算能力的大幅提高以及表現(xiàn)良好的神經(jīng)網(wǎng)絡架構(gòu)出現(xiàn),表情識別領域的研究重心從傳統(tǒng)方法逐步轉(zhuǎn)向深度學習方法。
2.1.4 表情分類
表情分類是根據(jù)特征提取所得的信息,將輸入的圖片分為某種基本表情的過程。傳統(tǒng)表情分類方法有KNN、HMM、貝葉斯分類算法、SVM等傳統(tǒng)機器學習算法。
2.2 深度學習方法
基于深度學習的表情識別過程是一個端到端過程,基于深度學習的預處理過程包括傳統(tǒng)學習中的人臉檢測、人臉對齊、數(shù)據(jù)增強等一系列操作?;谏疃葘W習的人臉檢測和人臉對齊方法有CascadeCNN、MTCNN、Deep Face和FaceNet等。文獻中提出的CascadeCNN是較早的基于深度學習的人臉檢測方法,該方法是當時基于CNN的人臉檢測方法中速度最快的;MTCNN將人臉檢測與關鍵點檢測放在一起完成,并在之后使用小網(wǎng)絡級聯(lián)方法;DeepFace主要是對人臉預處理部分做出很多精細化調(diào)整,而在算法上調(diào)整不大,但是識別效果卻得到大幅提升;FaceNet可以直接將人臉圖像映射到歐幾里得空間,空間距離長度代表人臉圖像的相似性,基于該映射空間就可完成人臉識別等操作;文獻提出了基于GAN的數(shù)據(jù)增強方法;文獻闡述了基于GAN的歸一化處理方法。
深度學習特征提取是一個熱門研究方向。很多方法已經(jīng)應用在表情識別領域,如卷積神經(jīng)網(wǎng)絡(CNN)、深度置信網(wǎng)絡(DBN)、深度自編碼(DAE)和遞歸神經(jīng)網(wǎng)絡(RNN)等。
不同于傳統(tǒng)方法,深度學習特征提取和分類過程并不是獨立的。在卷積神經(jīng)網(wǎng)絡中,最常見的方法是在網(wǎng)絡的最末端使用softmax分類器作為最后的表情分類器,也有人嘗試使用SVM等傳統(tǒng)分類方法作為最后的表情分類,取得了不錯的效果。
文獻[27]使用DBN和adaboost方法得到了較好的結(jié)果;文獻[28]使用CNN網(wǎng)絡在CK+數(shù)據(jù)集上得到了七分類96.1%的結(jié)果;文獻[29]使用CNN網(wǎng)絡進行特征提取,將SVM作為分類器在MMI數(shù)據(jù)集上取得了六分類78.46%的準確率。還有其它一些方法,對應結(jié)果如表2所示。
3 研究展望
3.1 存在問題
表情識別是情感識別的一種重要方式,相對于語音和行為等主要的情感識別模式,表情識別具有很多優(yōu)點,因此在圖像識別領域熱度很高。特別是在人臉識別技術(shù)日趨成熟且商業(yè)運行愈發(fā)利好的環(huán)境下,作為其分支的表情識別更加備受關注。但是,目前仍然存在著很多亟待解決的問題。
(1)需要大量數(shù)據(jù)作為訓練支撐。與深度學習其它領域一樣,一個數(shù)量和所攜帶信息充足同時又帶有標注的高質(zhì)量數(shù)據(jù)集,在現(xiàn)實生活中并不容易獲取,而數(shù)據(jù)對于最后的處理結(jié)果來說至關重要。無監(jiān)督學習能否突破數(shù)據(jù)標記的局限?對此,深度學習界領軍人物Yann LeCun多次探討“如何超越傳統(tǒng)深度學習的標記訓練例子”。他認為另辟蹊徑的道路就是無監(jiān)督學習,而整個AI界可能需要在基于能量的學習方法上做更多工作。
(2)過于依賴圖像預處理過程。不論輸入的表情圖片來自實驗室還是真實環(huán)境的攝像頭,這些原始數(shù)據(jù)都很難達到直接輸入模型和算法進行處理的程度。眾所周知,傳統(tǒng)識別方法過度依賴人工處理,但即使是進行“端到端”的深度學習也需要很多預處理過程來提高最后的識別準確度。
(3)方法創(chuàng)新程度跟不上發(fā)展需求。目前很多深度學習算法都是基于卷積神經(jīng)網(wǎng)絡(CNN)的改進,例如通過增加CNN網(wǎng)絡寬度和深度等方法實現(xiàn)創(chuàng)新。在特征選擇上的創(chuàng)新也只是通過多種模型的集成或不同特征的融合加以實現(xiàn)。雖然最終會提高準確率,但這些方法在本質(zhì)上并沒有很大創(chuàng)新。
(4)分類表情種類受限。現(xiàn)階段很多研究都是基于1971年心理學家提出的基本表情,但實際中人類的表情非常復雜,遠非六、七種能表達清楚,其中還可能包括表情的疊加和融合,以及微表情等等。
(5)數(shù)據(jù)結(jié)構(gòu)限制。目前絕大多數(shù)表情識別數(shù)據(jù)來源都是基于圖片或視頻,但這些數(shù)據(jù)缺乏很多重要的原始信息,如紋理和空間信息等等,這在本質(zhì)上與人類自身通過面部表情判斷對方情緒的模式存在很大差距。
3.2 未來展望
傳統(tǒng)表情識別技術(shù)的缺點是繁瑣的人工處理過程,以及識別準確率易受位置、光照等不利因素的干擾。深度學習方法是一種端到端的過程,相對于傳統(tǒng)方法在處理大規(guī)模數(shù)據(jù)上有不少優(yōu)勢,但在小樣本上容易表現(xiàn)過擬合和耗費大量計算資源等問題。下面介紹目前比較前沿的研究方向。
(1)增加時空維度。人類表情的變化其實是一個動態(tài)過程,如果能將平靜到產(chǎn)生情緒峰值,或者其它兩種表情之間的變化作為一種特征(序列信息)來學習,就可形成三維數(shù)據(jù)輸入。目前該研究方向是引入RNN以及C3D模型。
(2)網(wǎng)絡集成。研究表明,融合了多個網(wǎng)絡的集成網(wǎng)絡比單個網(wǎng)絡表現(xiàn)更好。網(wǎng)絡集成一般要考慮兩個方面:特征集成和輸出的決策集成。特征集成包括兩種方法:①使用不同網(wǎng)絡模型產(chǎn)生不同的網(wǎng)絡,比如使用分別經(jīng)過遷移VGGl9與Resnet的特征進行集成;②使用不用的特征進行特征融合,如文獻融合了Gabor和LBP特征。不論哪種方法,目的都是為了集成更多的原始數(shù)據(jù),輔助判斷有效信息,提高識別準確率。
4 結(jié)語
針對表情識別研究,本文分別從傳統(tǒng)方法和深度學習兩個方面,對表情識別流程以及方法進行了較為全面的闡述。對表情識別技術(shù)進行了深入探討,并對未來的發(fā)展趨勢進行了總結(jié)。