程 艷 蔡 壯 吳 剛 羅 品 鄒海鋒
研究表明, 55%的人類情緒表達(dá)是通過面部表情傳達(dá)的[1].表情在人類的日常交際中起到重要作用.面部表情識(shí)別作為計(jì)算機(jī)視覺領(lǐng)域的一個(gè)重要研究方向,廣泛應(yīng)用于醫(yī)療診斷[2]、智能教學(xué)系統(tǒng)[3]、人機(jī)交互[4]、駕駛員疲勞檢測(cè)[5]等領(lǐng)域.早期的面部表情識(shí)別任務(wù)主要使用基于手工特征的方法.隨著深度學(xué)習(xí)的發(fā)展,基于深度神經(jīng)網(wǎng)絡(luò)的方法逐漸取代基于手工特征的方法.
基于手工特征的方法包括圖像預(yù)處理、特征提取、分類器構(gòu)建等過程,可分為基于幾何的方法和基于外觀的方法.基于幾何的方法提取基于形狀變化的面部特征信息[6].Lanitis等[7]提出利用人的眼睛、鼻子和嘴巴的關(guān)鍵位置點(diǎn)計(jì)算臉部的運(yùn)動(dòng)情況,用于分析面部表達(dá)的表情.Tian等[8]開發(fā)自動(dòng)面部分析系統(tǒng),提取面部特征的詳細(xì)參數(shù)描述,識(shí)別面部動(dòng)作編碼系統(tǒng)(Facial Action Coding System,FACS)中的動(dòng)作單元(Action Unit, AU).局部特征描述符主要包括Gabor濾波器[9]、局部二值模式(Local Binary Pattern, LBP)[10]及各種變體,如局部弧形模式(Local Arc Pattern, LAP)[11].然而,基于手工特征方法的識(shí)別結(jié)果依賴于手工特征的設(shè)計(jì),這些手工特征的設(shè)計(jì)依賴于大量的先驗(yàn)知識(shí)和豐富的經(jīng)驗(yàn),大多為特定應(yīng)用設(shè)計(jì)的,泛化能力不強(qiáng),在應(yīng)用中需人工調(diào)整參數(shù),這無疑增加識(shí)別難度,并且容易丟失面部表情特征的關(guān)鍵信息[12].
由于卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Net-work, CNN)[13]等深度學(xué)習(xí)模型以端到端的方式自動(dòng)學(xué)習(xí)特征,在特征提取上性能較優(yōu),因此基于深度神經(jīng)網(wǎng)絡(luò)的方法近來廣泛應(yīng)用于面部表情識(shí)別任務(wù)中.該類方法有效克服基于手工特征方法的缺點(diǎn),大幅提升識(shí)別效果[14].Zhang等[15]為了減輕個(gè)人屬性對(duì)面部表情識(shí)別結(jié)果的影響,提出IACNN(Identity-Aware CNN),實(shí)現(xiàn)身份不變的面部表情識(shí)別.Li等[16]針對(duì)真實(shí)環(huán)境中面部表情識(shí)別的遮擋問題,提出pACNN(Patch-Based CNN)和gACNN(Global-Local-Based CNN),在真實(shí)遮擋和合成遮擋數(shù)據(jù)集上的實(shí)驗(yàn)表明,2種方法都提高遮擋人臉和非遮擋人臉識(shí)別的準(zhǔn)確率.Zhao等[17]提出MA-Net(Global Multi-scale and Local Attention Network),用于面部表情識(shí)別.
但基于CNN的面部表情識(shí)別方法從表情中提取的特征容易與其它的面部屬性混合,如姿勢(shì)和外觀的變化,影響特征提取的質(zhì)量,在分類不同的表情時(shí)辨別性不強(qiáng),不利于面部表情識(shí)別.針對(duì)此問題,Xie等[18]提出基于TDGAN(Two-Branch Disentangled Generative Adversarial Network)的面部表情識(shí)別模型,通過雙分支分解生成對(duì)抗網(wǎng)絡(luò)(Generative Ad-versarial Network, GAN),將表情從表情圖像遷移到面部圖像,實(shí)現(xiàn)從其它的面部屬性分離表情,生成具有辨別性的表情表示.該模型包括一個(gè)生成器和兩個(gè)判別器,但該模型生成器使用CNN提取表情特征.CNN提取的特征值表示每個(gè)空間位置檢測(cè)到的局部特征,由于CNN的局部聚合、歸納偏差,特征值具有有限的感受野,CNN提取的特征容易混入噪聲[19],全連接層作為分類器會(huì)將這些噪聲輸入分類器中,對(duì)最終的識(shí)別結(jié)果有一定的影響.TDGAN在參數(shù)學(xué)習(xí)時(shí)提出雙重圖像一致性損失(Dual Image Consistency Loss),使用原圖像和重構(gòu)圖像的整體像素計(jì)算重構(gòu)誤差[20],當(dāng)圖像整體發(fā)生細(xì)微變化和局部巨大變化時(shí),計(jì)算的差值可能相差無幾,這將導(dǎo)致有些生成的圖像發(fā)生局部表情崩塌現(xiàn)象,即在重要的局部區(qū)域(如眼睛)存在缺陷而實(shí)際的重構(gòu)誤差并不大.
針對(duì)上述不足,本文提出結(jié)合自注意力特征過濾分類器和雙分支GAN的面部表情識(shí)別方法(Fa-cial Expression Recognition Combining Self-Attention Feature Filtering Classifier and Two-Branch GAN, TGAN-AFFC).首先,使用雙分支GAN學(xué)習(xí)辨別性的表情表示,并提出自注意力[21]特征過濾分類器(Self-Attention Feature Filtering Classifier, AFFC)作為表情的分類模塊.AFFC使用級(jí)聯(lián)的LayerNorm和ReLU將低激活單元?dú)w零,保留高激活單元,生成多級(jí)特征,使用自注意力融合輸出多級(jí)特征的預(yù)測(cè)結(jié)果,在一定程度上消除表情特征中混入的噪聲對(duì)識(shí)別結(jié)果的影響,提高識(shí)別的準(zhǔn)確率.然后,提出基于滑動(dòng)模塊的雙重圖像一致性損失,監(jiān)督模型學(xué)習(xí)具有辨別性的表情表示,減少生成圖像表情崩塌現(xiàn)象的發(fā)生.在4個(gè)公開的面部表情數(shù)據(jù)集上的實(shí)驗(yàn)表明,TGAN-AFFC具有較優(yōu)的識(shí)別效果.
結(jié)合自注意力特征過濾分類器和雙分支GAN的面部表情識(shí)別方法(TGAN-AFFC)框架如圖1 所示.
圖1 TGAN-AFFC框圖Fig.1 Flow chart of TGAN-AFFC
TGAN-AFFC包括兩部分:雙分支GAN和自注意力特征過濾分類器(AFFC).雙分支GAN使用TDGAN[18]提出的雙分支分解GAN結(jié)構(gòu).
TGAN-AFFC同時(shí)輸入一幅人臉圖像If和一幅表情圖像Ie.根據(jù)GAN的原理,TGAN-AFFC的雙分支GAN由生成器和判別器組成.生成器是編碼器-解碼器結(jié)構(gòu),由面部編碼器Ef、表情編碼器Ee、嵌入模塊和解碼器Dg構(gòu)成,用于將表情從表情圖像的人臉遷移到人臉圖像的人臉上,使表情編碼器學(xué)習(xí)具有辨別性的表情表示.判別器是雙分支結(jié)構(gòu),由面部判別器Df和表情判別器De構(gòu)成,用于評(píng)估輸入的圖像.在表情編碼器后,接入AFFC,輸入表情編碼器學(xué)習(xí)的表情表示,識(shí)別結(jié)果作為面部表情識(shí)別任務(wù)的結(jié)果.
受TDGAN[18]工作的啟發(fā),TGAN-AFFC的雙分支GAN使用TDGAN提出的雙分支分解GAN結(jié)構(gòu),網(wǎng)絡(luò)參數(shù)也相同.雙分支GAN由生成器和判別器組成,生成器由面部編碼器、表情編碼器、嵌入模塊和解碼器組成,判別器是雙分支結(jié)構(gòu),由面部判別器和表情判別器構(gòu)成.面部編碼器、表情編碼器、面部判別器和表情判別器具有相同的特征提取網(wǎng)絡(luò),由具有Inception[22]結(jié)構(gòu)的CNN構(gòu)建,嵌入模塊由具有殘差塊的CNN構(gòu)建,解碼器由反卷積層構(gòu)建.生成器的目標(biāo)是通過將表情圖像的表情從一張人臉遷移到另一張人臉,學(xué)習(xí)具有辨別性的表情表示.
雙分支GAN輸入圖像對(duì)為{(If,yf),(Ie,ye)},其中,If為輸入的人臉圖像,Ie為輸入的表情圖像,yf、ye分別為相應(yīng)的身份和表情的獨(dú)熱編碼標(biāo)簽.將輸入圖像對(duì)輸入面部編碼器Ef和表情編碼器Ee中,輸出特征表示為
df=Ef(If),de=Ee(Ie),
其中,df為人臉圖像的面部特征,de為表情圖像的表情特征.通過嵌入模塊融合面部特征df和表情特征de,得到融合后的特征:
dfuse=Emb(con(df,de,dn)),
其中,Emb(·)為嵌入模塊,con(x,y,z)為按通道拼接,dn為噪聲向量.
融合后的特征dfuse經(jīng)過解碼器Dg生成圖像,表示為
Ig=Dg(dfuse)=G(If,Ie,dn),
其中G(x)為整個(gè)生成器.
在理想情況下,生成圖像Ig應(yīng)保持和輸入人臉圖像If相同的面部外觀,保持和輸入表情圖像Ie相同的表情.為了評(píng)估生成圖像是否滿足期望,設(shè)計(jì)表情判別器De和面部判別器Df,分別判斷輸入圖像的表情和身份.表情判別器De(x)∈Rke,面部判別器Df(x)∈Rkf+1,其中,ke為表情的類別數(shù),kf為人臉數(shù)據(jù)集的標(biāo)簽數(shù)量.面部判別器中額外類的作用是區(qū)分輸入圖像是來自于真實(shí)樣本還是生成圖像.當(dāng)訓(xùn)練模型時(shí),所有生成圖像都將被標(biāo)記為kf+1類,這使得生成器生成符合人臉數(shù)據(jù)集分布的圖像.
使用CNN提取的特征值表示每個(gè)空間位置檢測(cè)的局部特征,由于CNN的局部聚合、歸納偏差,特征值具有有限的感受野,提取的特征容易混入噪聲[19],全連接層作為分類器會(huì)將這些噪聲輸入分類器中,對(duì)最終的識(shí)別結(jié)果產(chǎn)生一定影響.受集成方法的啟發(fā),Seo等[19]提出FFC(Feature Filtering Cla-
ssifier),由級(jí)聯(lián)的LayerNorm和ReLU、共享的全連接層組成.對(duì)于輸入特征F0,經(jīng)過多個(gè)LayerNorm和ReLU,生成多級(jí)特征,經(jīng)共享全連接層,生成多級(jí)特征的預(yù)測(cè)結(jié)果,最終平均集成多級(jí)特征的預(yù)測(cè)結(jié)果,得到最終的預(yù)測(cè)結(jié)果.
輸入共享全連接層的多級(jí)特征具有不同的語義內(nèi)容,平均集成平等對(duì)待每個(gè)預(yù)測(cè)結(jié)果,未考慮多級(jí)特征的預(yù)測(cè)結(jié)果對(duì)最終預(yù)測(cè)結(jié)果的不同貢獻(xiàn).為了更好地融合多級(jí)特征的預(yù)測(cè)結(jié)果并得到最終表情的預(yù)測(cè)結(jié)果,本文結(jié)合自注意力機(jī)制[21],提出自注意力特征過濾分類器(AFFC),在表情編碼器后使用該分類器.AFFC由級(jí)聯(lián)的LayerNorm和ReLU、共享的全連接層和自注意力融合模塊組成.
表情編碼器學(xué)習(xí)的辨別性表情表示de輸入AFFC,經(jīng)過L個(gè)LayerNorm和ReLU組成的簡(jiǎn)單特征過濾分類器,將低激活單元?dú)w零并保留高激活單元,生成多級(jí)特征F0,F1,…,FL.由于操作只使用特征的均值和標(biāo)準(zhǔn)差進(jìn)行平移和縮放,因此保留每個(gè)通道的語義信息.多級(jí)特征送入由全連接層構(gòu)成的共享分類器中,得到每個(gè)特征的預(yù)測(cè)結(jié)果Pi.簡(jiǎn)單特征過濾分類器表示如下:
Fi=ReLU(LN(F)i-1)),Pi=Cls(Fi),
其中,LN為L(zhǎng)ayerNorm,Cls(x)為全連接層共享分類器.
為了更好地融合多級(jí)特征的預(yù)測(cè)結(jié)果,得到最終表情的預(yù)測(cè)結(jié)果,使用自注意力機(jī)制[21]學(xué)習(xí)每個(gè)特征預(yù)測(cè)結(jié)果對(duì)最終表情預(yù)測(cè)結(jié)果的權(quán)重.在自注意力融合模塊中,輸入多級(jí)特征組合的向量矩陣:
F=[F0,F1,…,FL]∈RD×L.
首先,將向量矩陣F進(jìn)行線性變換,映射到3個(gè)不同的子空間,得到3個(gè)向量矩陣:
Q=WqF∈RDk×L,K=WkF∈RDk×L,V=WvF∈RDv×L,
其中,Wq∈RDk×D為查詢矩陣,Wk∈RDk×D為鍵矩陣,Wv∈RDv×D為值矩陣.然后計(jì)算注意力值:
最終,將學(xué)習(xí)的注意力值attention與多級(jí)特征的輸出結(jié)果矩陣P=[P0,P1,…,PL]的元素相乘,得到最終的表情預(yù)測(cè)結(jié)果:
其中i對(duì)應(yīng)第i個(gè)特征.
1.4.1 判別器的參數(shù)學(xué)習(xí)
GAN的訓(xùn)練是先訓(xùn)練判別器,再訓(xùn)練生成器,兩者交替迭代.面部判別器的總體損失函數(shù)為:
Lf=E(If,yf)~pf[lnDf(If)]+E(Ig,yg)~pg[lnDf(Ig)],
(1)
其中,pf為人臉圖像的數(shù)據(jù)分布,pg為生成圖像的數(shù)據(jù)分布,yg為生成圖像的身份標(biāo)簽.在模型的訓(xùn)練中,生成圖像僅被送入面部判別器中.通過最大化式(1)優(yōu)化面部判別器Df.
表情判別器的總體損失函數(shù)表示如下:
Le=E(Ie,ye)~pe[lnDe(Ie)],
(2)
其中pe為表情圖像的數(shù)據(jù)分布.通過最大化式(2)優(yōu)化表情判別器De.
1.4.2 生成器的參數(shù)學(xué)習(xí)
生成器的損失函數(shù)包括3部分:分類損失、感知損失、基于滑動(dòng)模塊的雙重圖像一致性損失.
1)生成器的分類損失.生成器的目標(biāo)是能生成欺騙2個(gè)判別器的圖像.生成器的分類損失為:
LC=-{λGfE(Ig,yf)~pg[lnDf(Ig)]+λGeE(Ig,ye)~pg[lnDe(Ig)]},
其中,λGf、λGe為超參數(shù),平衡面部判別器的損失和表情判別器的損失.
2)生成器的感知損失.為了保持輸入人臉圖像的語義內(nèi)容不變,引入感知損失,測(cè)量2個(gè)圖像之間的語義內(nèi)容差異,感知損失定義為
其中,λpf為超參數(shù),df為人臉圖像在面部判別器的特征,d(g,f)=Df(Ig),為生成圖像在面部判別器的特征.
3)基于滑動(dòng)模塊的雙重圖像一致性損失.為了更好地監(jiān)督TGAN-AFFC的訓(xùn)練,提出基于滑動(dòng)模塊的雙重圖像一致性損失,通過滑動(dòng)窗口的滑動(dòng),逐步計(jì)算每個(gè)滑動(dòng)窗口內(nèi)的像素差值,再對(duì)所有滑動(dòng)窗口中的像素差值取平均.基于滑動(dòng)模塊的雙重圖像一致性損失過程如圖2所示.
圖2 基于滑動(dòng)模塊的雙重圖像一致性損失流程圖Fig.2 Flow chart of dual image consistency loss based on slid module
LD=
其中,λD為超參數(shù),n為滑動(dòng)窗口的總數(shù).
綜上所述,生成器總的損失函數(shù)為:
LG=LC+LD+LP.
1.4.3 AFFC的參數(shù)學(xué)習(xí)
TGAN-AFFC通過雙分支GAN將表情從一張人臉遷移到另一張人臉,學(xué)習(xí)具有辨別性的表情表示,識(shí)別不同的面部表情.具體地,在優(yōu)化雙分支GAN的同時(shí),使用交叉熵?fù)p失函數(shù)訓(xùn)練AFFC.AFFC的損失函數(shù)為:
本文在如下4個(gè)公開的面部表情數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn).
1)CK+數(shù)據(jù)集[23].包含從123名對(duì)象收集的593個(gè)圖像序列,每個(gè)序列的表情都是從中性表情到峰值表情,只有309個(gè)序列被標(biāo)記成6種典型表情(憤怒、厭惡、恐懼、快樂、悲傷、驚訝)之一.挑選每個(gè)序列的最后三幀構(gòu)建訓(xùn)練集和測(cè)試集.此外,每個(gè)選定序列的第1幀都被收集為中性表情.實(shí)驗(yàn)總共涉及1 236幅面部表情圖像.
2)RAF-DB數(shù)據(jù)集[24].實(shí)驗(yàn)中只使用具有基本表情(包括6種典型表情和中性表情)的圖像進(jìn)行實(shí)驗(yàn),其中12 271幅圖像作為訓(xùn)練數(shù)據(jù),3 068幅圖像作為測(cè)試數(shù)據(jù).
3)BAUM-2i數(shù)據(jù)集[25].包含不同條件下的面部表情,使用8種表情標(biāo)簽(6種典型的表情+中性+鄙視)進(jìn)行標(biāo)記.實(shí)驗(yàn)中僅使用7種表情(6種典型表情+中性表情)標(biāo)記的數(shù)據(jù)進(jìn)行實(shí)驗(yàn),共涉及998幅面部表情圖像.
4)TFEID數(shù)據(jù)集(http://bml.ym.edu.tw/tfeid).從40名受試者(20名男性和20名女性)中采集面部表情圖像,每位受試者采集8種面部表情(6種典型表情+中性+蔑視).實(shí)驗(yàn)中使用6種典型表情和中性表情的面部表情數(shù)據(jù),共涉及580幅圖像.
本文實(shí)驗(yàn)選擇PyTorch 1.8.0作為深度學(xué)習(xí)環(huán)境,訓(xùn)練機(jī)器使用GeForce RTX 3060.
為了完成表情的遷移任務(wù),面部編碼器分支輸入的圖像應(yīng)是被身份標(biāo)注的圖像.因此,選擇CASIA-
WebFace數(shù)據(jù)集[26]作為面部編碼器分支的輸入.TGAN-AFCC的主要任務(wù)是表情識(shí)別而不是人臉識(shí)別,所以只使用CASIA-WebFace數(shù)據(jù)集上前10個(gè)類別的圖像作為面部編碼器分支的輸入,選擇的人臉圖像共包含1 021幅圖像.在模型的訓(xùn)練過程中,一幅面部圖像和一幅表情圖像分別從CASIA-WebFace數(shù)據(jù)集和表情數(shù)據(jù)集中隨機(jī)采樣,兩幅圖像構(gòu)成模型輸入的圖像對(duì).
在數(shù)據(jù)的預(yù)處理階段,首先通過MTCNN(Multi-
task Cascaded CNN)[27]檢測(cè)輸入圖像的臉部區(qū)域,獲得輸入圖像的關(guān)鍵點(diǎn)坐標(biāo).根據(jù)關(guān)鍵點(diǎn)的坐標(biāo)進(jìn)行臉部的校正和裁剪,將圖像裁剪為140×140×1.在訓(xùn)練階段,采用隨機(jī)裁剪和水平翻轉(zhuǎn)的方式進(jìn)行數(shù)據(jù)集擴(kuò)充,隨機(jī)裁剪后圖像大小為128×128×1.為了與其它方法公平對(duì)比,在CK+、BAUM-2i、TFEID數(shù)據(jù)集上進(jìn)行十折交叉驗(yàn)證實(shí)驗(yàn);在RAF-DB數(shù)據(jù)集上,使用預(yù)先劃分好的訓(xùn)練集和測(cè)試集進(jìn)行訓(xùn)練和評(píng)估.對(duì)于超參數(shù),設(shè)置λGf=0.2、λGe=0.8、λpf=1、λD=1.優(yōu)化器使用自適應(yīng)矩估計(jì)(Adaptive Moment Estimation, Adam)優(yōu)化器.相對(duì)RAF-DB數(shù)據(jù)集,CK+、BAUM-2i、TFEID數(shù)據(jù)集數(shù)據(jù)量相對(duì)較少,為了模型訓(xùn)練,在具有287 401幅訓(xùn)練數(shù)據(jù)的AffectNet數(shù)據(jù)集[28]上進(jìn)行預(yù)訓(xùn)練.
2.3.1 實(shí)驗(yàn)室條件下的實(shí)驗(yàn)結(jié)果
在實(shí)驗(yàn)室受控條件下的CK+、TFEID數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn).選擇如下對(duì)比方法:LAP、IACNN、pACN-
N、TDGAN、PHOG(Pyramid of Histogram of Gradi-
ents)-LBP、Boosting-POOF(Boosting Part Based One-
vs-One Feature)、DeRL(De-expression Residue Lear-
ning)、REC(Self-Organizing Network for Facial Ex-
pression Recognition from Radial Encoded Contours)、LMBP(Local Mean Binary Pattern)、MPC(Meta Pro-
bability Codes)、LGBPHS(Local Gabor Binary Pa-
ttern Histogram Sequence)、CNN-Base,其中CNN-
Base為TGAN-AFFC的表情判別器.
TGAN-AFFC在2個(gè)數(shù)據(jù)集上的混淆矩陣如圖3所示.在混淆矩陣中,當(dāng)所有輸入都在受控的環(huán)境下捕獲時(shí),TGAN-AFFC性能較優(yōu).此外,從CK+數(shù)據(jù)集上的混淆矩陣中可見,在所有7個(gè)表情類別中,傷心表情的識(shí)別率最低,為89%,近11%的傷心表情歸類為中性表情.這是因?yàn)樵贑K+數(shù)據(jù)集上,部分傷心表情的圖像和中性表情的圖像在面部區(qū)域具有一些相似動(dòng)作,如嘴巴緊閉、眉毛舒展.所以在網(wǎng)絡(luò)學(xué)習(xí)過程中,對(duì)于相似度很高的傷心表情和中性表情,學(xué)習(xí)特征更傾向于中性表情.在TFEID數(shù)據(jù)集上的混淆矩陣可見,在所有7個(gè)表情類別中,厭惡表情的識(shí)別率最低,為88%,近12%的厭惡表情歸類為中性表情.原因在于:厭惡表情和中性表情在局部的面部區(qū)域具有一些類似的面部變化,如嘴巴緊閉.所以在訓(xùn)練過程中,對(duì)于相似度很高的厭惡表情和中性表情,訓(xùn)練學(xué)習(xí)的特征更傾向于中性類別.
(a)CK+
(b)TFEID圖3 TGAN-AFFC在CK+、TFEID數(shù)據(jù)集上的混淆矩陣Fig.3 Confusion matrices of TGAN-AFFC on CK+ and TFEID datasets
各方法在CK+數(shù)據(jù)集上的準(zhǔn)確率如下:CNN-
Base為92.68%,IACNN[15]為94.37%,PHOG-LBP[29]
為94.63%,Boosting-POOF[30]為95.70%,pACNN[16]為
97.03%,DeRL[31]為97.30%,TDGAN[18]為97.53%,TGAN-AFFC為98.49%.
各方法在TFEID數(shù)據(jù)集上的準(zhǔn)確率如下:REC[32]為85.45%,LMBP[33]為90.49%,MPC[34]為92.54%,LGBPHS[35]為93.66%,LAP[11]為95.15%,CNN-Base為96.07%,TDGAN[18]為97.20%,TGAN-AFFC為98.26%.
各方法上的文獻(xiàn)序號(hào)表示結(jié)果引自此文獻(xiàn).
相比TDGAN,在CK+、TFEID數(shù)據(jù)集上,TGAN-
AFFC的準(zhǔn)確率分別提升0.96%和1.06%.原因在于:1)TGAN-AFFC使用基于滑動(dòng)模塊的雙重圖像一致性損失,能在有局部變化時(shí)更準(zhǔn)確地計(jì)算差值,避免臉部局部區(qū)域變化時(shí)損失變化不大的情況,使生成器學(xué)習(xí)具有辨別性的表情表示;2)自注意力特征過濾分類器生成特征的多個(gè)版本,使用自注意力融合模塊融合多個(gè)特征的預(yù)測(cè)結(jié)果,在一定程度上消除特征中混入的噪聲,提高表情識(shí)別的準(zhǔn)確率.相比傳統(tǒng)的手工特征方法(LAP、PHOG-LBP、Boosting-
POOF、REC、LMBP、MPC、LGBPHS),TGAN-AFFC在2個(gè)數(shù)據(jù)集上都取得更好的分類效果,這表明神經(jīng)網(wǎng)絡(luò)模型在面部表情識(shí)別任務(wù)上具有更優(yōu)識(shí)別效果.同時(shí),相比基于神經(jīng)網(wǎng)絡(luò)的方法(IACNN、pACN-
N、TDGAN、DeRL),基于GAN構(gòu)建的TGAN-AFFC取得更優(yōu)效果,在CK+數(shù)據(jù)集上比DeRL(97.30%)提高1.19%,在TFEID數(shù)據(jù)集上比CNN-Base(96.07%)提高2.19%.這表明通過GAN,生成器學(xué)習(xí)的表情表示比基于CNN學(xué)習(xí)的表情表示更有辨別性.
2.3.2 不受約束條件下的實(shí)驗(yàn)結(jié)果
為了驗(yàn)證TGAN-AFFC在不受約束條件下的性能,在RAF-DB、BAUM-2i數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn).選擇如下對(duì)比方法:gACNN、MA-Net、TDGAN、DLP-CNN
(Deep Locality-Preserving CNN)、Boosting-POOF、LAP、LPQ(Local Phase Quantization)、3DFM(3D Face Modeling Approach for In-the-Wild Facial Expression Recognition on Image Datasets)、WLD(Multi-scale Weber Local Descriptor)、LMP(Local Monotonic Pattern)、SLPM(Soft Locality Preserving Map)、CNN-
Base.
TGAN-AFFC在RAF-DB、BAUM-2i數(shù)據(jù)集上的混淆矩陣如圖4所示.由圖可見,TGAN-AFFC在識(shí)別快樂表情時(shí)性能最優(yōu),在2個(gè)數(shù)據(jù)集上的準(zhǔn)確率都超過90%,然而,對(duì)厭惡表情和害怕表情不敏感.一方面厭惡表情和害怕表情的樣本數(shù)量最少:在RAF-DB數(shù)據(jù)集上,厭惡表情和害怕表情分別只占5.71%、2.31%,而快樂表情占38.83%;在BAUM-2i數(shù)據(jù)集上,厭惡表情和害怕表情分別占5.11%、6.81%,而快樂表情占24.84%.當(dāng)面對(duì)不同表情類別樣本量如此巨大的差距時(shí),很難從不同的表情中平等學(xué)習(xí),導(dǎo)致對(duì)厭惡表情和害怕表情學(xué)習(xí)的特征較少.另一方面,選擇的面部編碼器分支輸入的數(shù)據(jù)集為CASIA-WebFace數(shù)據(jù)集,該數(shù)據(jù)集上樣本大部分是笑臉,很少有厭惡表情和害怕表情的人臉.由于TGAN-AFFC可從面部數(shù)據(jù)集和表情數(shù)據(jù)集中學(xué)習(xí),所以TGAN-AFFC能學(xué)習(xí)更多關(guān)于快樂的知識(shí),相比厭惡表情和害怕表情,對(duì)快樂表情的識(shí)別能力更強(qiáng).
(c)RAF-DB
(d)BAUM-2i圖4 TGAN-AFFC在RAF-DB、BAUM-2i數(shù)據(jù)集上的混淆 矩陣Fig.4 Confusion matrices of TGAN-AFFC on datasets RAF-DB and BAUM-2i
各方法在RAF-DB數(shù)據(jù)集上的準(zhǔn)確率如下:Boosting-POOF[30]為73.19%,DLP-CNN[24]為74.20%,CNN-Base為82.92%, TDGAN[18]為83.09%, gA-
CNN[16]為85.07%,TGAN-AFFC為85.21%, 3DF-
M[36]為86.10%,MA-Net[17]為88.40%.
各方法在BAUM-2i數(shù)據(jù)集上的準(zhǔn)確率如下:WLD[37]為54.97%,LMP[38]為57.43%,LAP[35]為58.32%,LPQ[35]為58.99%,CNN-Base為61.46%,SLPM[39]為63.84%,TDGAN[18]為65.76%,TGAN-
AFFC為67.71%.
各方法上的文獻(xiàn)序號(hào)表示結(jié)果引自該文獻(xiàn).
在不受約束條件下,面部表情識(shí)別任務(wù)因姿態(tài)和背景等變化多樣而更具有挑戰(zhàn)性.在RAF-DB數(shù)據(jù)集上,3DFM、MA-Net實(shí)現(xiàn)較高的準(zhǔn)確率,這是因?yàn)?DFM、MA-Net的網(wǎng)絡(luò)架構(gòu)深于TGAN-AFFC,使方法具有更強(qiáng)大的特征學(xué)習(xí)能力以處理更復(fù)雜的場(chǎng)景.相比TDGAN,TGAN-AFFC在RAF-DB、BAUM-2i數(shù)據(jù)集上分別提高2.12%、1.95%.這是因?yàn)門DG-
AN使用全連接層作為分類器,生成器提取的特征具有一定的噪聲,會(huì)對(duì)最終的識(shí)別結(jié)果造成影響.TGAN-AFFC使用自注意力特征過濾分類器,使用多個(gè)LayerNorm和ReLU生成多級(jí)特征,采用自注意力融合輸出預(yù)測(cè)結(jié)果,能在一定程度上消除噪聲的影響,提高識(shí)別率.同時(shí),使用滑動(dòng)模塊計(jì)算重構(gòu)損失,減少表情崩塌圖像的生成,通過GAN,生成器學(xué)習(xí)更有辨別性的表情表示.
2.3.3 自注意力特征過濾分類器的消融實(shí)驗(yàn)
為了評(píng)估自注意力特征過濾分類器的效果,將TGAN-AFFC與TGAN、TGAN-FFC進(jìn)行消融實(shí)驗(yàn),結(jié)果如表1所示,表中TGAN使用全連接作為分類器,TGAN-FFC使用FFC作為表情分類器.
由表1可知,相比TGAN,TGAN-FFC的準(zhǔn)確率在4個(gè)數(shù)據(jù)集上都有所提高,表明FFC通過級(jí)聯(lián)的LayerNorm和ReLU,將低激活單元?dú)w零并保留高激活單元,能在一定程度上消除噪聲對(duì)實(shí)驗(yàn)結(jié)果的影響,提高識(shí)別效果.相比TGAN-FFC,TGAN-AFFC的識(shí)別率在4個(gè)數(shù)據(jù)集上都有所提高,表明通過自注意力機(jī)制融合多級(jí)特征的預(yù)測(cè)結(jié)果,能取得更優(yōu)效果,驗(yàn)證特征過濾器中引入自注意力機(jī)制的有效性.
表1 AFFC的消融實(shí)驗(yàn)結(jié)果
下面通過4組實(shí)驗(yàn)研究超參數(shù)λGf、λGe、λpf、λD對(duì)最終表情識(shí)別結(jié)果的影響.第1組實(shí)驗(yàn)固定λGe=0.8,λpf=1,λD=1,λGf從0變化到1,結(jié)果如圖5(a)所示.當(dāng)λGf=0.2時(shí),獲得最高準(zhǔn)確率.第2組實(shí)驗(yàn)固定λGf=0.2,λpf=1,λD=1,λGe從0變化到1,結(jié)果如圖5(b)所示.當(dāng)λGe=0.8時(shí),獲得最高準(zhǔn)確率.第3組實(shí)驗(yàn)固定λGf=0.2,λGe=0.8,λD=1,λpf從0變化到1,結(jié)果如圖5(c)所示.當(dāng)λpf=1時(shí),獲得最高準(zhǔn)確率.第4組實(shí)驗(yàn)固定λGf=0.2,λGe=0.8,λpf=1,λD從0變化到1,實(shí)驗(yàn)結(jié)果如圖5(d)所示.當(dāng)λD=1時(shí),獲得最高準(zhǔn)確率.
由圖5可觀察到,TGAN-AFFC的準(zhǔn)確率隨著4個(gè)超參數(shù)的改變而改變,但不是規(guī)律性的變化,原因在于GAN容易發(fā)生模式崩潰現(xiàn)象,超參數(shù)的改變會(huì)影響方法訓(xùn)練效果.
(a)λGf
(b)λGe
(c)λpf
(d)λD圖5 超參數(shù)改變時(shí)TGAN-AFFC在2個(gè)數(shù)據(jù)集上的變化 曲線Fig.5 Curves of accuracy versus different hyperparameters on 2 datasets
為了評(píng)估滑動(dòng)模塊計(jì)算重構(gòu)損失的效果,TD-GAN和TGAN-AFFC在4個(gè)數(shù)據(jù)集上的生成圖像如圖6所示.由圖可看出,相比未使用滑動(dòng)模塊計(jì)算重構(gòu)損失的TDGAN,TGAN-AFFC可避免生成局部表情崩塌的圖像.在TFEID、BAUM-2i數(shù)據(jù)集的圖像上,可明顯觀察到TDGAN生成圖像在鼻子、嘴巴區(qū)域存在明顯畸變,而使用滑動(dòng)模塊計(jì)算重構(gòu)損失的TGAN-AFFC生成圖像比TDGAN正常,在姿態(tài)變化的條件下,TGAN-AFFC生成圖像只出現(xiàn)輕微的畸變.原因在于基于滑動(dòng)模塊的雙重圖像一致性損失更關(guān)注面部的局部區(qū)域,能生成更好的圖像,在一定程度上表明引入滑動(dòng)模塊計(jì)算重構(gòu)損失可有效避免生成圖像的局部表情崩塌現(xiàn)象的發(fā)生,驗(yàn)證滑動(dòng)模塊的有效性.
(a)人臉(a)Faces
(b)表情(b)Expressions
(c)TDGAN生成圖像(c)Images generated by TDGAN
(d)TGAN-AFFC生成圖像(d)Images generated by TGAN-AFFC圖6 TDGAN和TGAN-AFFC的生成圖像Fig.6 Images generated by TDGAN and TGAN-AFFC
本文提出結(jié)合自注意力特征過濾分類器和雙分支GAN的面部表情識(shí)別方法(TGAN-AFFC).使用雙分支GAN學(xué)習(xí)辨別性的表情表示,并提出自注意力特征過濾分類器作為表情的分類模塊,有效融合多級(jí)特征的識(shí)別結(jié)果,在一定程度上消除表情表示中的噪聲對(duì)識(shí)別結(jié)果的影響,提高表情識(shí)別的準(zhǔn)確率.提出基于滑動(dòng)模塊的雙重圖像一致性損失,通過滑動(dòng)窗口計(jì)算損失,更好地監(jiān)督模型學(xué)習(xí)具有辨別性的表情表示.在不同數(shù)據(jù)集上的對(duì)比實(shí)驗(yàn)驗(yàn)證方法性能.雖然TGAN-AFFC在4個(gè)公開的數(shù)據(jù)集上具有良好的表現(xiàn),但在真實(shí)環(huán)境中的應(yīng)用還有待研究,下一步將圍繞該方法的實(shí)用性展開深入研究.