鄧 源,施一萍,江悅瑩,朱亞梅,劉 瑾
(上海工程技術(shù)大學(xué) 電子電氣工程學(xué)院,上海 201620)
嬰幼兒表情識(shí)別流程通常包含建立數(shù)據(jù)庫、圖像預(yù)處理、人臉檢測、特征提取以及分類等步驟。目前常用的嬰幼兒表情識(shí)別方法可分為:基于傳統(tǒng)的機(jī)器學(xué)習(xí)和基于深度學(xué)習(xí)的方法。
機(jī)器學(xué)習(xí)[1-3]雖然能夠取得較好的識(shí)別結(jié)果,但由于其采用手工設(shè)計(jì)特征,人為干擾因素較大,準(zhǔn)備工作耗時(shí)較長。借助深度學(xué)習(xí)的方法[4-5]可以更方便、準(zhǔn)確地提取出面部表情的隱藏特征。若將深度學(xué)習(xí)模型與傳統(tǒng)手工設(shè)計(jì)特征相結(jié)合[6-7],并將其運(yùn)用到表情識(shí)別中,可顯著提升分類效果,對(duì)部分干擾也更具魯棒性。
本文提出一種基于MobileNetV2與分塊加權(quán)LBP統(tǒng)計(jì)直方圖雙路特征相融合的方法來對(duì)嬰幼兒進(jìn)行表情識(shí)別。該方法有效結(jié)合了面部表情的全局特征和局部紋理特征,并利用了支持向量機(jī)(Support Vector Machine,SVM)對(duì)小樣本數(shù)據(jù)的分類優(yōu)勢,提升了對(duì)嬰幼兒表情的識(shí)別效果。
目前國內(nèi)外針對(duì)嬰幼兒表情的研究較少,且沒有可供參考的數(shù)據(jù)集。嬰幼兒的面部圓潤飽滿,骨骼輪廓不分明,導(dǎo)致面部表情特征不明顯。嬰兒的某些表情種類與成人之間差別較大,不能直接套用現(xiàn)有的成人表情數(shù)據(jù)集來訓(xùn)練模型。基于這些問題,需要自行構(gòu)建一個(gè)標(biāo)準(zhǔn)的、實(shí)驗(yàn)環(huán)境下的嬰幼兒表情數(shù)據(jù)庫。本文所使用的數(shù)據(jù)庫建立過程如圖1所示。
圖1 數(shù)據(jù)庫建立流程Figure 1. Database establishment process
由于嬰幼兒的心理活動(dòng)豐富程度較低,因此不需要對(duì)其進(jìn)行過于細(xì)致的劃分。參考標(biāo)準(zhǔn)成人表情數(shù)據(jù)庫,保留開心、難過、生氣、中性4個(gè)常規(guī)類型的表情,并將恐懼和驚訝合并成一類,賦予驚恐標(biāo)簽。由于嬰幼兒大多數(shù)時(shí)間處于睡眠狀態(tài),因此本文舍棄厭惡表情,增加睡眠表情。綜上所述,本文所建立的數(shù)據(jù)庫最終包含6種表情類型。
MobileNet被較多應(yīng)用于移動(dòng)端或嵌入式設(shè)備中。網(wǎng)絡(luò)聯(lián)合逐通道卷積(Depthwise Convolution,DW)和逐點(diǎn)卷積(Pointwise Convolution,PW)來提取特征圖,降低了參數(shù)運(yùn)算量。MobileNetV2引入倒置殘差塊和線性瓶頸結(jié)構(gòu)[8-9]進(jìn)行改進(jìn),有效緩解了特征退化問題,提升了網(wǎng)絡(luò)性能。其網(wǎng)絡(luò)微結(jié)構(gòu)如圖2所示。
圖2 MobileNetV2網(wǎng)絡(luò)微結(jié)構(gòu)Figure 2. MobileNetV2 network microstructure
局部二值模式(Local Binary Patterns,LBP)算法具有光照不變性,通常被用來描述圖像的紋理特征。表情特征屬于人臉五官特征和紋理特征的融合,所以在表情識(shí)別研究中,LBP算法一直有著重要的應(yīng)用。
單一的LBP特征并不能全面表征出嬰幼兒面部表情,所以需利用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)提取出面部表情的全局特征,通過融合兩種特征優(yōu)勢進(jìn)行識(shí)別。第1條通道是改進(jìn)后的MobileNetV2,其可提取出全連接層的輸出張量。第2條通道可將原始輸入圖進(jìn)行分塊,計(jì)算信息熵構(gòu)造出權(quán)值,提取出加權(quán)環(huán)形LBP統(tǒng)計(jì)直方圖特征。最后,對(duì)特征進(jìn)行融合,并使用SVM進(jìn)行分類。雙通道模型結(jié)構(gòu)如圖3所示。
圖3 雙通道模型結(jié)構(gòu)Figure 3. Dual-channel model architecture
嬰幼兒表情的紋理特征重點(diǎn)集中在眼、鼻、嘴這3個(gè)部分。為了有主次地呈現(xiàn)出面部表情特征,先將圖像劃分為12個(gè)子塊,再計(jì)算出每一塊的信息熵,合理地構(gòu)造出權(quán)值并進(jìn)行加權(quán)連接,突出信息豐富區(qū)域,使得表情特征更具有判別性。LBP特征可以通過統(tǒng)計(jì)直方圖特征[10-13]來表示。利用子塊特征串聯(lián)得到的高維向量來表征嬰幼兒面部表情信息。
本文利用環(huán)狀LBP算子,根據(jù)輸入尺寸去調(diào)整半徑范圍、采樣點(diǎn)個(gè)數(shù),進(jìn)行多尺度的LBP特征提取。環(huán)形LBP值計(jì)算式為
(1)
(2)
式中,Pixeli為所選范圍內(nèi)第i個(gè)像素點(diǎn);Pixelc為像素中心點(diǎn)。提取出嬰幼兒表情特征如圖4所示。
圖4 嬰幼兒表情圓形LBP特征圖Figure 4. Round LBP feature map of infant expression
信息熵反映的是圖像信息的豐富程度,熵值越大,信息量越多,特征越明顯。本文通過計(jì)算每個(gè)子塊的信息熵和整體圖像的信息熵來構(gòu)造加權(quán)系數(shù)。設(shè)第i個(gè)子塊的信息熵表示為
(3)
式中,n是像素級(jí)數(shù),隨采樣點(diǎn)個(gè)數(shù)而改變;Pik表示k級(jí)像素出現(xiàn)概率。子塊信息熵越大,則給以的權(quán)重系數(shù)越高。據(jù)此設(shè)計(jì)定義的權(quán)重系數(shù)為
(4)
式中,Entropye表示整張?zhí)卣鲌D的信息熵。
加權(quán)連接各子塊的LBP統(tǒng)計(jì)直方圖特征,依照順序串聯(lián)成完整的直方圖向量,如圖5所示。
圖5 串聯(lián)紋理統(tǒng)計(jì)直方圖Figure 5. Concatenated texture statistical histogram
每一張嬰幼兒表情圖提取出的直方圖特征向量大小為12×64,共有768維。這些高維特征使得其他特征在進(jìn)行分類時(shí)失去了原有的特性。本文采用主成分分析法(Principal Component Analysis,PCA)進(jìn)行降維,保留100維主要特征分量。
LBP紋理特征更多突出的是五官區(qū)域的變化,而CNN可以通過卷積運(yùn)算提取出面部表情多種復(fù)雜的局部特征,并在全連接層利用權(quán)值重構(gòu)出全局特征圖??紤]到自建數(shù)據(jù)集數(shù)目的大小,此處不適合采用層數(shù)過深的網(wǎng)絡(luò)模型。本文在基于MobileNetV2的基礎(chǔ)上,進(jìn)行以下調(diào)整:
(1)去除原始網(wǎng)絡(luò)中最后一個(gè)卷積層,用包含100個(gè)神經(jīng)元的全連接層替代,用于提取出全局特征;
(2)增添一個(gè)隨機(jī)丟棄層(Dropout),并將失活率設(shè)置為0.5,避免小樣本數(shù)帶來的過擬合現(xiàn)象。
最終網(wǎng)絡(luò)結(jié)構(gòu)如表1所示。
表1 調(diào)整后的網(wǎng)絡(luò)結(jié)構(gòu)Table 1. Network structure after adjustment
在表1中,n表示倒置殘差塊的重復(fù)頻次。其中,每一個(gè)反向殘差塊都由圖6所示結(jié)構(gòu)組成,DW為深度可分離卷積,BN為批標(biāo)準(zhǔn)化。
圖6 反向殘差塊結(jié)構(gòu)組成Figure 6. Reverse residual block structure composition
將MobileNetV2在全連接層輸出的100維全局特征向量與降維后的100維LBP特征融合,作為SVM的輸入。
SVM被用于多分類時(shí),需要先建立適宜的多類分類器。本文采用一對(duì)一法,任意兩類之間構(gòu)造一個(gè)子分類器,合并所有子分類器并利用投票法進(jìn)行歸類。
由于模型提取出的特征維數(shù)以及分類樣本數(shù)量較少,因此選用高斯核函數(shù)進(jìn)行映射。高斯核專門用于解決線性不可分的情形,其計(jì)算式為
k(x,y)= exp(-γ‖x-y‖2),γ>0
(5)
式中,x、y為輸入向量;γ為高斯核唯一超參數(shù);‖x-y‖為兩類樣本向量之間的模。
由于嬰幼兒表情的種類、特征皆與常規(guī)數(shù)據(jù)集不同,所以本文采用自建的數(shù)據(jù)集對(duì)嬰幼兒表情進(jìn)行實(shí)驗(yàn)驗(yàn)證。部分樣本如圖7所示。
圖7 自建數(shù)據(jù)集部分樣本Figure 7.Partial samples of self-built data set
圖8 成人表情數(shù)據(jù)集部分樣本Figure 8.Partial samples of the adult expression data set
在自建數(shù)據(jù)集中,選取其中77張樣本作為測試集,得到誤檢數(shù)為11張,平均正確率為85.71%?;煜仃嚾鐖D9所示。
圖9 嬰幼兒表情數(shù)據(jù)集混淆矩陣Figure 9. Infant expression data set confusion matrix
由圖9可知,文中所提方法對(duì)生氣、開心、中性表情的識(shí)別率在85%以上,對(duì)睡眠的識(shí)別達(dá)到了100%的正確率。但該方法對(duì)難過與驚恐表情的識(shí)別率相對(duì)較低,誤檢數(shù)都為3次。難過表情被錯(cuò)誤識(shí)別為其他種類的次數(shù)最多,驚恐表情也多次被誤認(rèn)為是難過表情,說明在數(shù)據(jù)集中新模型無法有效地區(qū)分難過這類表情的特征,這也是造成識(shí)別率低的主要原因。部分錯(cuò)誤樣本如圖10所示。
圖10 自建數(shù)據(jù)集錯(cuò)誤樣本Figure 10. Error samples of self-built data set
圖10中,第1張圖由于嬰幼兒的面部自帶了一定的偏轉(zhuǎn)角度,因此不是一張完全的正臉圖,導(dǎo)致產(chǎn)生識(shí)別錯(cuò)誤;第2張圖由于在預(yù)處理時(shí)經(jīng)過了重組放大操作,導(dǎo)致分辨率較低,產(chǎn)生誤識(shí)別;右側(cè)圖中,由于嬰幼兒表情表達(dá)不充分,僅僅在眼睛周圍紋理體現(xiàn)出差異性,從而導(dǎo)致識(shí)別錯(cuò)誤。
表2 公開數(shù)據(jù)集下的表情識(shí)別率Table 2. Expression recognition rate under open data set
圖11 JAFFE數(shù)據(jù)集下的混淆矩陣Figure 11. Confusion matrix under the JAFFE data set
圖12 C數(shù)據(jù)集下的混淆矩陣Figure 12. Confusion matrix under the C data set
圖13 C數(shù)據(jù)集錯(cuò)誤樣本Figure 13. C data set error samples
圖13中,左1和左2圖片被誤判的原因在于受試者沒有將表情充分表達(dá),未能在兩種表情之間呈現(xiàn)出明顯的差異性;右1及右2圖片中,由于驚訝與恐懼、厭惡與生氣表情之間的差異較小,僅在部分五官周圍的紋理區(qū)域存在一些變化,導(dǎo)致真實(shí)表情被混淆為相近的表情。
為了深入驗(yàn)證本文模型的分類優(yōu)勢,本文依次刪除部分主要功能結(jié)構(gòu),再進(jìn)行比對(duì),實(shí)驗(yàn)結(jié)果如表3所示。
表3 不同模型結(jié)構(gòu)下的準(zhǔn)確率Table 3. Accuracy under different model structures
通過前兩組實(shí)驗(yàn)可以看出,采用SVM模型代替Softmax分類層,能夠增加模型的泛化能力,更適合小樣本分類。后兩組對(duì)比實(shí)驗(yàn)?zāi)軌虻贸觯謮K加權(quán)后的LBP特征能夠更充分地表達(dá)出面部表情的紋理特征,凸出差異性。融合CNN全局特征和分塊加權(quán)LBP特征后得到的新特征擁有良好的表征能力,在3種數(shù)據(jù)集中均獲得了最高的識(shí)別率。
將本文模型與其他現(xiàn)有方法在相同的兩個(gè)公開成人表情數(shù)據(jù)集上的準(zhǔn)確率以及網(wǎng)絡(luò)參數(shù)運(yùn)算量進(jìn)行對(duì)比,結(jié)果如表4所示。
表4 不同方法識(shí)別率和參數(shù)運(yùn)算量對(duì)比Table 4.Comparison of recognition rates and parameter calculations of different methods
實(shí)驗(yàn)表明,本文模型在所使用的成人表情數(shù)據(jù)集中,均獲得了較高的表情識(shí)別率,且降低了參數(shù)運(yùn)算量,減少了運(yùn)行時(shí)間,表明本文模型更為輕量化。文獻(xiàn)[5]中使用三通道并行VGG網(wǎng)絡(luò)提取出人臉關(guān)鍵區(qū)域表情信息,參數(shù)量龐大,運(yùn)算速率低,并且未能結(jié)合圖像固有的特征屬性,識(shí)別率還有待提高。文獻(xiàn)[14]僅采用手工設(shè)計(jì)的特征進(jìn)行分類,前期處理較為繁瑣。文獻(xiàn)[15~17]雖然有效結(jié)合深度學(xué)習(xí)網(wǎng)絡(luò)與紋理特征,但網(wǎng)絡(luò)模型結(jié)構(gòu)復(fù)雜,計(jì)算量大,不適合對(duì)小樣本數(shù)據(jù)的學(xué)習(xí)。
本文提出一種基于MobileNetV2與LBP特征融合的嬰幼兒表情識(shí)別算法,結(jié)合CNN自適應(yīng)提取特征和傳統(tǒng)人工設(shè)計(jì)特征的優(yōu)勢,并利用SVM對(duì)小樣本數(shù)據(jù)進(jìn)行分類識(shí)別,不僅有效提高了對(duì)嬰幼兒這個(gè)指定群體的表情識(shí)別率,而且其對(duì)成人表情也具有較好的分類效果。
在今后的研究中,還需要加強(qiáng)本文所提模型對(duì)帶有偏轉(zhuǎn)角度的人臉表情的識(shí)別性能,并且使其能夠?qū)σ曨l序列中的人臉表情進(jìn)行實(shí)時(shí)分類,以提高識(shí)別準(zhǔn)確度,擴(kuò)展應(yīng)用范圍。