郭迎春 閆帥帥 劉依
摘要 針對(duì)目前表情生成網(wǎng)絡(luò)中存在的人臉表情失真、不同幀間圖像明暗差異明顯的問(wèn)題,提出一種基于遞歸雙對(duì)抗網(wǎng)絡(luò)模型的人臉表情生成框架。首先通過(guò)提取深度人臉特征并生成表情特征圖,將其作為監(jiān)督信號(hào),生成人臉表情種子圖像;然后使用生成的種子圖像和原始目標(biāo)人臉一起作為輸入,生成特征保持圖像,作為當(dāng)前幀的輸出,同時(shí)該特征保持圖像也作為下一幀種子圖像生成的輸入;最后,將種子圖像生成網(wǎng)絡(luò)和特征保持圖像生成網(wǎng)絡(luò)遞歸進(jìn)行下一幀圖像的生成,多次遞歸得到與原始輸入表情一致的特征保持人臉表情視頻序列。在CK+和MMI數(shù)據(jù)庫(kù)上的實(shí)驗(yàn)結(jié)果表明,提出的方法能夠生成清晰自然的人臉表情視頻幀,且在目標(biāo)人臉形狀和驅(qū)動(dòng)的表情特征圖像有較大形狀差異時(shí)具有魯棒性。
關(guān) 鍵 詞 生成對(duì)抗;深度學(xué)習(xí);表情動(dòng)畫(huà);表情生成;雙模型
中圖分類(lèi)號(hào) TP391? ? ?文獻(xiàn)標(biāo)志碼 A
Abstract Aiming at the problem of facial distortion of animated video generated in current facial expression generation network and large differences of light between different frames, a recursive facial expression synthesis framework based on dual network model is proposed. Firstly, deep facial features are extracted to construct facial feature maps, which are used as supervisory signals to generate seed images of facial expressions. Then, the generated seed images together with the original target faces are used as the input information to generate feature-preserving images as the output of the current frame, and also the output feature-preserving image is used as the input of the next seed image generation. Finally the next frame image is generated recursively to synthesize the facial expression sequence which features consistent with the original input expression. Experimental results on CK+ and MMI database show that the proposed method can generate clear and naturai seed image and feature-preserving image, and it is robust when there is a large difference between the shape of the target face and the shape of the driven facial expression image.
Key words GAN; deep neural network; facial animation; expression generation; dual model
0 引言
人臉表情生成是指將人臉表情從源對(duì)象遷移到目標(biāo)對(duì)象,新合成的目標(biāo)對(duì)象人臉圖像保持不變,但是其表情與源對(duì)象一致,這種技術(shù)在影視動(dòng)畫(huà)、視頻游戲、社交娛樂(lè)等領(lǐng)域的應(yīng)用非常廣泛[1-2]。隨著面部表情遷移技術(shù)的發(fā)展,虛擬現(xiàn)實(shí)、情感互動(dòng)、人工智能等領(lǐng)域的應(yīng)用日益廣泛,人臉表情生成引起了大量計(jì)算機(jī)圖形學(xué)和計(jì)算機(jī)視覺(jué)領(lǐng)域的相關(guān)人員的研究興趣。
過(guò)去幾十年來(lái)研究人員提出了大量的人臉表情生成的方法,現(xiàn)有的方法可以根據(jù)像素的操作分為兩大類(lèi),分別是基于圖形學(xué)的方法和基于圖像的方法[3]?;趫D形學(xué)的方法通常使用一個(gè)參數(shù)模型,將源對(duì)象圖像參數(shù)化到模型參數(shù)中,使用模型進(jìn)行表情圖像的生成。如:使用RGB-D深度攝像機(jī)進(jìn)行人臉捕捉和追蹤及人臉特征點(diǎn)定位、3D重建[4-5]來(lái)進(jìn)行人臉表情的生成。人臉表情的獲取和自動(dòng)化建模在人臉表情生成中占有重要地位。Ekman等[6]將人臉?lè)譃椴煌谋砬閯?dòng)作單元(Action Unit, AU),將不同的AU進(jìn)行組合形成固定的表情合成模版,這就是經(jīng)典的面部編解碼系統(tǒng)(Facial Action Coding System, FACS)。其后Eisert[7]提出通過(guò)建立參數(shù)模型編碼,使用68個(gè)表情動(dòng)作參數(shù)(Facial Action Parameters, FAPs)定義人臉不同的參數(shù),改變這些參數(shù)的大小可以產(chǎn)生不同的表情。 Bickel等[8]使用不同顏色的標(biāo)記點(diǎn)對(duì)表演者面部進(jìn)行標(biāo)記,使用相機(jī)陣列分別采集不同尺度的表情數(shù)據(jù)。Cao等[9]通過(guò)定義一個(gè)三維參數(shù)可變形模型(3D morphable models,3DMM) [10] ,對(duì)普通攝像頭捕捉到的人臉進(jìn)行表情參數(shù)回歸,再對(duì)三維模型進(jìn)行變形和渲染,從而得到人臉表情圖像。由于這些方法大多使用參數(shù)模型進(jìn)行擬合,需要復(fù)雜的模型和參數(shù)設(shè)計(jì),通常不具備泛化性,而且極少開(kāi)源。通過(guò)基于二維圖像擬合三維模型的相關(guān)技術(shù)[9]的出現(xiàn)在一定程度上解決了傳統(tǒng)方法需要過(guò)于笨重設(shè)備的問(wèn)題[11-12],但同樣存在模型復(fù)雜、實(shí)現(xiàn)困難的問(wèn)題。
[ψ1]網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示,對(duì)于人臉表情特征圖像[B],使用多個(gè)卷積和池化層提取深度特征,表情特征圖像提取器用于提取輸入人臉的表情信息,在圖像重建中作為監(jiān)督信息,相對(duì)來(lái)說(shuō)其所包含信息量較少,為了降低網(wǎng)絡(luò)的參數(shù)量,提高系統(tǒng)運(yùn)行速度,應(yīng)適當(dāng)縮減其特征提取器的深度。
對(duì)于目標(biāo)人臉圖像[S]的特征提取器,由于人臉目標(biāo)圖像在生成人臉表情動(dòng)畫(huà)中提供了紋理和個(gè)體特征,因此人臉目標(biāo)圖像特征提取和特征解碼需要對(duì)人臉的細(xì)節(jié)進(jìn)行更多保留,增加人臉圖像[S]的編碼器網(wǎng)絡(luò)深度,提取圖像中更高層級(jí)的特征;使用跳躍連接,將低級(jí)圖像紋理特征進(jìn)行保留,人臉特征圖像和目標(biāo)人臉?lè)謩e同時(shí)進(jìn)行特征跨層連接,最終在解碼器階段融合更多信息,提高圖像精細(xì)度。
如圖4所示,在[ψ2]中使用了對(duì)等的兩個(gè)輸入,其一為[ψ1]輸出的種子圖像[O1],另一輸入為原始的目標(biāo)人臉圖像[S],因此在[ψ2]中使用了兩個(gè)相同結(jié)構(gòu)的特征提取器,但不共享參數(shù)。在解碼階段,添加更多地跳躍連接。另外,[ψ2]判別器中使用分類(lèi)能力更強(qiáng)的VGG網(wǎng)絡(luò),增強(qiáng)型的判別器使得[ψ2]能夠分辨生成圖像和真實(shí)圖像間更加微小的區(qū)別。由于更強(qiáng)的判別器導(dǎo)致生成網(wǎng)絡(luò)更加難以訓(xùn)練,因此訓(xùn)練[ψ2]時(shí),將部分[ψ1]網(wǎng)絡(luò)參數(shù)在[ψ2]中共享。
1.3.2 遞歸生成視頻幀
在基于深度學(xué)習(xí)的人臉表情相關(guān)文獻(xiàn)中沒(méi)有考慮生成視頻中不同幀之間的一致性[3,15,17-18,23],大多數(shù)僅僅針對(duì)單張圖形進(jìn)行生成,雖然靜態(tài)的圖像生成已經(jīng)達(dá)到了十分精細(xì)逼真的效果,但是一旦進(jìn)行視頻的相關(guān)生成,就會(huì)暴露出生成不同圖像幀的明暗差異大的問(wèn)題,即有些幀比較亮,有些幀比較暗,存在分布不均勻的問(wèn)題,導(dǎo)致在視頻播放的時(shí)候會(huì)出現(xiàn)閃爍、視頻真實(shí)性下降。本文提出的遞歸生成方法,利用種子圖像生成網(wǎng)絡(luò)獲得表情種子圖像,再使用特征保持網(wǎng)絡(luò)進(jìn)行特征保持圖像的生成,然后,使用生成的特征保持圖像作為新一幀的輸入進(jìn)行遞歸生成。最終使所有的視頻幀顏色、亮度和紋理更加統(tǒng)一,生成的視頻更加真實(shí)自然。
使用兩個(gè)網(wǎng)絡(luò)對(duì)人臉進(jìn)行分別生成,首先由[ψ1]進(jìn)行人臉的種子圖像生成,然后使用[ψ2]對(duì)生成的圖像進(jìn)一步優(yōu)化遞歸生成,獲得人臉特征保持的輸出圖像。在遞歸生成時(shí),設(shè)輸入的驅(qū)動(dòng)圖像幀序列為[B],其對(duì)應(yīng)的第[i]幀驅(qū)動(dòng)圖像為[bi],目標(biāo)人臉圖像為[S],如圖5所示,為遞歸生成的流程。由[ψ1]進(jìn)行人臉表情的種子[O11]圖像生成。[O11]將作為[ψ2]的輸入,同時(shí),目標(biāo)人臉[S]也將作為[ψ2]的輸入,獲得第一幀人臉的特征保持圖像[O12]并進(jìn)行輸出;接著進(jìn)行第二幀人臉邊界序列[B2]的輸入,將第一幀最終輸出的特征保持圖像[O12]和第二幀對(duì)應(yīng)的人臉特征圖像[B2]作為[ψ1]輸入,進(jìn)行第二幀種子圖像[O21]的生成,然后由[O21]和目標(biāo)圖像[S]的進(jìn)行第二幀特征保持圖像[O22]生成,作為第二幀的輸出。以此循環(huán),遞歸生成所有表情幀的輸出如式(1)和式(2)所示:
2 實(shí)驗(yàn)結(jié)果與分析
2.1 數(shù)據(jù)集和模型訓(xùn)練
網(wǎng)絡(luò)的訓(xùn)練和測(cè)試均使用CK+和MMI數(shù)據(jù)集,二者均提供人物表情的視頻數(shù)據(jù)。本文選取圖像數(shù)據(jù)集分別來(lái)自CK+和MMI數(shù)據(jù)集視頻中獲取的圖像幀。其中CK+數(shù)據(jù)集包括123個(gè)人,593個(gè)圖像序列,每個(gè)圖像序列的最后一幀都有動(dòng)作單元的標(biāo)簽,而在這593個(gè)圖像序列中,有327個(gè)序列有表情的表情標(biāo)簽;MMI數(shù)據(jù)集包含超過(guò)2 900個(gè)視頻和75個(gè)人的高分辨率靜止圖像。其完全注釋了視頻中的所有人物的表情動(dòng)作單元(AU),并且在視頻幀級(jí)別上進(jìn)行部分編碼。
2.1.1 預(yù)處理
本文使用的數(shù)據(jù)集包括了豐富的場(chǎng)景,數(shù)據(jù)集為視頻的形式。因此截取視頻幀并生成對(duì)應(yīng)數(shù)量不定的視頻幀圖像。使用Dlib機(jī)器學(xué)習(xí)庫(kù)對(duì)每一張圖像中的人臉進(jìn)行檢測(cè)和裁切,并提取每張人臉中68個(gè)特征點(diǎn),將其轉(zhuǎn)化為人臉特征圖像。如圖6所示,對(duì)于數(shù)據(jù)庫(kù)中的一個(gè)表情視頻片段,將其截取為僅含人臉部位的圖像,然后獲取特征點(diǎn),并構(gòu)造表情特征圖像。
2.1.2 訓(xùn)練細(xì)節(jié)
在CK+數(shù)據(jù)集中,隨機(jī)選取80個(gè)人的全部視頻數(shù)據(jù)進(jìn)行訓(xùn)練,組成超過(guò)200 000對(duì)訓(xùn)練數(shù)據(jù)。對(duì)[ψ1]和ψ2分別進(jìn)行了訓(xùn)練,在對(duì)[ψ1]的訓(xùn)練中,選取大小為64的batch size,迭代訓(xùn)練200 000次。訓(xùn)練[ψ2]使用了同樣的數(shù)據(jù),batch size大小設(shè)定為64,迭代訓(xùn)練100 000次。在使用MMI數(shù)據(jù)集時(shí),使用在CK+數(shù)據(jù)集上訓(xùn)練得到的模型參數(shù)進(jìn)行微調(diào),使用隨機(jī)的50個(gè)人的全部視頻數(shù)據(jù)進(jìn)行訓(xùn)練。測(cè)試集中使用CK+數(shù)據(jù)集剩余的43個(gè)人的全部視頻數(shù)據(jù)和MMI數(shù)據(jù)集剩余的25個(gè)人的全部視頻數(shù)據(jù)。
由于傳統(tǒng)生成對(duì)抗損失函數(shù)中使用對(duì)數(shù)函數(shù)和JS距離,容易導(dǎo)致訓(xùn)練過(guò)程中的梯度消失的問(wèn)題,文獻(xiàn)[24]中通過(guò)使用不帶動(dòng)量的優(yōu)化器訓(xùn)練,并對(duì)更新后的權(quán)重強(qiáng)制截?cái)嗟揭欢ǚ秶鷥?nèi),以滿(mǎn)足其中提到的lipschitz連續(xù)性條件,并且使用不帶動(dòng)量的優(yōu)化如RMSprop,并將權(quán)重截?cái)嗟絒-0.01,0.01]之間,避免梯度消失問(wèn)題,本文使用相同的策略。
2.2 圖像生成效果
為了驗(yàn)證本文方法的人臉表情生成效果,這里與目前主流的基于生成對(duì)抗的人臉表情生成方法進(jìn)行了比較,主要的對(duì)比方法有CycleGAN、GeneGAN和GeometryGAN。對(duì)于CycleGAN,本文依據(jù)作者的文獻(xiàn)實(shí)現(xiàn)其代碼進(jìn)行實(shí)驗(yàn)。如圖7所示,最上面一行為輸入的原始人臉表情圖像,對(duì)其進(jìn)行表情圖像的生成。本文使用了4種方法進(jìn)行驗(yàn)證,分別為CycleGAN、GeneGAN、GeometryGAN及本文提出的對(duì)抗方法。從圖中可以看到,CycleGAN和GeneGAN生成的圖像模糊不清,并且出現(xiàn)人物失真和變形的問(wèn)題,這是由于沒(méi)有使用特征歸一化或者特征轉(zhuǎn)換器進(jìn)行特征的重組。相比GeometryGAN,本文方法生成的人臉表情圖像更加清晰,達(dá)到最好的效果。
2.3 人臉特征圖比較
如圖8所示,圖8a)~d)分別為兩個(gè)不同臉型的人臉使用對(duì)方的人臉特征圖像生成的人臉表情幀。圖8a)和圖8b)為使用帶有下巴包圍框的特征圖像作為監(jiān)督信息生成的人臉表情圖,圖8c)和8d)為不帶有下巴邊界框的特征圖像作為監(jiān)督信息生成的人臉表情圖像,從圖中可以出,本文提出的方法能夠達(dá)到在人臉圖像生成時(shí)保持原始輸入人臉特征的效果,且本文方法構(gòu)造簡(jiǎn)單,易于理解。在網(wǎng)絡(luò)訓(xùn)練過(guò)程中也發(fā)現(xiàn),由于減少了冗余信息,不使用帶有下巴包圍線(xiàn)的特征圖能夠使模型更快地收斂。
2.4 表情圖像幀生成效果
本文提出的方法能夠生成真實(shí)性高的人臉表情視頻幀,在使用英偉達(dá)GTX1080Ti顯卡的主機(jī)上能夠?qū)崟r(shí)生成人臉表情圖像。本文對(duì)生成的視頻幀進(jìn)行了充分的驗(yàn)證,首先是表情的遷移。使用了未包含在視頻訓(xùn)練數(shù)據(jù)集中的數(shù)據(jù),提取表情特征圖,然后使用表情特征圖驅(qū)動(dòng)目標(biāo)人臉生成人臉表情圖像幀。如圖9所示,對(duì)生成的視頻幀的連續(xù)性進(jìn)行了實(shí)驗(yàn),測(cè)試輸出完整流暢的視頻幀。對(duì)不同的人臉,包括彩色和黑白的人臉進(jìn)行生成,對(duì)不同臉型的人使用同一個(gè)人臉表情特征圖進(jìn)行生成,生成了的圖像具有較高的真實(shí)性。
3 結(jié)論
本文提出基于深度學(xué)習(xí)的遞歸生成人臉表情動(dòng)畫(huà)方法,使用兩個(gè)生成網(wǎng)絡(luò)遞歸生成人臉表情圖像幀。首先通過(guò)對(duì)抗網(wǎng)絡(luò)生成含有驅(qū)動(dòng)人臉表情信息的種子圖像,將其用于生成輸入人臉的特征保持幀。在表情動(dòng)畫(huà)中,通過(guò)將前序幀的輸出作為下一幀的輸入進(jìn)行遞歸生成,能夠生成平滑過(guò)渡的圖像幀。在每個(gè)網(wǎng)絡(luò)中,特征提取層和重建層使用跳躍連接。實(shí)驗(yàn)證明本文提出的方法能夠生成精確的、平滑的人臉表情動(dòng)畫(huà),解決了傳統(tǒng)方法模型復(fù)雜、操作困難等問(wèn)題,同時(shí)使用簡(jiǎn)單的表情特征優(yōu)化方法,提高了系統(tǒng)運(yùn)行效率。未來(lái),在對(duì)應(yīng)的圖像上使用聲音作為一個(gè)附加,使用生成網(wǎng)絡(luò)完成對(duì)圖像幀和語(yǔ)音的同時(shí)生成,使用聲音和圖像進(jìn)行相互促進(jìn),提升生成圖像的精度。
參考文獻(xiàn):
[1]? ? 蒲倩. 人臉表情遷移與分析方法研究[D]. 西安:西安電子科技大學(xué),2014.
[2]? ? 萬(wàn)賢美,金小剛. 真實(shí)感3D人臉表情合成技術(shù)研究進(jìn)展[J]. 計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2014,26(2):167-178.
[3]? ? SONG L X,LU Z H,HE R,et al. Geometry guided adversarial facial expression synthesis[C]//2018 ACM Multimedia Conference on Multimedia Conference - MM '18. New York:ACM Press,2018:627-635.
[4]? ? BEELER T,BRADLEY D,ZIMMER H,et al. Improved reconstruction of deforming surfaces by cancelling ambient occlusion[J]. European Conference on Computer Vision,2012,2012:30-43. .
[5]? ? BRADLEY D,HEIDRICH W,POPA T,et al. High resolution passive facial performance capture[J]. ACM Transactions on Graphics,2010,29(4):1-10.
[6]? ? EKMAN P,F(xiàn)RIESEN W V,O'SULLIVAN M,et al. Universals and cultural differences in the judgments of facial expressions of emotion[J]. Journal of Personality and Social Psychology,1987,53(4):712-717.
[7]? ? EISERT P. MPEG-4 facial animation in video analysis and synthesis[J]. International Journal of Imaging Systems and Technology,2003,13(5):245-256.
[8]? ? BICKEL B,BOTSCH M,ANGST R,et al. Multi-scale capture of facial geometry and motion[J]. ACM Transactions on Graphics,2007,26(3):33.
[9]? ? CAO C,WENG Y L,LIN S,et al. 3D shape regression for real-time facial animation[J]. ACM Transactions on Graphics,2013,32(4):1.
[10]? BLANZ V,VETTER T. A morphable model for the synthesis of 3D faces[C]//Proceedings of the 26th Annual Conference on Computer Graphics and Interactive Techniques-SIGGRAPH '99. New York:ACM Press,1999:187-194.
[11]? CAO C,WU H Z,WENG Y L,et al. Real-time facial animation with image-based dynamic avatars[J]. ACM Transactions on Graphics,2016,35(4):1-12.
[12]? WENG Y L,CAO C,HOU Q M,et al. Real-time facial animation on mobile devices[J]. Graphical Models,2014,76(3):172-179.
[13]? GOODFELLOW I J,POUGET-ABADIE J,MIRZA M,et al. Generative adversarial nets[C]//Advances in Neural Information Processing Systems,2014:2672-2680.
[14]? LU Y,TAI Y W,TANG C K. Conditional cyclegan for attribute guided face image generation[EB/OL]. 2017:arXiv preprint arXiv:1705. 09966 [cs. CV]. https://arxiv. org/abs/1705. 09966.
[15]? DING H,SRICHARAN K,CHELLAPPA R. ExprGAN:facial expression editing with controllable expression intensity[EB/OL]. 2017:arXiv:1709. 03842[cs. CV]. https://arxiv. org/abs/1709. 03842.
[16]? LIU Z L,SONG G X,CAI J F,et al. Conditional adversarial synthesis of 3D facial action units[J]. Neurocomputing,2019,355:200-208.
[17]? WU W,ZHANG Y X,LI C,et al. ReenactGAN:learning to reenact faces via boundary transfer[J]. Computer Vision-ECCV 2018,2018:622-638.
[18]? QIAO F C,YAO N M,JIAO Z R,et al. Geometry-contrastive GAN for facial expression transfer[EB/OL]. 2018:arXiv:1802. 01822[cs. CV]. https://arxiv. org/abs/1802. 01822.
[19]? PANDZIC I S,F(xiàn)ORCHHEIMER R. MPEG-4 facial animation:the standard,implementation and applications[M].? John Wiley & Sons,2003.
[20]? KING D E. Dlib-ml:A Machine Learning Toolkit[J]. Journal of Machine Learning Research,2009,10:1755-1758.
[21]? RONNEBERGER O,F(xiàn)ISCHER P,BROX T. U-net:convolutional networks for biomedical image segmentation[J]. Medical Image Computing and Computer-Assisted Intervention-MICCAI 2015,2015:234-241.
[22]? MA L,JIA X,SUN Q,et al. Pose guided person image generation[C]//Advances in Neural Information Processing Systems,2017:406-416.
[23]? ZHOU S C,XIAO T H,YANG Y,et al. Genegan:learning object transfiguration and object subspace from unpaired data[C]// Procedings of the British Machine Vision Conference 2017. London,UK:British Machine Vision Association,2017.
[24]? ARJOVSKY M,CHINTALA S,BOTTOU L. Wasserstein gan[J/OL]. 2017:arXiv preprint arXiv:. 07875[cs. CV]. https://arxiv. org/pdf/1701. 07875. pdf.