文虹茜, 卿粼波, 晉儒龍, 王 露
(四川大學電子信息學院, 成都 610065)
情緒的感知和表達在心理學和神經科學領域已經得到了廣泛的研究,隨著人工智能的不斷發展,利用計算機進行情緒的分析也獲得了人們的關注.能夠感知和分析人類情緒和意圖的計算機系統將在娛樂、醫療、教育和公共安全等領域發揮作用.例如,提高機器人情緒識別能力將豐富人機交互應用;情緒感知醫療輔助系統可以幫助評估焦慮和抑郁等精神障礙;在機場、地鐵和公園等人流量大的場所進行情緒監測可以幫助識別潛在威脅,及時處理突發事件.
面部表情可以最直觀地反映出人們的情緒狀態和心理活動,是表達情緒的重要方式.目前基于視覺感知的人類情感的研究主要集中在面部.心理學家Ekman[1]研究不同文化之間的面部行為模式,定義了6類基本情緒(快樂、悲傷、厭惡、驚訝、憤怒和恐懼).傳統的表情識別研究大多采用手工特征或淺層學習,隨著應用環境轉向具有挑戰性的真實場景,神經網絡越來越多地被用于特征提取,并取得了超前的識別精度.在表情識別中應用廣泛的深度學習技術有卷積神經網絡(Convolutional Neural Networks, CNN)、深度置信網絡(Deep Belief Network, DBN)、遞歸神經網絡(Recursive Neural Network, RNN)等[2].然而,有心理研究表明,面部表情本身可能包含誤導性信息,特別是應用于互動和社交場景時.而通過觀察身體姿勢、動作、語調等不同的表現形式能提高對情緒狀態的判斷能力[3-4].此外,在真實環境中,距離、姿勢、光照等因素會對面部情緒的識別產生很大影響,人臉分辨率不高,面部特征模糊,會降低面部表情識別率.
近年來,越來越多的情感神經科學研究表明,身體姿態在情感表達中與面部一樣具有診斷性[5],姿態表現出來的傾斜方向、身體開放度和手臂、肩膀、頭部位置等信息對情感狀態的識別是有貢獻的.通過連接到身體的傳感設備可以感知人體位置和運動,獲得的特征通常以骨骼的形式來進行情緒識別[6-7].然而,傳感技術的使用存在諸多限制和差異,基于視覺的姿態情緒識別技術在圖像、視頻數據上的使用更加廣泛.目前關于身體情緒表達的研究較少,大多使用人工提取特征的方法.但是在當今數據量越發巨大、數據越發復雜的情況下,手工設計和提取特征將耗費巨大的計算代價.
以前的人工特征或深度學習情緒識別工作使用單一的模式,如面部表情[8-12]、言語[13]、步態[6]以及生理信號[14]等.多模態情緒識別受到心理學研究的啟發,情感的表達方式不是孤立存在的,這也有助于提高野外情緒識別的準確性[3].其中,面部表情和身體姿態的組合視覺渠道被認為是判斷人類行為線索的重要渠道[15].有關融合表情及姿態的情緒識別文獻很少,大多使用傳統方法提取融合來自面部表情、身體姿態或者手勢的線索.Gunes等[15]基于輪廓和膚色跟蹤頭部和手部并提取了兩百多個特征用于情緒識別,特征提取操作復雜,只使用了來自4個受試者的27個視頻,數據量非常有限.Chen等[16]使用運動歷史圖像(Motion History Image, MHI)方向梯度直方圖(Histogram of Oriented Gradient, HOG)和圖像方向梯度直方圖的方法表示人臉和人體手勢的局部運動信息和外觀信息,提取的特征向量更加龐大.王曉華等[17]提出時空局部三值模式矩(TSLTPM),融合3 維梯度方向直方圖(3DHOG)特征描述紋理變化.姜明星等[18]使用時空局部三值方向角模式進行特征提取.Mittal等[3]使用了靜態的人臉和步態信息進行情緒識別,然而運動對于識別身體表達的情緒是十分重要的[5].神經網絡的快速發展[19]使情感識別與分析領域也取得很大進步[20-21].然而由于缺乏大型的表情及姿態情緒數據集,表情及姿態融合情緒識別研究的潛力還待發掘.
本文針對公共空間個體人臉分辨率較低、面部特征模糊的問題,提出了融合表情及姿態的情緒識別方法.首先,對視頻數據進行預處理獲得表情通道和姿態通道的輸入流;使用深度學習的方法實現表情和姿態情緒特征構建過程的自動化,減少計算復雜度;最后,在決策層進行融合和分類.通過有效融合表情和姿態在情緒識別中獨特的優勢,實現了公共空間個體情緒狀態的有效識別.
目前融合表情及姿態的情緒識別大多研究純色背景實驗室環境中采集的數據,人工構建和提取特征,多種特征提取技術的局限性在不斷積累,降低了模型的泛化能力.而且使用手工特征將導致大量的計算開銷,處理無約束情形下的大量數據會是巨大挑戰.本文使用基于視覺的表情和姿態來擴展情緒識別的通道,提出基于深度學習的雙通道情緒識別模型(如圖1).模型由數據預處理、特征提取和模式融合3個部分組成.為提供面部通道和姿態通道的輸入流,首先對原始數據進行預處理,包括面部檢測、面部和身體視頻序列尺寸處理.針對表情進行空間流靜態圖像特征學習;對于姿態情緒,外觀特征和運動特征都有重要作用,需要提取視頻序列中有效的時空信息.CNN網絡具有很強的圖像特征學習能力,不依賴人工經驗;3DCNN能同時學習時空特征,因此,本文采用兩個網絡分別對表情圖像信息及姿態外觀和運動信息進行建模.最后,將兩通道的輸出加權融合并得到最終的分類結果.

圖1 模型結構Fig.1 Architecture of model
數據預處理部分包括面部檢測、面部和身體視頻序列尺寸處理.為了提供面部通道的輸入流,本文使用多任務卷積神經網絡MTCNN[22]進行面部檢測.將所有幀通過MTCNN得到面部圖像,并調整為48×48像素.雙通道中的身體通道輸入為視頻序列,所有視頻幀尺寸統一調整為510×786像素.
2.2.1 面部通道 為獲得面部表情信息,使用深度可分離卷積神經網絡Mini-Xception[23]進行特征提取.Mini-Xception的網絡模型來源于Xception架構,深度可分離卷積能更加有效地利用模型參數,殘差連接模塊能加快收斂過程,結構如圖2所示.通過Mini-Xception能自動提取面部輸入的有效特征,為與身體通道的融合做準備.訓練階段學習率設置為0.1,批量大小32,使用早停法防止過擬合.

圖2 Mini-Xception結構Fig.2 Architecture of Mini-Xception
2.2.2 姿態通道 為了獲得姿態情緒信息,使用C3D網絡[24]進行特征提取.研究表明,外觀和運動信息都對從身體表達中感知情緒起重要作用.同時,對于視頻序列,有效的時空信息也很關鍵.C3D能簡單高效地學習時空特征,關注外觀和運動信息,適合用于身體姿態情緒特征的提取.C3D網絡結構示意圖如圖3,訓練階段初始學習率為0.001,批量大小10.

圖3 C3D結構Fig.3 Architecture of C3D
面部通道和身體通道獲得的特征信息各有優勢,將兩個通道融合進行分類.采用加權和的決策層融合:使用神經網絡學習特征后,在全連接層后獲得類別的后驗概率,將面部和身體兩個通道輸出的后驗概率求加權和.因為面部表情是主要模式,因此面部通道和身體通道的權重分別設置為0.7和0.3.
目前利用表情及姿態進行情緒識別的研究較少,可以直接用于訓練的數據集也十分匱乏.Gunes等人[15]在實驗室中收集了包含面部和上身的情緒數據集FABO,此后相關研究大多基于此數據集開展.然而FABO標注不全,23個受試者中只有16個具有標注;樣本數量很少且情感類別不均勻,利用深度學習方法訓練時容易出現過擬合現象,因此無法利用FABO開展本文研究.B?nziger等[25]創建了日內瓦多模態情感刻畫(GEMEP)數據集,數據集包含了來自實驗室的10個受試者的面部和身體的視頻及語音.然而GEMEP并未公開發布,無法用于本文個體情緒的研究.
通過定點拍攝、網上搜集和真人表演3種方式建立公共空間個體情緒數據集SCU-FABE.首先,利用KCF跟蹤算法[26]對視頻中的行人進行跟蹤和保存,KCF算法具有準確度高、運算速度快的雙重優勢,適用于少量行人目標的跟蹤.然后,剔除不合格的個體序列再進行情緒標注.情感計算領域使用比較廣泛的模型有離散型和連續型.連續型并不適用于城市公共空間中個體的情緒劃分,因為在公共空間中人流密度大,對視頻中的每一個人進行精細化的情緒分析耗時耗力.相對于判斷情感程度,識別個體情緒的正負性更為首要.Russell[27]提出的Arousal-Valence模型中價效(Valence)表征了情感的正負性.SCU-FABE主要從價效出發,將情緒劃分為消極、中性和積極三類,邀請10名志愿者(5名男性和5名女性)進行手動標注.實驗中總共使用公共空間個體情緒數據序列993個,每個序列的長度為20幀到100幀不等.其中Negative類包含324個序列、Neutral類包含315個序列、Positive類包含354個序列,按照接近1∶1的比例劃分訓練集和測試集.圖4為表達序列示例.

圖4 數據集表達序列示例 (a)“消極”序列;(b)“積極”序列;(c)“中性”序列Fig.4 Samples of dataset (a) negative; (b) positive; (c) neutral
本文在基于Python的深度學習框架TensorFlow環境下進行實驗.實驗環境為:Ubuntu 18.04, NVIDIA Tesla K80 GPU.為評估本文提出的融合表情及姿態的情緒識別性能,進行如下實驗:(1) 數據增強實驗,探究針對姿態數據情緒識別的數據增強方法;(2) 面部情緒識別實驗和姿態情緒識別實驗,作為單模式情緒識別對照組,與融合的情緒識別結果進行對比分析;(3) 融合情緒識別實驗,驗證融合表情及姿態的情緒識別方法的有效性.
神經網絡需要大量的數據訓練才能獲得更好的性能.對于面部數據,已驗證過可靠性和有效性的數據增強方法有很多,最常用的方法包括旋轉、平移、翻轉、隨機裁剪和隨機加入噪聲等等,可以很好地擴充數據集,增強模型的泛化能力.然而對于姿態數據,使用常見的擴充數據的操作是否會破壞身體姿態序列在情緒識別方面潛在的重要特征是一個需要探究的問題.
為了更有效地擴充數據、完成情緒識別目標,針對身體姿態數據分別使用原始數據、顏色處理數據、旋轉處理數據以及鏡像處理數據進行擴充.方案基于以下假設:未處理的原始數據不會丟失情緒識別相關線索.在唯一變量為輸入數據的情況下訓練和測試,以原始數據的測試結果為閾值,已處理數據的測試結果低于此閾值則判斷為有破壞相關線索的可能.數據處理對比圖如圖5所示.

圖5 數據處理對比圖 (a)原始圖像;(b)顏色處理;(c)旋轉處理;(d)鏡像處理Fig.5 Samples of data processing (a) Original image; (b) Color processing; (c) Rotation processing; (d) Mirror image
使用測試集進行測試,因為樣本數量比較均衡,以10次測試結果的平均識別率為評價指標.實驗結果表明,有關外觀和運動的信息都對情緒感知有作用,顏色處理和旋轉處理加強了潛在特征,識別率更高;鏡像處理破壞了潛在特征,識別率更低.最終訓練使用10%自動對比度和逆時針旋轉5°的方法進行處理,數據量擴充為原來的3倍.分別使用原始數據和擴充后的數據進行訓練,測試結果對比如表1.實驗結果表明,使用顏色處理和旋轉處理的方法進行數據增強效果比較明顯,識別率提高了5.927%.

表1 數據增強實驗結果
為了驗證單獨的面部和姿態對情緒識別的作用以及作為融合模式的雙通道產生的貢獻,進行單模式情緒識別對照實驗.使用經過預處理和數據增強的訓練集進行訓練,面部序列和姿態序列是相互對應的.使用測試集進行10次測試,采用平均識別率作為評價指標.
從表2實驗結果可知,面部對于情緒識別有重要意義,平均識別率為94.698%,從表3混淆矩陣可知,通過面部感知“消極”情緒的效果最差,容易誤判為“中性”情緒.身體姿態在情緒表達中具有診斷性,能自發揭示一些情緒線索,平均識別率為88.024%.從表4混淆矩陣可知,通過身體姿態感知“積極”情緒的效果最差.

表2 情緒識別實驗結果

表3 面部情緒識別混淆矩陣

表4 姿態情緒識別混淆矩陣
如表5所示,融合情緒識別實驗驗證了通過表情和姿態進行情緒識別的有效性,平均識別率達到95.766%,高于單獨的面部情緒識別和姿態情緒識別.通過對比單模式和融合情緒識別混淆矩陣可以更加直觀的看出融合模式的優勢:當兩個通道融合時,面部感知“消極”情緒的局限和身體感知“積極”情緒的局限得到互補改進,“中性”情緒的識別率提高,從而獲得整體判決正確率的提高.說明面部表情和身體姿態都對情緒識別有所貢獻,并且表達的信息可有效地互補,結合面部表情和身體姿態能提高識別情緒狀態的能力和可靠性.

表5 融合情緒識別混淆矩陣
本文設計了一種融合表情及姿態的情緒識別方法,使用兩個通道提取面部和身體與情緒有關的信息,在決策層進行融合和分類.實驗結果表明,對于大量真實場景視頻數據,本文方法具有良好的泛化能力和適用性;表情和姿態表達的情感信息具有較好的互補作用,結合使用能提高情緒識別可靠性.對于身體姿態情緒識別,使用深度學習的方法自動提取特征取得了很好的效果,表明身體姿態情緒識別從使用幾何表示的簡單靜態或動態特征轉向深度學習表征具有很大的潛力.
本文的研究針對公共空間個體情緒識別,而公共空間中多人群組普遍存在,表達的情緒之間存在相關性,對于人群整體情緒的計算也十分有意義.研究公共空間中多尺度情緒識別是下一步所要做的工作.