衛(wèi)飛高 張樹東* 付曉慧
1(首都師范大學(xué)信息工程學(xué)院 北京 100048)2(成像技術(shù)北京市高精尖創(chuàng)新中心 北京 100048)
在情緒識別領(lǐng)域,音頻和視頻的單模態(tài)情緒識別都取得較好的識別結(jié)果[1-2]。為了充分利用音頻信號和面部表情的情緒信息,音視頻雙模態(tài)情緒識別被廣泛研究。音視頻雙模態(tài)情緒識別的融合策略分為特征層融合、分類層融合和決策層融合三種[3-5]。其中決策層融合因為訓(xùn)練簡單、不需要音頻信號和視頻信號時序的絕對同步等特性而被廣泛采用。
在音視頻雙模態(tài)決策層融合過程中,音頻和視頻的單模態(tài)識別結(jié)果一致的情況占比71.21%,識別結(jié)果不一致的情況占比28.79%[6]。而現(xiàn)有決策層融合方法均未對音頻和視頻的單模態(tài)情緒識別結(jié)果不一致情況給予考慮,這使得融合后的情緒識別結(jié)果不準確。
情緒基調(diào)是對一段時間里人們情緒狀態(tài)的整體刻畫,對時間間隔里每幀的情緒狀態(tài)具有指導(dǎo)意義[7-8]。當音頻和視頻的單模態(tài)情緒識別結(jié)果不一致時,可以使用情緒基調(diào)確定音視頻雙模態(tài)的整體情緒狀態(tài),并對音頻和視頻不一致的識別結(jié)果進行修正。
針對單模態(tài)間情緒識別結(jié)果不一致導(dǎo)致識別結(jié)果不準確的問題,本文將情緒基調(diào)考慮在內(nèi),提出了一種基于情緒基調(diào)的音視頻雙模態(tài)情緒識別算法。首先對音頻和視頻進行單模態(tài)情緒識別;其次對音頻和視頻的單模態(tài)識別結(jié)果進行線性加權(quán)和零均值歸一化處理,得到音視頻雙模態(tài)的情緒基調(diào);然后基于不同的情緒基調(diào)對單模態(tài)間不一致的識別結(jié)果進行修正;最后,基于情緒基調(diào)對音視頻雙模態(tài)進行決策層融合,得到最終的情緒識別結(jié)果。
基于情緒基調(diào)的音視頻雙模態(tài)情緒識別算法的流程如圖1所示。
圖1 基于情緒基調(diào)的音視頻雙模態(tài)情緒識別算法流程圖
步驟一使用音視頻情緒數(shù)據(jù)庫進行音頻和視頻的單模態(tài)情緒識別。音頻情緒識別過程包括音頻信號預(yù)處理、音頻特征提取和GMM-HMM[7]模型構(gòu)建;視頻情緒識別過程包括面部表情預(yù)處理、視頻特征提取和RF[9]模型構(gòu)建。
步驟二進行音頻單模態(tài)情緒基調(diào)、視頻單模態(tài)情緒基調(diào)和音視頻雙模態(tài)情緒基調(diào)一致性判斷,若三者情緒基調(diào)不一致,進行步驟三,反之跳到步驟四。
步驟三基于音視頻情緒基調(diào)對音頻和視頻的單模態(tài)識別結(jié)果進行修正。
步驟四在音視頻正、負情緒基調(diào)下,分別對音視頻雙模態(tài)進行決策層融合,得到最終的情緒識別結(jié)果。
對音頻信號進行預(yù)處理,即使用3 s的滑動窗口進行片段切分,相鄰片段之間有1 s的重疊。對所有音頻片段使用OpenSMILE工具[10]提取AVEC2013.config對應(yīng)的2 268維度的音頻特征,并運用基于關(guān)聯(lián)的特征選擇和主成分分析方法(CFS-PCA)[7]進行特征降維。應(yīng)用GMM-HMM模型進行模型訓(xùn)練和音頻單模態(tài)的情緒識別。其中:GMM模型對特征向量的分布進行建模,HMM模型對音頻的時序信息進行建模。
對于面部表情有遮擋的視頻幀進行去除操作,采用局部二值模式(LBP)[11]算法提取圖像幀的特征。使用RF算法對提取特征進行模型訓(xùn)練,并以RF葉子節(jié)點中視頻幀的情緒值均值作為視頻單模態(tài)的情緒識別結(jié)果。
在音頻單模態(tài)情緒識別過程中,每3 s對應(yīng)一個音頻片段,使用基于GMM-HMM模型得到其識別結(jié)果。在視頻單模態(tài)情緒識別過程中,每20 ms對應(yīng)一幀,使用RF模型得到其識別結(jié)果。為了保證音頻和視頻識別結(jié)果的同步,以音頻片段時間窗口為基準,對窗口里幀的視頻情緒值取均值,該值作為時間窗口中所有視頻幀的情緒識別結(jié)果。
對音頻和視頻單模態(tài)情緒識別結(jié)果進行線性加權(quán)得到音視頻雙模態(tài)的情緒值:
Z=ω1X+ω2Y
(1)
式中:X為音頻的情緒識別結(jié)果;Y為視頻的情緒識別結(jié)果;ω1和ω2為雙模態(tài)融合的權(quán)重系數(shù);Z為音視頻雙模態(tài)的情緒值。通過大量實驗證明,ω1和ω2設(shè)置為0.3和0.7時,音視頻雙模態(tài)的情緒值與實際標注結(jié)果最相符。
(2)
(3)
(4)
當音頻與視頻的單模態(tài)識別結(jié)果不一致時,音頻情緒基調(diào)、視頻情緒基調(diào)和音視頻雙模態(tài)的情緒基調(diào)三者也不一致。根據(jù)情緒基調(diào)具有對時間間隔里每幀的情緒狀態(tài)進行指導(dǎo)的性質(zhì),以音視頻雙模態(tài)的情緒基調(diào)為基準,對音頻和視頻單模態(tài)的識別結(jié)果進行修正,使得音頻情緒基調(diào)、視頻情緒基調(diào)和音視頻雙模態(tài)的情緒基調(diào)三者達到一致。當三者情緒基調(diào)一致時,無需修正。
根據(jù)音頻情緒基調(diào)的正、負情況,將音頻樣本劃分為正基調(diào)樣本和負基調(diào)樣本兩部分。針對不同基調(diào)的音頻樣本,我們采用不同的GMM-HMM進行訓(xùn)練。即正基調(diào)樣本采用正基調(diào)GMM-HMM模型進行訓(xùn)練;負基調(diào)樣本采用負基調(diào)GMM-HMM模型進行訓(xùn)練,得到正負基調(diào)的音頻識別模型。以音視頻雙模態(tài)的正、負情緒基調(diào)為基準,音頻樣本使用相應(yīng)基調(diào)的GMM-HMM模型進行修正。
視頻采用RF模型進行單模態(tài)情緒識別,并把RF葉子節(jié)點中視頻幀情緒值的均值作為情緒識別結(jié)果。修正過程中,選取RF葉子節(jié)點中視頻幀情緒基調(diào)與音視頻雙模態(tài)情緒基調(diào)一致的葉子節(jié)點,對這些葉子節(jié)點的情緒值取均值作為幀的識別結(jié)果。其中,視頻幀情緒基調(diào)通過幀情緒值的符號得出,若幀情緒值的符號為正數(shù)則為正基調(diào),反之為負基調(diào)。
音頻信號和人臉面部表情等信息的互補性,在一定程度上可以提高情緒識別的準確率[12-14]。根據(jù)音視頻雙模態(tài)的情緒基調(diào)可以將音視頻樣本分為正基調(diào)樣本和負基調(diào)樣本。在正、負基調(diào)下,使用相應(yīng)基調(diào)的樣本分別進行音視頻雙模態(tài)的決策層融合。將二者進行整合即可得到最終的音視頻雙模態(tài)情緒識別結(jié)果。
本文采用基于情緒基調(diào)的音視頻雙模態(tài)的線性相關(guān)性分析算法進行決策層融合。通過單模態(tài)間識別結(jié)果的相關(guān)性分析得到音視頻雙模態(tài)融合的權(quán)重向量,使用權(quán)重向量對兩個模態(tài)的識別結(jié)果進行線性加權(quán),得到音視頻雙模態(tài)的情緒識別結(jié)果?;诰€性相關(guān)性分析的音視頻雙模態(tài)融合算法的偽代碼見算法1。
算法1基于線性相關(guān)性分析的音視頻雙模態(tài)融合算法
Input: 音視頻雙模態(tài)融合的初始化權(quán)重向量θ=(1,1),音頻和視頻的識別矩陣M,音視頻標注真值N
For每個音視頻文件ido
Compute
Endfor
Repeat
For每個音視頻文件ido
Endfor
Until
其中:
θ:2×1的音視頻雙模態(tài)融合的權(quán)重向量。
Mi:兩列矩陣,對應(yīng)音視頻文件的音頻和視頻的單模態(tài)情緒識別結(jié)果。
Ni:音視頻文件的真值,數(shù)據(jù)庫提供。
ωi:音視頻文件的回歸向量。
ci:真值與融合結(jié)果的相關(guān)系數(shù),ci越高,真值與融合結(jié)果越接近。
(5)
(6)
(7)
應(yīng)用AdaBoost權(quán)重更新的思想,使用式(5)來迭代更新θ值,直到滿足式(6)中的條件,計算得到融合權(quán)重的最優(yōu)解。最終,通過式(7)計算得到音視頻雙模態(tài)的情緒識別結(jié)果。
SEMAINE數(shù)據(jù)庫[15]模擬人機交互的環(huán)境,由20個被測者(8男,12女)與四種性格(溫和、外向、生氣、悲傷)工作人員進行交談。該庫含有95個音視頻文件,每個音視頻文件時長為3~5分鐘,總時長約7小時。其中,音頻信號采樣頻率48 kHz,量化位數(shù)24 bit;視頻每秒50幀圖像,像素值為580×780。SEMAINE是一個維度情緒的數(shù)據(jù)庫,在Valence、Activation、Power、Expectation和Intensity五個維度上分別進行了標注,標注范圍[-1,1]。
將數(shù)據(jù)集按照1∶1∶1的比例劃分為訓(xùn)練集、驗證集和測試集,其中訓(xùn)練集含有31個音視頻文件,驗證集和測試集各32個,并選取Valence和Arousal兩個維度進行實驗。使用基于情緒基調(diào)的音視頻雙模態(tài)情緒識別算法對SEMAINE庫的Valence和Arousal維度情緒進行識別,并使用兩個維度情緒識別RMSE和PCC的均值對識別結(jié)果進行衡量。在測試集上進行驗證,音頻和視頻單模態(tài)的初始識別結(jié)果與基于情緒基調(diào)修正后的結(jié)果如表1所示。
表1 單模態(tài)初始結(jié)果與修正后的結(jié)果
由表1可以得出,基于音視頻雙模態(tài)的情緒基調(diào)對單模態(tài)間不一致情況下的識別結(jié)果修正后,音頻和視頻單模態(tài)的RMSE得到降低,PCC有了一定程度的提升。對音頻識別結(jié)果進行修正,RMSE由0.103下降到0.085,PCC由0.152提升到0.192。對視頻識別結(jié)果進行修正,RMSE由0.078下降到0.061,PCC由0.359提升到0.427。
為了驗證基于情緒基調(diào)音視頻雙模態(tài)情緒識別算法的準確性,分別使用不同的音視頻雙模態(tài)的決策層融合算法與本文算法進行實驗,結(jié)果如表2所示。
表2 決策層融合結(jié)果
基于相同的音頻和視頻特征,使用不同的音視頻決策層融合算法與本文算法進行實驗對比。從表2可以看出,音頻和視頻都使用SVR作為單模態(tài)識別模型,采用線性加權(quán)算法(音頻權(quán)重系數(shù)0.3,視頻0.7)進行決策層融合,RMSE為0.079,PCC為0.328;音頻使用SVR作為識別模型,視頻使用RF作為識別模型,采用線性加權(quán)算法進行決策層融合,RMSE為0.083,PCC為0.344;音頻使用GMM-HMM作為識別模型,視頻使用RF作為識別模型,采用線性加權(quán)算法進行決策層融合,RMSE為0.057,PCC為0.378;音頻使用GMM-HMM作為識別模型,視頻使用RF作為識別模型,采用線性相關(guān)性分析算法進行決策層融合,RMSE為0.048,PCC為0.403;本文使用GMM-HMM模型進行音頻情緒識別,使用RF模型進行視頻情緒識別,引入情緒基調(diào)對單模態(tài)間識別結(jié)果不一致情況下的音頻和視頻情緒識別結(jié)果進行修正。在不同音視頻雙模態(tài)情緒基調(diào)下,分別使用線性相關(guān)性分析算法進行決策層融合,RMSE為0.035,PCC為0.461。相對于其他四種音視頻雙模態(tài)的決策層融合算法,本文算法取得的RMSE最低,PCC最高。證明了該算法的有效性和準確性。
在音視頻雙模態(tài)決策層融合過程中,當單模態(tài)間情緒識別結(jié)果不一致時,融合后的識別結(jié)果不準確。本文將單模態(tài)間識別結(jié)果不一致情況予以考慮,提出一種基于情緒基調(diào)的音視頻雙模態(tài)的情緒識別算法。當音頻和視頻的單模態(tài)情緒識別結(jié)果不一致時,本文創(chuàng)新性地使用情緒基調(diào)對兩個模態(tài)的識別結(jié)果進行修正,解決了單模態(tài)間識別結(jié)果不一致導(dǎo)致融合后識別結(jié)果準確率不高的問題。決策層融合階段,在不同音視頻情緒基調(diào)下,使用線性相關(guān)性分析算法進行音視頻雙模態(tài)決策層融合,識別結(jié)果的準確率也有了一定提升。使用SEMAINE數(shù)據(jù)庫對該算法進行驗證,結(jié)果表明,音視頻雙模態(tài)情緒識別的RMSE得到下降,PCC得到提升。