楊靜波,趙啟軍,呂澤均
(四川大學計算機學院,成都610065)
人臉表情是人的情感最直接的表現(xiàn)形式之一,由于數(shù)字媒體等技術的需要如今有越來越多針對人臉表情的研究,如人臉表情識別[1-2]與人臉表情遷移[3-4]等。而隨著深度學習的發(fā)展,人臉表情識別方法與人臉表情遷移方法的效果都有明顯提升。但深度學習方法往往需要大量訓練數(shù)據(jù),現(xiàn)有人臉數(shù)據(jù)庫的數(shù)據(jù)量往往有限、數(shù)據(jù)質(zhì)量參差不齊,且大多數(shù)針對傳統(tǒng)六種基本表情。
得益于生成對抗網(wǎng)絡[5]的提出,許多基于生成對抗網(wǎng)絡的人臉表情生成方法被驗證。但現(xiàn)有的人臉表情生成方法往往更關注于傳統(tǒng)六種基本表情,忽略了表情的豐富性。于是,本文提出引入標記分布[6]的人臉表情圖像生成方法,用有限訓練數(shù)據(jù)獲得更豐富的表情數(shù)據(jù),最終生成高質(zhì)量的人臉表情圖像,對人臉表情數(shù)據(jù)庫進行擴充。該方法基于生成對抗網(wǎng)絡,使用Arousal-Valence 維度情感模型劃分表情類別以表示更豐富的表情,同時引入標記分布彌補數(shù)據(jù)量的缺失,并在Oulu-CASIA 數(shù)據(jù)庫和OSU 數(shù)據(jù)庫上進行了驗證。
量化面部情感行為的模型一般分為3 類[7]:①分類模型:從情感相關類別中選取代表性的情感分類,如Ekman[8]提出的六種基本表情:高興、厭惡、驚訝、悲傷、憤怒和恐懼;②維度模型:在連續(xù)的情感區(qū)域內(nèi)選擇一個值來代表情緒;③面部動作編碼系統(tǒng)模型:所有的面部動作都由動作單元表示。
Arousal-Valence 維度情感模型是,從Arousal 和Valence 兩個維度描述情感。其中Arousal 代表激活度,取值從-1 到1 代表情感從平靜到激動。Valence 代表愉悅度,取值從-1 到1 代表情感從消極到積極[9]。本文方法將兩個維度各劃分21 類,共21×21 個表情粒度。
生成對抗網(wǎng)絡[5]是十分典型和有效的生成模型之一,由生成器和判別器兩部分組成,生成器生成“假”圖像,判別器用以判別“真”和“假”圖像,通過生成器和判別器的博弈最終生成高質(zhì)量的圖像。其中一個代表是條件生成對抗網(wǎng)絡[10],引入條件信息控制圖像生成:
其中G表示生成器,D表示判別器,x表示真實數(shù)據(jù),z表示隨機噪聲,y表示條件。
人臉表情圖像生成是很有挑戰(zhàn)性的圖像生成任務之一,人臉圖像復雜,人的表情更是多樣。近年來基于生成對抗網(wǎng)絡的人臉表情圖像生成方法不斷被提出改進,如G2-GAN[11]使用人臉特征點作為幾何先驗控制表情的生成,ExprGAN[12]提出了表情強度控制模塊,這兩者均基于傳統(tǒng)基本表情對表情進行劃分生成。AttGAN[13]對人臉多種屬性進行編輯,改進的CAAE[16]和本文一樣基于維度情感模型,但其訓練數(shù)據(jù)量較大。Cascade EF-GAN[15]提出局部關注和級聯(lián)生成的思想,其基于表情動作單元對表情進行劃分,但網(wǎng)絡結(jié)構(gòu)復雜。
本文提出的引入標記分布的人臉表情圖像生成方法,則是在ExprGAN[12]的基礎上,引入標記分布,使用較輕量級的生成對抗網(wǎng)絡,在較少的訓練數(shù)據(jù)下生成高質(zhì)量人臉表情圖像。
在訓練數(shù)據(jù)量充足的情況下,訓練階段使用的標簽往往是獨熱標簽,即一個訓練數(shù)據(jù)對應一個類別標簽。但本文中為了在訓練數(shù)據(jù)有限的情況下獲得訓練數(shù)據(jù)提供的更多信息,利用標記分布學習與標記增強[6],將代表一個類別維度表情標簽轉(zhuǎn)化為服從高斯分布的分布式形式,為缺少訓練數(shù)據(jù)類別也提供部分信息。標簽處理偽代碼如下:
輸入:維度情感模型標簽(V,A),V、A∈[-1,1],保留小數(shù)點后一位
輸出:訓練使用的42 位表情標簽y
網(wǎng)絡的輸入為R128×128×3的人臉表情圖像和R42的表情標簽,輸出生成的R128×128×3人臉表情圖像,是一個端到端的過程。網(wǎng)絡結(jié)構(gòu)為條件生成對抗網(wǎng)絡,分為生成器與判別器,同時引入人臉識別模型對生成人臉表情圖像的身份進行控制。其中生成器由編碼器和解碼器兩部分組成,判別器與表情識別模塊共享部分權(quán)重。
圖1 網(wǎng)絡結(jié)構(gòu)
生成器由編碼器和解碼器組成。編碼器輸入為原始輸入圖像x,輸出為低維特征z。低維特征z∈R50,與表情標簽y有相同維度。將z與y拼接在一起作為解碼器的輸入,使解碼生成的圖像具有表情標簽y提供的表情信息。為保證圖像生成質(zhì)量,本文通過最小化輸入人臉表情圖像x與生成人臉表情xg之間的L1 距離控制生成圖像與輸入圖像的差別:
本文使用傳統(tǒng)的條件生成對抗網(wǎng)絡損失函數(shù)來對生成圖像進行約束,判別器的輸入為原始輸入圖像x與生成圖像xg,對抗損失函數(shù)表示為:
其中P表示數(shù)據(jù)分布。
為了保持x與xg之間的人臉同一性,本文參考Ex?prGAN[12]引入一個預先訓練好的人臉識別模型VGG Face[16]來增強人臉身份特征層的相似性:
其中fj是人臉識別網(wǎng)絡第j層卷積層的特征映射,ρj為對應權(quán)值。
表情判別模塊與判別器共享權(quán)重,實質(zhì)是一個人臉表情識別網(wǎng)絡。由于本文表情標簽的特殊性,其不同于常見的人臉表情識別網(wǎng)絡是分類模型,而是一個回歸模型。其輸入為原始輸入圖像x和生成圖像xg,分別輸出yx與yg,本文通過最小化輸入yx與yg之間的L2 距離控制生成圖像與輸入圖像的表情:
本文方法在Oulu-CASIA 數(shù)據(jù)庫[17]與CFEED 數(shù)據(jù)庫[18]上進行驗證,兩數(shù)據(jù)庫數(shù)據(jù)均不為Arousal-Va?lence 維度情感模型標識數(shù)據(jù)。Oulu-CASIA 數(shù)據(jù)庫數(shù)據(jù)為包含80 名采集者6 種基本情緒的三種不同光照條件下的表情視頻圖像序列,本文選取正常光照條件下的視頻圖像對所有幀的圖像數(shù)據(jù)進行重新人工標注,并采用2.1 小節(jié)方法對標簽進行處理。同樣,對CFEED 數(shù)據(jù)庫中包含230 名采集者正常光照下通過面部表情動作單元標注的表情圖像數(shù)據(jù),做相同標注處理。最終獲得15407 張數(shù)據(jù),15000 作為訓練數(shù)據(jù),其余作為測試。
本文使用MTCNN[19]對所有數(shù)據(jù)進行人臉檢測和對齊,并將人臉區(qū)域裁剪縮放為128×128 大小的圖像。
本文主體為條件生成對抗網(wǎng)絡,生成器由編碼器和解碼器構(gòu)成,編碼器在VGG 網(wǎng)絡的基礎上加入輸出維度50 的全連接層,共五層卷積層和四層全連接層。解碼器包含一個全連接層和七個反卷積層。判別器則由四個卷積層和兩個全連接層組成。表情判別器模塊則在判別器的基礎上加入四層全連接層,與判別器共享權(quán)重??倱p失函數(shù)
其中l(wèi)1=l3=l3=1、l2=0.1。
訓練使用TensorFlow 深度學習框架,使用Adam優(yōu)化器進行優(yōu)化。由于訓練數(shù)據(jù)有限,對全局訓練造成困難,本文采用兩階段增量訓練,第一階段僅訓練解碼器于判別器,損失函數(shù)為:
ρ1=1,ρ2=0.01。第二階段加入所有部分,使用總損失函數(shù)Ltotal進行訓練。
為達到數(shù)據(jù)擴充的目的,可使用本文方法對數(shù)據(jù)庫數(shù)據(jù)進行數(shù)據(jù)擴充。首先可對數(shù)據(jù)庫以采集身份信息數(shù)據(jù)進行表情豐富性的擴充,如圖2 所示為部分生成效果,針對輸入人臉,賦予不同的表情標簽,可獲得表情更多樣的人臉表情數(shù)據(jù)。
圖2 輸入人臉表情圖像生成效果
其次,可僅使用解碼器對隨機噪聲進行圖像生成,獲得不同身份信息的人臉表情圖像生成,如圖3 所示。網(wǎng)絡結(jié)構(gòu)中低維特征z使用服從均勻分布的隨機噪聲,提供不同于數(shù)據(jù)庫數(shù)據(jù)的身份信息與圖像信息,與表情標簽拼接后作為解碼器的輸入,獲得更多身份信息的人臉表情圖像。
圖3 輸入隨機噪聲生成效果
可以看出,以數(shù)據(jù)庫原有圖像作為輸入,可以在保留身份信息的前提下獲得更豐富的表情圖像。以隨機噪聲作為輸入,可以生成新的身份信息的多種表情圖像。可以看出圖3 第三行生成的CFEED 數(shù)據(jù)庫圖像風格數(shù)據(jù)視覺效果略差,考慮是因為CFEED 訓練數(shù)據(jù)僅為Oulu-CASIA 數(shù)據(jù)庫數(shù)據(jù)的1/2。
針對生成圖像,使用PSNR 在Oulu-CASIA 數(shù)據(jù)集上對圖像質(zhì)量進行評估,PSNR 為峰值信噪比,常用來對圖像質(zhì)量進行評估,其數(shù)值越大代表生成圖像質(zhì)量越高。本文與ExprGAN 方法[12]進行對比,可以看出本文生成圖像質(zhì)量略高。
表1 AV-GAN 方法數(shù)據(jù)分布
為對人臉表情圖像數(shù)據(jù)進行擴充,本文提出了可在小規(guī)模數(shù)據(jù)集上運用標記分布進行人臉表情圖像生成方法。在Oulu-CASIA 數(shù)據(jù)庫與CFEED 數(shù)據(jù)庫上的實驗結(jié)果表明,使用本文方法可以生成較高質(zhì)量的人臉表情圖像。