陳昌川,王海寧,黃 煉,黃 濤,李連杰,黃向康,代少升
(1.重慶郵電大學(xué) 通信與信息工程學(xué)院,重慶 400065;2.山東大學(xué) 信息科學(xué)與工程學(xué)院,山東 青島 266000)
人臉表情識別可以識別人類面部表情,例如驚訝、悲傷、高興、憤怒等,且面部表情識別存在廣泛潛在應(yīng)用[1],可用于人機(jī)交互、購物推薦、犯罪調(diào)查、醫(yī)療救助等。例如:人機(jī)交互時根據(jù)用戶瀏覽商品表情變化推薦商品、推測喜好;刑事偵查中利用犯罪嫌疑人面部表情推測其心理變化;醫(yī)療救助時觀測患者面部表情調(diào)整藥品劑量等。
文獻(xiàn)[2]提出人類情感信息有55%是通過人臉傳遞的,若能使用計算機(jī)讀取面部信息,人機(jī)交互將會有更好的體驗。基于此,1987年美國心理學(xué)家EKMAN等[3]提出面部運動編碼系統(tǒng)(Facial Action Coding System,F(xiàn)ACS),該系統(tǒng)對常見的面部肌肉運動單元(Action Unit,AU)做出詳盡描述并將其具體到編碼,同時,他們將人臉表情分為6種基本表情:憤怒、厭惡、驚訝、高興、悲傷、恐懼。
在EKMAN等的研究基礎(chǔ)上,面部表情識別已取得很大進(jìn)步。通常情況下,多數(shù)方法將面部表情識別分為兩步:特征提取與分類,特征提取分析面部圖像并獲取潛在特征,分類器根據(jù)所獲潛在特征做出最優(yōu)分類。特征提取是表情識別關(guān)鍵一步,直接影響表情識別的效果。對于特征提取現(xiàn)有研究將其分為兩類:幾何特征和紋理特征。一些研究學(xué)者[4-7]提出根據(jù)人臉特征點形變情況統(tǒng)計進(jìn)而識別表情,建立在可靠特征點定位與跟蹤之上,并根據(jù)特征點間數(shù)學(xué)特征統(tǒng)計求得表情分類;然而僅靠部分特征點變化分析并不能代表整幅人臉表情,導(dǎo)致精度不高。文獻(xiàn)[8]提出使用Gabor濾波器與局部二值模式(Local Binary Pattern,LBP)相結(jié)合提取表情特征,在CK+[9]和JAFFE[10]數(shù)據(jù)集最高平均準(zhǔn)確率取得82.0%與97.2%,傳統(tǒng)紋理特征提取易受光照、遮擋等環(huán)境干擾影響。隨著卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)興起,有學(xué)者提出將CNN特征用于表情識別,通過事先標(biāo)定標(biāo)簽提取人臉全局特征迭代回歸并取得不錯的成績[11-15],然而只有人臉全局特征,忽略局部細(xì)節(jié)特征,從而造成難以區(qū)分相似表情,例如驚訝與恐懼。文獻(xiàn)[16]采用高斯拉普拉斯算子(Laplace of Gaussian function,LoG)對眼睛與嘴巴區(qū)域細(xì)節(jié)增強(qiáng)并提取面部全局特征,經(jīng)后續(xù)支持向量機(jī)(Support Vector Machines,SVM)分類,采用增強(qiáng)細(xì)節(jié)以突出局部特征不夠明顯,同時面部全局特征會對局部特征提取產(chǎn)生干擾。文獻(xiàn)[17]采用人臉關(guān)鍵點定位并在關(guān)鍵點周圍提取適量面部突出塊(Salient Facial Patches,SFP)的 LBP特征,其最高平均準(zhǔn)確率在CK+與JAFFE數(shù)據(jù)集,分別為93.33%與91.8%;文獻(xiàn)[18]在面部68特征點周圍提取8個SFP的Hahn特征并級聯(lián)采用SVM分類,最高平均準(zhǔn)確率在CK+與JAFFE數(shù)據(jù)集,分別為91.33%與93.16%。SFP方法突出了表情局部特征,然而現(xiàn)有研究方法SFP選取未有依據(jù),同時忽略了不同表情局部特征的不同比重。根據(jù)文獻(xiàn)[19]的研究,面部6類基本表情均有FACS編碼中對應(yīng)的面部肌肉運動單元AU,其將6類表情AU 細(xì)細(xì)分類,并通過識別統(tǒng)計AU經(jīng)后續(xù)貝葉斯算法分類表情;然而該方法需要大量識別AU且單個AU識別準(zhǔn)確率低。
基于此,筆者提出表情識別算法EAU-CNN:① 該算法在人臉68個特征點基礎(chǔ)上,依據(jù)FACS定義將面部細(xì)分43個子區(qū)域。文中統(tǒng)計了6類基本表情AU產(chǎn)生域,根據(jù)產(chǎn)生域與面部器官將子區(qū)域歸類到8個局部候選區(qū)域AUgi,為SFP選取提供依據(jù),并盡可能避免過多提取不同表情相近面部特征,解決了貝葉斯算法中需大量識別AU與單個AU識別率低的問題;② 為均衡提取各個局部候選區(qū)域特征,EAU-CNN采取8個并行的特征提取分支,并按照局部候選區(qū)域AUgi面積比例支配不同維全連接層。分支的輸出按照注意力自適應(yīng)地連接,以突出不同局部候選區(qū)域的重要程度,最終經(jīng)Softmax函數(shù)將表情分為7類:中性、憤怒、厭惡、恐懼、高興、悲傷、驚訝。其平均準(zhǔn)確率在CK+與JAFFE數(shù)據(jù)集分別取得99.85%與96.61%,相比CNN[20]方法,提升了4.09%與22.03%,相比M-Scale[16]方法,提升了1.61%與11.86%,相比S-Patches[17]方法,提升了6.01%與10.17%。后續(xù)內(nèi)容分為兩部分:EAU-CNN面部表情識別算法、實驗驗證與分析。
面部肌肉運動形成面部表情,現(xiàn)有做法將其分為45種。表1為部分FACS描述,它可以構(gòu)成多種表情。根據(jù)文獻(xiàn)[19]的研究,面部6類基本表情均有對應(yīng)的單個或者組合面部肌肉運動單元。如表2所示,憤怒時眉毛會皺在一起、眉宇間出現(xiàn)豎直皺紋、下眼皮拉緊同時抬起或抬不起等,面部肌肉運動單元相應(yīng)表現(xiàn)為AU4、AU5、AU7、AU23、AU24的其中一種或多種;厭惡時眉毛壓低、上唇抬起、下眼皮下部出現(xiàn)橫紋,面部肌肉運動單元相應(yīng)表現(xiàn)為AU9、AU17;恐懼時眉毛皺在一起并抬起、上眼瞼抬起、下眼皮拉緊、嘴唇或輕微緊張等,面部肌肉運動單元相應(yīng)表現(xiàn)為AU4、AU1+AU5、AU5+AU7;高興時眉毛可能會下彎、下眼瞼下邊可能鼓起或出現(xiàn)皺紋、嘴角后拉并抬高、牙齒可能會露出等,面部肌肉運動單元相應(yīng)表現(xiàn)為AU6、AU12、AU25;悲傷時眉毛內(nèi)角皺在一起并抬高、嘴角下拉、眼內(nèi)角上眼皮抬高等,面部肌肉運動單元相應(yīng)表現(xiàn)為AU1、AU4、AU15、AU17;驚訝時眉毛抬起變高變彎、眉毛下皮膚拉伸、眼睛睜大、上眼皮抬高、下眼皮下落、嘴張開、唇齒分離等,面部肌肉運動單元相應(yīng)表現(xiàn)為AU5、AU26、AU27、AU1+AU2。
表1 部分AU描述
表2 表情相應(yīng)AUs
根據(jù)FACS定義,對6類基本面部表情的面部肌肉運動單元產(chǎn)生區(qū)域統(tǒng)計,發(fā)現(xiàn)面部肌肉運動發(fā)生區(qū)域集中在眉毛、部分額頭、眼睛與面部下半部,對于面部其他部位,如上額、顳部、部分側(cè)面等,面部肌肉運動單元未出現(xiàn)在該區(qū)域,然而不同表情時該區(qū)域特征過于相像,反而會影響整體表情識別準(zhǔn)確率。針對該問題,現(xiàn)有方法[18-19]是構(gòu)建一定數(shù)量SFP提取特征做表情識別,然而SFP選取未考慮FACS,所提面部局部特征還不夠突出。為此,根據(jù)6類基本表情肌肉運動單元產(chǎn)生區(qū)域,將面部劃分為43個特征區(qū)域,如圖1所示,并同時按照面部器官眉毛、眼睛、鼻子、嘴巴所在區(qū)域,構(gòu)建8個局部候選區(qū)域AUgi,i表示1至8。每個候選區(qū)域包含一定特征區(qū)域并負(fù)責(zé)只提取屬于組內(nèi)的肌肉運動單元特征,分區(qū)和候選區(qū)域產(chǎn)生表情如表3所示。如圖2(a)所示,AUg1屬于眉毛與眼睛所在區(qū)域,是 AU1、AU2、AU5與AU7產(chǎn)生域,包含1、2、5、6、8、9、12、13、40、41、42、43面部特征區(qū)域,是憤怒、恐懼、悲傷、驚訝表情產(chǎn)生區(qū)域。如圖2(b)所示,AUg2屬于眉毛與印堂所在區(qū)域,是AU4產(chǎn)生域,包含1、2、3、4、5、6、8、9、12、13、40、41面部特征區(qū)域,是憤怒、恐懼、悲傷表情產(chǎn)生區(qū)域。如圖2(c)所示,AUg3屬于橫向鼻子與其附近肌肉所在域,是AU6產(chǎn)生域,包含16、17、18、19、42、43面部特征圖,是高興表情產(chǎn)生區(qū)域。如圖2(d)所示,AUg4屬于縱向鼻子與其附近肌肉所在域,是AU9產(chǎn)生域,包含10、11、17、18、22、23面部特征圖,是厭惡表情產(chǎn)生區(qū)域。如圖2(e)所示,AUg5屬于鼻子與嘴巴所在域,是AU12、AU15產(chǎn)生域,包含21、22、23、24、25、26、27、28、37面部特征圖,是高興、悲傷、驚訝表情產(chǎn)生區(qū)域。如圖2(f)所示,AUg6屬于嘴巴、下巴所在域,是AU25、AU26、AU27產(chǎn)生域,包含25、26、27、28、29、30、31、32、33、34、35、36、37面部特征圖,是高興、驚訝表情產(chǎn)生區(qū)域。如圖2(g)所示,AUg7屬于下巴所在域,是AU17產(chǎn)生域,包含29、30、31、32、33、34、35、36面部特征圖,是厭惡、悲傷表情產(chǎn)生區(qū)域。如圖2(h)所示,AUg8屬于嘴巴所在域,是AU23、AU24產(chǎn)生域,包含26、27、29、30、31、32、37面部特征圖,是憤怒表情產(chǎn)生區(qū)域。
圖1 面部區(qū)域分區(qū)(黑色數(shù)字為劃分區(qū) 域、白色數(shù)字為68個特征點)
圖2 局部區(qū)域示意圖
表3 AU組包含區(qū)域
EAU-CNN在人臉68個特征點與上述分區(qū)基礎(chǔ)上,組成的8個局部候選區(qū)域AUgi,采用最小矩形框思想截取圖像,如圖3所示。
圖3 最小矩形區(qū)域示意
整體算法流程如圖4所示,每個AUgi圖像歸一化至不同固定大小,經(jīng)過各并行的CNN網(wǎng)絡(luò)提取特征后,拼接為4 096維的全連接層。拼接的全連接層乘以不同表情權(quán)重值,以突出不同表情局部特征,經(jīng)過后續(xù)特征提取與Softmax函數(shù)將表情分為7類:中性、憤怒、厭惡、驚訝、高興、悲傷、恐懼。
圖4 整體算法流程圖
AUg1包含左眼與右眼兩塊區(qū)域,筆者將兩塊區(qū)域拼接一起歸化到45×90像素,經(jīng)過3個卷積層與池化層提取特征后,生成64通道的3×9大小特征圖,并按照各個AUgi的圖像面積比例支配輸出129維全連接層。AUg2將圖像歸化到45×220像素,同樣經(jīng)過3個卷積層與池化層,生成64通道3×25大小特征圖,按照局部候選區(qū)域面積比例支配輸出290維全連接層。AUg3將圖像歸化到110×220像素,經(jīng)過5個卷積層與4個池化層,生成64通道5×11大小特征圖,并按照面積比例輸出716維全連接層。AUg4將圖像歸化到140×170像素,經(jīng)過5個卷積層與4個池化層,產(chǎn)生64通道6×8大小特征圖,并按照面積比例輸出704維全連接層。AUg5將圖像歸化到120×220像素,經(jīng)過5個卷積層與4個池化層,生成64通道5×11大小特征圖,按照面積比例輸出782維全連接層。AUg6將圖像歸化到110×220像素,經(jīng)過5個卷積層與4個池化層,生成64通道5×11特征圖,按照面積比例輸出717維全連接層。AUg7將圖像歸化到80×190像素,經(jīng)過5個卷積層與4個池化層,生成64通道3×10大小特征圖,按照面積比例輸出451維全連接層。AUg8將圖像歸化到80×130像素,經(jīng)過3個卷積層與池化層,生成64通道8×14特征圖,按照面積比例支配758維全連接層。將各個候選區(qū)域輸出拼接得到4 096維全連接層。
為突出不同表情局部特征,拼接所得4 096維全連接層乘以不同表情權(quán)重值Wfj,j表示1到7種不同表情。根據(jù)上述分區(qū),文中定義G表示局部候選區(qū)域的個數(shù),Cgi代表表情發(fā)生時產(chǎn)生面部肌肉運動單元的AUgi個數(shù),i表示1到G,定義SCgi表示表情發(fā)生時產(chǎn)生面部肌肉運動單元的AUgi總面積和,定義Sm表示單個AUgi的面積,其中m屬于1到Cgi,定義b為表情權(quán)重偏置,那么可得表情突出增強(qiáng)因子α,如式(1)所示。對于中性表情,均未有面部肌肉運動單元分布在候選區(qū)域,不需要特別突出某個局部候選區(qū)域AUgi特征,因此,各個候選區(qū)域輸出全連接層權(quán)重參數(shù)保持不變,可得中性表情權(quán)重值Wf1為[1…,1…,1…,1…,1…,1…,1…,1…]T。憤怒表情時,面部肌肉運動單元在候選區(qū)域分布為AUg1、AUg2、AUg8,為突出該區(qū)域特征,包含發(fā)生面部肌肉運動單元的候選區(qū)域,乘以增強(qiáng)因子α權(quán)重值,未發(fā)生候選區(qū)域權(quán)重值保持不變,可得憤怒表情權(quán)重值Wf2為[α…,α…,1…,1…,1…,1…,1…,α…]T。厭惡表情時,面部肌肉運動單元在候選區(qū)域分布為AUg4、AUg7,候選區(qū)域突出權(quán)重值如上所述,可得厭惡表情權(quán)重值Wf3為[1…,1…,1…,α…,1…,1…,α…,1…]T??謶直砬闀r,面部肌肉運動單元在候選區(qū)域分布為AUg1、AUg2,其表情權(quán)重值Wf4為[α…,α…,1…,1…,1…,1…,1…,1…]T。高興表情時,面部肌肉運動單元在候選區(qū)域分布為AUg3、AUg5、AUg6,高興表情權(quán)重值Wf5為[1…,1…,α…,1…,α…,α…,1…,1…]T。悲傷表情時,面部肌肉運動單元在候選區(qū)域分布為AUg1、AUg2、AUg5、AUg7,悲傷表情權(quán)重值Wf6為[α…,α…,1…,1…,α…,1…,α…,1…]T。驚訝表情時,面部肌肉運動單元在候選區(qū)域分布為AUg1、AUg6,可得其表情權(quán)重值Wf7為[α…,1…,1…,1…,1…,α…,1…,1…]T。定義各個標(biāo)簽實際輸出為y,W為候選區(qū)域全連接層權(quán)重,定義C代表表情類別,那么可得到EAU-CNN表情識別算法損失函數(shù)A為
(1)
(2)
選用CK+與JAFFE公開表情數(shù)據(jù)集進(jìn)行實驗驗證。CK+數(shù)據(jù)集由卡耐基梅隆大學(xué)LUCEY等[9]于2010年發(fā)布,其中包含123個人的表情序列,每組表情序列是從表情的中性到表情表達(dá)的最大程度。JAFFE[10]數(shù)據(jù)集在九州大學(xué)心理學(xué)系拍攝,包含由10個日本女模特構(gòu)成的7個面部表情(6個基本面部表情+1個中性)的213個圖像。為了驗證算法的準(zhǔn)確性,分別選取數(shù)據(jù)集中6個基本面部表情外加中性表情共組成7類,實驗采用GPU為RTX2080Ti、CPU為i5-9500、內(nèi)存為16 GB、硬盤為256 GB固態(tài)硬盤,并搭建所需的軟件環(huán)境:Ubuntu16.04、CUDA10.1、Cudnn7.5、Opencv3.4.3、Pytorch1.2.0,同時根據(jù)數(shù)據(jù)集特點,按照類別內(nèi)訓(xùn)練集與測試集7∶1的比例劃分訓(xùn)練數(shù)據(jù)與測試數(shù)據(jù)。實驗所用CK+數(shù)據(jù)集除中性表情外,其他6類表情每個序列均取最大幅度表情5張。采用的CK+圖像個數(shù)為5 430張,其中中性1 350、憤怒570、厭惡895、恐懼280、高興910、悲傷275、驚訝1 150,7個情緒類別依據(jù)類別內(nèi)7∶1等比例劃分?jǐn)?shù)據(jù)集。CK+的訓(xùn)練數(shù)據(jù)與測試數(shù)據(jù)圖像分別為4 725張與705張。對于JAFFE數(shù)據(jù)集實驗所采用圖像個數(shù)為213張,其中中性30、憤怒30、厭惡29、恐懼32、高興31、悲傷31、驚訝30,7個情緒類別依據(jù)類別按照7∶1等比例劃分?jǐn)?shù)據(jù)集。JAFFE的訓(xùn)練數(shù)據(jù)與測試數(shù)據(jù)圖像分別為154張與59張。
為排除因訓(xùn)練集圖像過少導(dǎo)致算法過擬合進(jìn)而造成平均準(zhǔn)確率不精確,將上述CK+與JAFFE數(shù)據(jù)集合并同時融入互聯(lián)網(wǎng)獲取與自行采集的圖像,組成新的數(shù)據(jù)集命名為融合情感數(shù)據(jù)集(Fusion Emotion Datasets,F(xiàn)ED)。該數(shù)據(jù)集與EAU-CNN訓(xùn)練預(yù)測代碼均已上傳至github。FED數(shù)據(jù)集共采用8 123張圖像,其中中性 1 460、憤怒1 000、厭惡1 324、恐懼712、高興1 341、悲傷706、驚訝1 580,并按照各個分類內(nèi)訓(xùn)練集與測試集7∶1劃分?jǐn)?shù)據(jù)集,得到訓(xùn)練集與測試集圖像分別為7 049與1 074張。假設(shè)T代表樣本識別正確的個數(shù),F(xiàn)代表樣本識別錯誤的個數(shù),可得出整體與各個分類平均準(zhǔn)確率p的計算公式:
(3)
為了驗證AUgi選取是否合理,文中選取另外2組局部候選區(qū)域進(jìn)行對比驗證,選取區(qū)域如表4所示。如圖5所示,經(jīng)測試文中所劃分的區(qū)域在CK+數(shù)據(jù)集的平均準(zhǔn)確率達(dá)到99.85%,相比于選取的特征區(qū)域1與特征區(qū)域2,分別高出6.83%與9.33%精度;在FED數(shù)據(jù)集的平均準(zhǔn)確率為98.60%,相比于選取的特征區(qū)域1與特征區(qū)域2,分別高出8.28%與8.92%精度;在JAFFE數(shù)據(jù)集的平均準(zhǔn)確率達(dá)到96.61%,相比于選取的特征區(qū)域1與特征區(qū)域2,分別高出11.87%與18.65%精度??梢园l(fā)現(xiàn),相比于面部器官區(qū)域簡單選取SFP區(qū)域,根據(jù)FACS定義與面部器官區(qū)域選取的SFP區(qū)域,對平均準(zhǔn)確率的提升起到關(guān)鍵作用。
圖5 不同候選區(qū)域精度圖
表4 對比局部候選區(qū)域特征組成
為了驗證不同表情權(quán)重值Wfj對于表情識別準(zhǔn)確率的影響,選取不使用增強(qiáng)因子α、使用增強(qiáng)因子α并采用不同偏置b的方式驗證算法平均準(zhǔn)確率。對于偏置b選取0、1、2、3、4,共5種不同偏置,如圖6所示。對于CK+數(shù)據(jù)集,當(dāng)采用偏置b為1時精度最高,達(dá)到99.85%的精度,相比未使用表情權(quán)重值Wfj高出0.56%。然而偏置并不是越大精度越好,對于偏置為4時,其精度為99.43%,相比未使用權(quán)重值提升0.14%,這是因為偏置的增大導(dǎo)致增強(qiáng)因子α變小,接近未使用表情權(quán)重值。對于FED數(shù)據(jù)集,當(dāng)采用偏置b為1時精度最高,達(dá)到98.60%的精度,相比未使用表情權(quán)重值Wfj提升1.4%;對于JAFFE數(shù)據(jù)集,當(dāng)采用偏置b為0時精度最高,達(dá)到96.61%的精度,相比未使用表情權(quán)重值Wfj提升5.09%。從實驗可以看出,筆者所采取的不同表情權(quán)重值Wfj方法對于平均準(zhǔn)確率的提升起到重要作用。
圖6 不同偏置值精度圖
經(jīng)測試EAU-CNN算法在CK+數(shù)據(jù)集的平均準(zhǔn)確率達(dá)到99.85%。如圖7與表5所示,除悲傷分類1張圖像被錯誤識別成中性外,其識別準(zhǔn)確率為97.06%,其余6類均實現(xiàn)正確識別,識別準(zhǔn)確率達(dá)到100%。EAU-CNN算法比CNN[20]算法識別平均準(zhǔn)確率提高4.05%,每個分類識別準(zhǔn)確率均超過CNN算法的,其中單個分類準(zhǔn)確率最高提升類為悲傷分類,提升14.92%;相比于LeNet-5[21]算法平均準(zhǔn)確率提高16.09%,每類識別準(zhǔn)確率均超過LeNet-5的,其中單個分類準(zhǔn)確率最高提升類為中性,提升34.63%。EAU-CNN算法比M-scale[16]算法平均準(zhǔn)確率提高1.61%,除高興分類識別準(zhǔn)確率等于M-scale算法的,均為100%,其余分類識別準(zhǔn)確率均超過M-scale的,其中單個分類準(zhǔn)確率最高提升類為恐懼,提升4.67%;相比于S-Patches[17]算法平均準(zhǔn)確率提高6.01%,每類識別準(zhǔn)確率均超過S-Patches算法的,其中單個分類識別準(zhǔn)確率最高提升類為憤怒,提升12.02%。
表5 EAU-CNN CK+數(shù)據(jù)集表情識別分布表 %
圖7 不同算法CK+數(shù)據(jù)集準(zhǔn)確率
如圖8與表6所示,除厭惡分類1張圖像被錯誤識別為憤怒,其識別準(zhǔn)確率達(dá)到87.50%;恐懼分類1張圖像被錯誤識別中性,其識別準(zhǔn)確率達(dá)到75.00%,其他分類識別準(zhǔn)確率均達(dá)到100%。EAU-CNN算法在JAFFE表現(xiàn)相比于CNN算法平均準(zhǔn)確率提高22.03%,除厭惡類別與CNN算法識別準(zhǔn)確率相等,為87.50%,其他分類識別準(zhǔn)確率均超過CNN,其中分類準(zhǔn)確率最高提升類為悲傷,提升30%;相比于LeNet-5算法平均準(zhǔn)確率提高25.42%,每個分類識別準(zhǔn)確率均超過LeNet-5算法的,其中分類準(zhǔn)確率最高提升類為恐懼分類,提升50%。對于M-scale算法,EAU-CNN平均準(zhǔn)確率提升11.86%,除厭惡類別準(zhǔn)確率與CNN算法識別準(zhǔn)確率相等,為75.00%,其他分類識別準(zhǔn)確率均超過M-scale算法的,其中分類準(zhǔn)確率最高提升類為中性類別,提升22.22%。相比于S-Patches算法,EAU-CNN算法平均準(zhǔn)確率提升10.17%,除恐懼與驚訝分類準(zhǔn)確率與其相等,為75.00%和100%,剩余分類識別準(zhǔn)確率均超過S-Patches算法的,分類準(zhǔn)確率最高提升類為悲傷分類,提升20%。EAU-CNN在JAFFE數(shù)據(jù)集的識別效果圖如圖10所示。
圖8 不同算法JAFFE數(shù)據(jù)集準(zhǔn)確率
表6 EAU-CNN JAFFE數(shù)據(jù)集表情識別分布表 %
EAU-CNN算法CK+數(shù)據(jù)集識別效果圖如圖9所示。經(jīng)測試EAU-CNN算法在JAFFE數(shù)據(jù)集的平均準(zhǔn)確率達(dá)到96.61%。為了測試算法的魯棒性,在FED數(shù)據(jù)集上,采用K折線交叉驗證。該做法將全部圖像劃分K段,K次訓(xùn)練時保留第K段作為測試集,其余段作為訓(xùn)練集,求得K次訓(xùn)練測試集的準(zhǔn)確率均值。根據(jù)訓(xùn)練集與測試集劃分通常做法,取K值為8,全部圖像按照類別劃分為8段。如表7所示,經(jīng)測試EAU-CNN算法平均準(zhǔn)確率達(dá)到98.29%,CPU平臺每幀耗時50.25 ms,相比S-Patches算法平均準(zhǔn)確率提升6.09%,除厭惡、恐懼分類外,剩余分類準(zhǔn)確率均超過S-Patches算法的,耗時增加44.39 ms;相比M-scale算法,平均準(zhǔn)確率提升4.54%,所有分類準(zhǔn)確率均超過M-scale算法的,耗時增加43.82 ms。EAU-CNN相比CNN算法,平均準(zhǔn)確率相差不大,提升1.99%,但耗時縮短1 300.76 ms;相比于STNN算法,平均準(zhǔn)確率提升16.31%,耗時增加49.02 ms,所有分類準(zhǔn)確率均超過STNN算法??梢园l(fā)現(xiàn)文中所提表情識別算法,無論在小型數(shù)據(jù)集還是大型數(shù)據(jù)集,平均準(zhǔn)確率均達(dá)到同類表情識別算法中最高且耗時適中。其次,文中算法還具備一定魯棒性,通過在FED數(shù)據(jù)集交叉驗證,平均準(zhǔn)確率仍在同期算法中達(dá)到最高。圖11為部分算法對比效果圖,S-Patches算法存在識別錯誤,剩余算法均實現(xiàn)正確識別。
圖9 CK+數(shù)據(jù)集EAU-CNN算法效果圖 圖10 JAFFE數(shù)據(jù)集EAU-CNN算法效果圖
表7 算法對比 %
圖11 部分算法效果圖
筆者提出一種新穎的表情識別研究方法。該方法基于面部肌肉運動單元,并行均衡提取局部表征,并按照注意力自適應(yīng)連接,對提高表情識別準(zhǔn)確率起到重要作用。相比其他算法,該算法解決了整體面部特征不突出與SFP方法忽略面部肌肉運動等缺點,同時結(jié)合SFP突出局部表征與采用AU分區(qū)等優(yōu)點,在CK+與JAFFE數(shù)據(jù)集平均準(zhǔn)確率達(dá)到99.85%與96.61%,相比整體面部特征方法LeNet-5提升16.10%與25.42%,比一般SFP方法S-Patches提升6.06%與10.17%。研究工作中忽略了提取特征后降維,提取大量特征數(shù)據(jù)將大幅增加訓(xùn)練時長。特征提取后的降維,將是下一步重點研究工作。