Write-a-speaker: Text-based Emotional and Rhythmic Talking-head Generation(译文)
Write-a-speaker: Text-based Emotional and Rhythmic Talking-head Generation
寫一個(gè)演講者:基于文本的情緒化和有節(jié)奏的談話頭生成
鏈接
Arxiv:https://arxiv.org/abs/2104.07995
Video:https://www.youtube.com/watch?v=weHA6LHv-Ew
摘要
在本文中,我們提出了一種新的基于文本的說(shuō)話人頭部視頻生成框架,該框架綜合了高保真的面部表情和頭部運(yùn)動(dòng),并與文本情感、語(yǔ)音節(jié)奏和停頓相一致。具體來(lái)說(shuō),我們的框架包括一個(gè)獨(dú)立于說(shuō)話人的階段和一個(gè)特定于說(shuō)話人的階段。在與說(shuō)話人無(wú)關(guān)的階段,我們?cè)O(shè)計(jì)了三個(gè)并行網(wǎng)絡(luò),分別從文本中生成嘴巴、上臉和頭部的動(dòng)畫參數(shù)。在特定說(shuō)話人階段,我們提出了一個(gè)3D人臉模型引導(dǎo)的注意網(wǎng)絡(luò)來(lái)合成針對(duì)不同個(gè)體的視頻。它將動(dòng)畫參數(shù)作為輸入,并利用注意遮罩操縱輸入個(gè)體的面部表情變化。此外,為了更好地在視覺(jué)運(yùn)動(dòng)(即面部表情變化和頭部移動(dòng))和音頻之間建立真實(shí)的對(duì)應(yīng)關(guān)系,我們利用高精度的運(yùn)動(dòng)帽數(shù)據(jù)集,而不是依賴特定個(gè)體的長(zhǎng)視頻。在獲得視覺(jué)和音頻通信后,我們可以以端到端的方式有效地訓(xùn)練我們的網(wǎng)絡(luò)。對(duì)定性和定量結(jié)果的大量實(shí)驗(yàn)表明,我們的算法實(shí)現(xiàn)了高質(zhì)量的照片真實(shí)感對(duì)話頭部視頻,包括根據(jù)語(yǔ)音節(jié)奏進(jìn)行的各種面部表情和頭部運(yùn)動(dòng),并超過(guò)了最先進(jìn)的水平。
1. 介紹
Talking head合成技術(shù)旨在從輸入語(yǔ)音中生成具有真實(shí)面部動(dòng)畫的特定說(shuō)話人的對(duì)話視頻。輸出的說(shuō)話人頭部視頻已被應(yīng)用于許多應(yīng)用,如智能輔助、人機(jī)交互、虛擬現(xiàn)實(shí)和計(jì)算機(jī)游戲。由于其廣泛的應(yīng)用,說(shuō)話人頭部合成引起了廣泛的關(guān)注。
以前的許多以音頻為輸入的作品主要關(guān)注面部下部(如嘴巴)的同步,但往往忽略頭部和面部上部(如眼睛和眉毛)的動(dòng)畫。然而,整體面部表情和頭部運(yùn)動(dòng)也被視為傳遞交流信息的關(guān)鍵因素(Ekman 1997)。例如,人類無(wú)意識(shí)地使用面部表情和頭部動(dòng)作來(lái)表達(dá)自己的情緒。因此,生成完整的面部表情和頭部動(dòng)作將導(dǎo)致更具說(shuō)服力的人物談話視頻。
此外,由于不同個(gè)體之間的音色差異可能導(dǎo)致測(cè)試話語(yǔ)中的聲學(xué)特征超出訓(xùn)練聲學(xué)特征的分布范圍,因此建立在音頻和視覺(jué)模式之間直接關(guān)聯(lián)基礎(chǔ)上的現(xiàn)有技術(shù)也可能無(wú)法推廣到新說(shuō)話者的音頻(Chou等人,2018)。因此,基于聲學(xué)特征的框架不能很好地處理來(lái)自不同音色的人的現(xiàn)場(chǎng)演講或合成演講(Sadoughi和Busso,2016)。
與以前的作品不同,我們采用時(shí)間對(duì)齊的文本(即,帶有對(duì)齊音素時(shí)間戳的文本)作為輸入特征,而不是聲學(xué)特征,以緩解音色差距問(wèn)題。一般來(lái)說(shuō),時(shí)間對(duì)齊的文本可以通過(guò)語(yǔ)音識(shí)別工具從音頻中提取,或者通過(guò)文本到語(yǔ)音工具生成。由于口語(yǔ)腳本對(duì)不同的人是不變的,因此我們基于文本的框架能夠針對(duì)不同的說(shuō)話人實(shí)現(xiàn)健壯的性能。
本文提出了一種新的基于語(yǔ)音腳本生成整體面部表情和相應(yīng)頭部動(dòng)畫的框架。我們的框架由兩個(gè)階段組成,即說(shuō)話人無(wú)關(guān)階段和說(shuō)話人特定階段。在與說(shuō)話人無(wú)關(guān)的階段,我們的網(wǎng)絡(luò)作品旨在捕捉文本和視覺(jué)外觀之間的一般關(guān)系。與以前的方法(Suwajanakorn、Seitz和Kemelmacher-Shlizerman 2017;Taylor等人2017;Fried等人2019)不同,我們的方法僅合成和混合口腔區(qū)域像素,我們的方法旨在產(chǎn)生整體面部表情變化和頭部運(yùn)動(dòng)。因此,我們?cè)O(shè)計(jì)了三個(gè)網(wǎng)絡(luò),分別將輸入文本映射為嘴巴、上臉和頭部姿勢(shì)的動(dòng)畫參數(shù)。此外,我們使用一個(gè)運(yùn)動(dòng)帽系統(tǒng)來(lái)構(gòu)建高質(zhì)量面部表情以及頭部運(yùn)動(dòng)和音頻之間的對(duì)應(yīng)關(guān)系,作為我們的訓(xùn)練數(shù)據(jù)。因此,我們收集的數(shù)據(jù)可以用于有效地訓(xùn)練我們的非特定人網(wǎng)絡(luò),而不需要特定人的長(zhǎng)時(shí)間談話視頻。
由于與說(shuō)話人無(wú)關(guān)的網(wǎng)絡(luò)輸出的動(dòng)畫參數(shù)是通用的,因此我們需要根據(jù)特定的輸入說(shuō)話人定制動(dòng)畫參數(shù),以獲得令人信服的生成視頻。在特定說(shuō)話人階段,我們將動(dòng)畫參數(shù)作為輸入,然后利用它們來(lái)裝配給定說(shuō)話人的面部標(biāo)志。此外,我們還開發(fā)了一個(gè)自適應(yīng)注意網(wǎng)絡(luò),使被操縱的地標(biāo)適應(yīng)特定人的說(shuō)話特征。在這樣做的過(guò)程中,我們只需要新發(fā)言人的參考視頻(約5分鐘),而不是以前方法通常要求的超過(guò)一小時(shí)的特定發(fā)言人視頻(Suwajanakorn、Seitz和Kemelmacher Shlizerman 2017;Fried等人,2019)。
總的來(lái)說(shuō),我們的方法從目標(biāo)表演者的簡(jiǎn)短參考視頻中生成照片逼真的說(shuō)話頭部視頻。生成的視頻還提供了前體的豐富細(xì)節(jié),如逼真的衣服、頭發(fā)和面部表情。
2. 相關(guān)工作
2.1 人臉動(dòng)畫合成
面部動(dòng)畫合成預(yù)先定義3D面部模型并生成動(dòng)畫參數(shù)以控制面部變化。LSTM(Hochreiter和Schmidhuber,1997)廣泛用于序列建模的人臉動(dòng)畫合成。一些作品采用BiLSTM(Pham、Cheung和Pavlovic 2017)、CNN-LSTM(Pham、Wang和Pavlovic 2017)或精心設(shè)計(jì)的LSTM(Zhou等人,2018)和回歸損失、GAN損失(Sadougi和Busso 2019)或多任務(wù)訓(xùn)練策略(Sadougi和Busso 2017)來(lái)合成完整的面部/口腔動(dòng)畫。然而,由于順序計(jì)算,LSTM的工作速度往往較慢。CNN被證明具有處理順序數(shù)據(jù)的類似能力(Bai、Kolter和Koltun,2018年)。一些作品利用CNN從聲學(xué)特征(Karras et al.2017;Cudeiro et al.2019)或時(shí)間對(duì)齊音素(Taylor et al.2017)中模仿嘴巴或臉部。頭部動(dòng)畫合成側(cè)重于從輸入語(yǔ)音合成頭部姿勢(shì)。一些作品使用BiLSTM(丁、朱和謝,2015;Green-wood、Matthews和Laycock,2018)或trans-former編碼器(Vaswani等人,2017)直接回歸頭部姿勢(shì)。更準(zhǔn)確地說(shuō),由言語(yǔ)產(chǎn)生的頭部姿勢(shì)是一對(duì)多映射,Sadoughi和Busso(2018)采用了GAN(Goodfelle等人,2014;Mirza and Osindero 2014; Yu et al. 2019b,a) 保持多樣性。
2.2 人臉視頻生成
音頻驅(qū)動(dòng)。音頻驅(qū)動(dòng)的人臉視頻合成直接從輸入音頻生成2D對(duì)話視頻。之前的作品(Vougioukas、Petridis和Pantic 2019;Chen等人2018;Zhou等人2019;Wiles、Sophia和Zisserman 2018;Pra-jwal等人2020)利用兩個(gè)子模塊計(jì)算目標(biāo)揚(yáng)聲器的人臉嵌入特征和音頻嵌入特征,然后將其作為輸入融合到一個(gè)會(huì)說(shuō)話的人臉生成器。另一組作品將幾何體生成和外觀生成分離為兩個(gè)階段。視覺(jué)測(cè)量生成階段推斷出合適的面部標(biāo)志,并將其作為外觀生成階段的輸入。使用特定說(shuō)話人模型(Suwa-janakorn、Seitz和Kemelmacher-Shlizerman 2017;Das等人2020;Zhou等人2020)或線性主成分(Chen等人2019、2020)推斷地標(biāo)。Thies等人(2020年)生成3D可變形模型(3DMM)的表達(dá)式系數(shù),然后使用神經(jīng)渲染器生成照片真實(shí)感圖像。Fried等人(2019年)通過(guò)搜索和混合參考視頻的現(xiàn)有表達(dá)式來(lái)推斷表達(dá)式參數(shù),然后使用遞歸神經(jīng)網(wǎng)絡(luò)生成修改后的視頻。雖然他們的方法也以文本作為輸入,但由于viseme搜索,生成新句子的效率很低(10min-2h)。此外,兩部作品都未能控制上臉和頭部姿勢(shì),以匹配語(yǔ)音節(jié)奏和情感。
視頻驅(qū)動(dòng)。視頻驅(qū)動(dòng)的方法將一個(gè)人的表情傳遞給另一個(gè)人。一些作品(Ha等人,2020年;Zeng等人,2020年;Song等人,2019年;Siarohin等人,2019年)將單個(gè)圖像作為身份輸入。其他作品采用視頻(Thies等人,2015年、2018年)作為身份輸入,以提高視覺(jué)質(zhì)量。Thies等人(2016年)重建并渲染網(wǎng)格模型并填充內(nèi)嘴作為輸出,重建的面部紋理在說(shuō)話時(shí)保持不變。一些作品使用GAN直接生成2D圖像,而不是3D渲染(Nirkin、Keller和Hassner 2019;Zakharov等人2019;Wu等人2018;Thies、Zollh?ofer和Nie?ner 2019)。Kim等人(2019年)基于對(duì)兩位說(shuō)話者未配對(duì)數(shù)據(jù)的順序?qū)W習(xí),保留口腔運(yùn)動(dòng)風(fēng)格。或者,我們的工作生成成對(duì)的口腔表達(dá)數(shù)據(jù),使風(fēng)格學(xué)習(xí)更容易。Kim等人(2018年)還使用3DMM渲染幾何體信息。我們的方法不是轉(zhuǎn)移現(xiàn)有表達(dá)式,而是從文本生成新表達(dá)式。此外,我們的方法保留了說(shuō)話人的嘴運(yùn)動(dòng)風(fēng)格,并設(shè)計(jì)了一個(gè)自適應(yīng)注意網(wǎng)絡(luò),以獲得更高的圖像分辨率和更好的視覺(jué)質(zhì)量
3. 基于文本的說(shuō)話人生成
圖2:我們方法的管道。與說(shuō)話人無(wú)關(guān)的階段將時(shí)間對(duì)齊的文本作為輸入,并生成頭部姿勢(shì)、上臉和嘴形狀動(dòng)畫參數(shù)。然后,特定于說(shuō)話人的舞臺(tái)根據(jù)動(dòng)畫參數(shù)生成合成的說(shuō)話人頭部視頻。
圖3:Mocap數(shù)據(jù)集的集合。錄音是由一位戴著頭盔的職業(yè)女演員進(jìn)行的。頭盔上的標(biāo)記提供頭部姿勢(shì)的信息。頭盔上的紅外攝像機(jī)記錄精確的面部表情。
我們的框架將時(shí)間對(duì)齊的文本作為輸入,并輸出照片逼真的對(duì)話頭視頻。它可以推廣到一個(gè)特定的演講者,他/她有大約5分鐘的談話視頻(參考視頻)。圖2展示了我們框架的管道。Gmou?,Gupp?G^{\text {mou }},G^{\text {upp }}Gmou?,Gupp? 和 Ghed?G^{\text {hed }}Ghed? 以時(shí)間對(duì)齊的文本作為輸入,分別生成與說(shuō)話人無(wú)關(guān)的口腔動(dòng)畫參數(shù),正臉及頭部姿態(tài)。他們沒(méi)有從參考視頻中學(xué)習(xí),而是利用Mocap數(shù)據(jù)集獲得更高的準(zhǔn)確性。由于幾何推斷中的一個(gè)小錯(cuò)誤可能會(huì)導(dǎo)致外觀推斷中的明顯偽影,我們引入了一個(gè)3D人臉模塊 GldmkG^{ldmk}Gldmk 來(lái)合并頭部和面部表情參數(shù),并將其轉(zhuǎn)換為特定于說(shuō)話人的面部關(guān)鍵點(diǎn)序列。最后,GvidG^{vid}Gvid 通過(guò)渲染頭發(fā)、面部、上身和背景的紋理,根據(jù)人臉關(guān)鍵點(diǎn)序列合成特定于說(shuō)話人的說(shuō)話人頭部視頻。
3.1 Mocap數(shù)據(jù)集
為了獲得高保真的完整面部表情和頭部姿勢(shì),我們根據(jù)圖3所示的運(yùn)動(dòng)捕捉(Mocap)系統(tǒng)1記錄一個(gè)視聽數(shù)據(jù)集。收集的數(shù)據(jù)包含mouth參數(shù)序列 mmou?={mtmou?}t=1Tm^{\text {mou }}=\left\{m_{t}^{\text {mou }}\right\}_{t=1}^{T}mmou?={mtmou??}t=1T? ,其中 mtmou?∈R28m_{t}^{\text {mou }} \in \mathbb{R}^{28}mtmou??∈R28 ,上表面參數(shù)序列 mupp={mtupp}t=1Tm^{u p p}=\left\{m_{t}^{u p p}\right\}_{t=1}^{T}mupp={mtupp?}t=1T? ,其中 mtupp∈R23m_{t}^{u p p} \in \mathbb{R}^{23}mtupp?∈R23 和頭部姿勢(shì)參數(shù)序列 mhed?={mthed?}t=1Tm^{\text {hed }}=\left\{m_{t}^{\text {hed }}\right\}_{t=1}^{T}mhed?={mthed??}t=1T? ,其中 mthed?∈R6m_{t}^{\text {hed }} \in \mathbb{R}^{6}mthed??∈R6。TTT 是一段話語(yǔ)中的幀長(zhǎng)度。 mmou?m^{\text {mou }}mmou? 和 mupp?m^{\text {upp }}mupp? 根據(jù)面移定義定義為混合形狀權(quán)重。每個(gè)混合形狀代表面部運(yùn)動(dòng)的某一部分,例如眼睛睜開,嘴巴向左。我們用英語(yǔ)記錄了一位職業(yè)女演員的865次情感話語(yǔ)(203驚訝,273憤怒,255中立和134高興),每次持續(xù)時(shí)間為3到6秒。時(shí)間對(duì)齊分析器用于計(jì)算音頻中每個(gè)音素和每個(gè)單詞的持續(xù)時(shí)間。根據(jù)對(duì)齊結(jié)果,我們將單詞序列和音素序列分別表示為 w={wt}t=1Tw=\left\{w_{t}\right\}_{t=1}^{T}w={wt?}t=1T? 和 ph={pht}t=1Tp h=\left\{p h_{t}\right\}_{t=1}^{T}ph={pht?}t=1T? ,其中 wtw_{t}wt? 和 phtp h_{t}pht? 是在第T幀發(fā)出的單詞和音素。通過(guò)這種方式,我們構(gòu)建了一個(gè)高保真的Mocap數(shù)據(jù)集, 包括mmou,mupp,mhed,wm^{m o u}, m^{u p p}, m^{h e d}, wmmou,mupp,mhed,w 和 php hph,然后用于訓(xùn)練與說(shuō)話人無(wú)關(guān)的生成器。另一個(gè)中文數(shù)據(jù)集(925個(gè)3到6秒的話語(yǔ))也同樣建立起來(lái)。這兩個(gè)數(shù)據(jù)集都是為研究目的發(fā)布的。
3.2 嘴動(dòng)畫生成器
圖4:嘴巴動(dòng)畫生成器
由于口腔動(dòng)畫主要用于發(fā)聲音素而不是語(yǔ)義結(jié)構(gòu),GmouG^{mou}Gmou 學(xué)習(xí)從 phphph 到 mmoum^{mou}mmou 的映射,忽略 www ,如圖4所示。第一步是將 phphph 從音素空間轉(zhuǎn)換成更靈活的空間中的嵌入向量 EphE^{ph}Eph。我們構(gòu)建了一個(gè)可訓(xùn)練的查找表(Tang等人,2014年) VphV^{ph}Vph 以滿足目標(biāo),該表是在訓(xùn)練階段隨機(jī)初始化和更新的。然后,疊加的Res1D層接收 EphE^{ph}Eph 作為輸入,并根據(jù)共同發(fā)音效應(yīng)輸出合成嘴參數(shù)序列 m^mou{\hat{m}^{mou}}m^mou。為了便于并行計(jì)算,我們?cè)O(shè)計(jì)了基于CNN而非LSTM的結(jié)構(gòu)。
我們將L1損失和LSGAN損失(Mao等人,2017年)用于訓(xùn)練 GmouG^{mou}Gmou。L1損失寫為:
L1mou?=1T∑i=1T(∥mimou??m^imou?∥1)L_{1}^{\text {mou }}=\frac{1}{T} \sum_{i=1}^{T}\left(\left\|m_{i}^{\text {mou }}-\hat{m}_{i}^{\text {mou }}\right\|_{1}\right) L1mou??=T1?i=1∑T?(∥mimou???m^imou??∥1?)
這里 mimoum_{i}^{m o u}mimou? 和 m^imou\hat{m}_{i}^{m o u}m^imou?分別是第 iii 幀的實(shí)向量和生成向量。對(duì)抗性損失表示為:
Ladvmou=arg?min?Gmoumax?Dmou?LGAN(Gmou?,Dmou?)L_{a d v}^{m o u}=\arg \min _{G^{m o u}} \max _{D^{\text {mou }}} L_{G A N}\left(G^{\text {mou }}, D^{\text {mou }}\right) Ladvmou?=argGmoumin?Dmou?max?LGAN?(Gmou?,Dmou?)
靈感來(lái)自于面片鑒別器的想法 (Isola et al. 2017), Dmou?D^{\text {mou }}Dmou? 應(yīng)用于混合形狀的時(shí)間主干,它也由堆疊的 Res1D 層組成。目標(biāo)函數(shù)寫為:
L(Gmou)=Ladvmou+λmouL1mouL\left(G^{m o u}\right)=L_{a d v}^{m o u}+\lambda_{m o u} L_{1}^{m o u} L(Gmou)=Ladvmou?+λmou?L1mou?
3.3 上臉/頭部姿勢(shì)生成器
圖 5:上面部表情生成器。
雖然嘴巴運(yùn)動(dòng)有助于語(yǔ)音協(xié)同發(fā)音,但上面部表情和頭部運(yùn)動(dòng)往往會(huì)傳達(dá)情緒、意圖和語(yǔ)音節(jié)奏。因此,GuppG^{upp}Gupp 和 GhedG^{hed}Ghed 旨在從 www 而不是 phphph 捕獲更長(zhǎng)時(shí)間的依賴關(guān)系。它們共享相同的網(wǎng)絡(luò)并且與 GmouG^{mou}Gmou 的網(wǎng)絡(luò)不同,如圖 5 所示。與 VphV^{ph}Vph 類似,一個(gè)可訓(xùn)練的查找表 VtxtV^{txt}Vtxt 將 www 映射到嵌入向量 EtxtE^{txt}Etxt。為了生成具有一致情感的 muppm^{upp}mupp,情感標(biāo)簽(驚喜、憤怒、中性、幸福)要么由文本情感分類器檢測(cè)(Yang 等人,2019 年),要么明確分配給特定的情感類型。另一個(gè)可訓(xùn)練的查找表 VemoV^{emo}Vemo 將情感標(biāo)簽投影到嵌入向量 EemoE^{emo}Eemo。 EtxtE^{txt}Etxt 和 EemoE^{emo}Eemo 被饋送到編碼器-解碼器網(wǎng)絡(luò)以合成 muppm^{upp}mupp 。受益于大的感受野,編碼器-解碼器結(jié)構(gòu)捕獲了單詞之間的長(zhǎng)期依賴關(guān)系。
由于從文本合成 muppm^{upp}mupp 是一對(duì)多映射,L1 損失被 SSIM 損失取代(Wang 等人,2004 年)。 SSIM 模擬人類視覺(jué)感知,具有提取結(jié)構(gòu)信息的優(yōu)點(diǎn)。我們擴(kuò)展 SSIM 以分別對(duì)每個(gè)參數(shù)執(zhí)行,即 SSIM-Seq 損失,公式為
LSupp=1?123∑i=123(2μiμ^i+δ1)(2cov?i+δ2))(μi2+μ^i2+δ1)(σi2+σ^i2+δ2))L_{S}^{u p p}=1-\frac{1}{23} \sum_{i=1}^{23} \frac{\left.\left(2 \mu_{i} \hat{\mu}_{i}+\delta_{1}\right)\left(2 \operatorname{cov}_{i}+\delta_{2}\right)\right)}{\left.\left(\mu_{i}^{2}+\hat{\mu}_{i}^{2}+\delta_{1}\right)\left(\sigma_{i}^{2}+\hat{\sigma}_{i}^{2}+\delta_{2}\right)\right)} LSupp?=1?231?i=1∑23?(μi2?+μ^?i2?+δ1?)(σi2?+σ^i2?+δ2?))(2μi?μ^?i?+δ1?)(2covi?+δ2?))?
μi/μ^i\mu_{i} / \hat{\mu}_{i}μi?/μ^?i?和 σi/σ^i\sigma_{i} / \hat{\sigma}_{i}σi?/σ^i? 表示實(shí)數(shù)/合成 mupp 第 iii 維的均值和標(biāo)準(zhǔn)差,cov?i\operatorname{cov}_{i}covi? 是協(xié)方差。δ1\delta_{1}δ1? 和 δ2\delta_{2}δ2? 是兩個(gè)小常數(shù)。 GAN 損失表示為:
Ladv?upp?=arg?min?Guppmax?DuppLGAN(Gupp?,Dupp?)L_{\text {adv }}^{\text {upp }}=\arg \min _{G^{u p p}} \max _{D^{u p p}} L_{G A N}\left(G^{\text {upp }}, D^{\text {upp }}\right) Ladv?upp??=argGuppmin?Duppmax?LGAN?(Gupp?,Dupp?)
其中 DuppD^{u p p}Dupp 與 Dmou?D^{\text {mou }}Dmou? 共享相同的結(jié)構(gòu)。目標(biāo)函數(shù)寫為:
L(Gupp)=Ladvupp+λuppLSuppL\left(G^{u p p}\right)=L_{a d v}^{u p p}+\lambda_{u p p} L_{S}^{u p p} L(Gupp)=Ladvupp?+λupp?LSupp?
Ghed?G^{\text {hed }}Ghed? 共享相同的網(wǎng)絡(luò)和損失,但忽略了 Vemo?V^{\text {emo }}Vemo? 來(lái)生成 mhed?m^{\text {hed }}mhed?,因?yàn)椴煌榫w下頭部姿勢(shì)的變化不如面部表情的變化顯著。
3.4 風(fēng)格保留人臉關(guān)鍵點(diǎn)生成器
GldmkG^{ldmk}Gldmk 從參考視頻重建 3D 人臉,然后驅(qū)動(dòng)它獲得說(shuō)話人特定的地標(biāo)圖像。多線性 3DMM U(s,e)U(s,e)U(s,e) 由形狀參數(shù) s∈R60s \in \mathbb{R}^{60}s∈R60 和表達(dá)式參數(shù) e∈R51e \in \mathbb{R}^{51}e∈R51 構(gòu)成。線性形狀基礎(chǔ)取自 LSFM (Booth et al. 2018) 并按奇異值縮放。我們根據(jù)Mocap數(shù)據(jù)集的定義在LSFM上雕刻51個(gè)面部混合形狀作為表達(dá)基礎(chǔ),使 eee 與 (mtupp,mtmou)\left(m_{t}^{u p p}, m_{t}^{m o u}\right)(mtupp?,mtmou?) 一致。采用3DMM擬合方法來(lái)估計(jì)參考視頻的 sss 。之后,我們使用生成的 m^hed?,m^mou?\hat{m}^{\text {hed }}, \hat{m}^{\text {mou }}m^hed?,m^mou? 和 m^upp\hat{m}^{u p p}m^upp 驅(qū)動(dòng)特定于說(shuō)話者的 3D 人臉以獲得關(guān)鍵點(diǎn)圖像序列。我們之前的實(shí)驗(yàn)表明,從地標(biāo)圖像生成的視頻和渲染的密集網(wǎng)格在視覺(jué)上是無(wú)關(guān)緊要的,因此我們選擇關(guān)鍵點(diǎn)圖像來(lái)減少渲染器。
此外,說(shuō)話者可能會(huì)使用不同的嘴形來(lái)發(fā)音相同的單詞,例如有些人傾向于張大嘴巴,而人們對(duì)不匹配的風(fēng)格很敏感。同時(shí),通用 m^upp\hat{m}^{u p p}m^upp 和m^hed\hat{m}^{h e d}m^hed 在實(shí)踐中在不同的人之間工作得很好。因此,我們重新定位 m^mou\hat{m}^{m o u}m^mou 以保留說(shuō)話者的風(fēng)格,同時(shí)保持 m^upp\hat{m}^{u p p}m^upp 和 m^hed\hat{m}^{h e d}m^hed 不變。一方面,我們從參考視頻中提取時(shí)間對(duì)齊的文本并使用 Gmou?G^{\text {mou }}Gmou? 生成 m^mou?\hat{m}^{\text {mou }}m^mou? 。另一方面,我們使用 3DMM 從參考視頻中估計(jì)個(gè)性化的 m?mou?\breve{m}^{\text {mou }}m?mou? 。通過(guò)這種方式,我們獲得了發(fā)音相同音素的成對(duì)嘴形。使用配對(duì)數(shù)據(jù),可以輕松學(xué)習(xí)從 m^mou\hat{m}^{m o u}m^mou 到 m?mou\breve{m}^{m o u}m?mou 的樣式保留映射。具有 MSE 損失的兩層全連接網(wǎng)絡(luò)在我們的實(shí)驗(yàn)中運(yùn)行良好。我們使用映射的 m?mou?\breve{m}^{\text {mou }}m?mou? 來(lái)生成地標(biāo)圖像。
3.5 逼真的視頻生成器
圖 6:逼真的視頻生成器。
圖 7:我們的照片級(jí)逼真視頻生成器的示例輸出。它表明自適應(yīng)注意力掩碼能夠?qū)⒆彀秃脱劬^(qū)域與其他區(qū)域區(qū)分開來(lái)。
GvidG^{vid}Gvid 從地標(biāo)圖像中逐幀生成說(shuō)話頭視頻 {I^t}t=1T\left\{\hat{I}_{t}\right\}_{t=1}^{T}{I^t?}t=1T? 。 I^t\hat{I}_{t}I^t? 它描繪了說(shuō)話者的完整面部表情、頭發(fā)、頭部和上身姿勢(shì),以及第 ttt 幀的背景。考慮到高時(shí)間相干性,我們通過(guò)在長(zhǎng)度為 15 的時(shí)間滑動(dòng)窗口中堆疊地標(biāo)圖像來(lái)構(gòu)建條件時(shí)空體積 VVV 作為 GvidG^{vid}Gvid 的輸入。
盡管典型的圖像合成網(wǎng)絡(luò)(Isola et al. 2017; Wang et al. 2018; Yu and Porikli 2016, 2017a,b)能夠產(chǎn)生合理的頭部圖像,但它們的輸出往往在高頻運(yùn)動(dòng)區(qū)域模糊,尤其是眼睛和嘴巴區(qū)域。可能的解釋是眼睛和嘴巴的運(yùn)動(dòng)與地標(biāo)高度相關(guān),而軀干姿勢(shì)和背景較少,因此將所有部分視為一個(gè)整體并不是最好的解決方案。受觀察的啟發(fā),我們?cè)O(shè)計(jì)了一個(gè)自適應(yīng)注意力結(jié)構(gòu)。如圖 6 所示,GvidG^{vid}Gvid 由特征提取網(wǎng)絡(luò) NfeatN^{feat}Nfeat 和自注意力渲染網(wǎng)絡(luò) NrendN^{rend}Nrend 組成。為了從高分辨率地標(biāo)圖像中提取特征, NfeatN^{feat}Nfeat 由兩個(gè)不同輸入尺度的路徑組成。兩條路徑的提取特征按元素相加。 NrendN^{rend}Nrend 根據(jù)潛在特征渲染會(huì)說(shuō)話的頭部圖像。為了模擬身體部位的不同相關(guān)性,我們?cè)O(shè)計(jì)了三個(gè)并行子網(wǎng)絡(luò)的組合。 Nface?rend?N_{\text {face }}^{\text {rend }}Nface?rend?? 生成目標(biāo)人臉 I^face?\hat{I}^{\text {face }}I^face? 。 NclrrendN_{c l r}^{r e n d}Nclrrend? 預(yù)計(jì)會(huì)計(jì)算全局顏色圖 I^color?\hat{I}^{\text {color }}I^color? ,包括頭發(fā)、上身、背景等。 Nmask?rend?N_{\operatorname{mask}}^{\text {rend }}Nmaskrend?? 產(chǎn)生專注于高頻運(yùn)動(dòng)區(qū)域的自適應(yīng)注意力融合掩碼 M。最終生成的圖像 由以下給出:
I^t=M?I^face?+(1?M)?I^color?\hat{I}_{t}=M * \hat{I}^{\text {face }}+(1-M) * \hat{I}^{\text {color }} I^t?=M?I^face?+(1?M)?I^color?
圖7詳細(xì)展示了我們的注意力掩碼。
我們遵循 pix2pixHD (Wang et al. 2018) 的鑒別器,由 3 個(gè)多尺度鑒別器D1vid?,D2vid?D_{1}^{\text {vid }}, D_{2}^{\text {vid }}D1vid??,D2vid?? 和 D3vidD_{3}^{v i d}D3vid? 組成。它們的輸入是 I^t/It\hat{I}_{t} / I_{t}I^t?/It? 和 VVV ,其中 ItI_{t}It? 是真實(shí)的幀。對(duì)抗性損失定義為:
Ladvvid=min?Gvidmax?D1vid,D2vid,D3vid∑i=13LGAN(Gvid,Divid)L_{a d v}^{v i d}=\min _{G^{v i d}} \max _{D_{1}^{v i d}, D_{2}^{v i d}, D_{3}^{v i d}} \sum_{i=1}^{3} L_{G A N}\left(G^{v i d}, D_{i}^{v i d}\right) Ladvvid?=Gvidmin?D1vid?,D2vid?,D3vid?max?i=1∑3?LGAN?(Gvid,Divid?)
為了捕捉精細(xì)的面部細(xì)節(jié),我們采用了感知損失(Johnson、Alahi 和 Fei-Fei 2016),遵循 Yu 等人。 (2018):
Lperc?=∑i=1n1WiHiCi∥Fi(It)?Fi(I^t)∥1L_{\text {perc }}=\sum_{i=1}^{n} \frac{1}{W_{i} H_{i} C_{i}}\left\|F_{i}\left(I_{t}\right)-F_{i}\left(\hat{I}_{t}\right)\right\|_{1} Lperc??=i=1∑n?Wi?Hi?Ci?1?∥∥∥?Fi?(It?)?Fi?(I^t?)∥∥∥?1?
其中 Fi∈RWi×Hi×CiF_{i} \in \mathbb{R}^{W_{i} \times H_{i} \times C_{i}}Fi?∈RWi?×Hi?×Ci? 是 VGG-19 第 i 層的特征圖(Simonyan and Zisserman 2014)。匹配低層和高層特征引導(dǎo)生成網(wǎng)絡(luò)學(xué)習(xí)細(xì)粒度細(xì)節(jié)和全局部分排列。此外,我們使用 L1L_{1}L1? 損失來(lái)監(jiān)督生成的 I^face?\hat{I}_{\text {face }}I^face?? 和 I^t\hat{I}_{t}I^t?:
L1img=∥It?I^t∥1,L1face=∥Itface?I^tface∥1L_{1}^{i m g}=\left\|I_{t}-\hat{I}_{t}\right\|_{1}, L_{1}^{f a c e}=\left\|I_{t}^{f a c e}-\hat{I}_{t}^{f a c e}\right\|_{1} L1img?=∥∥∥?It??I^t?∥∥∥?1?,L1face?=∥∥∥?Itface??I^tface?∥∥∥?1?
根據(jù)檢測(cè)到的地標(biāo)(Baltrusaitis 等人,2018 年), Iface?I_{\text {face }}Iface?? 是從 ItI_{t}It? 中裁剪出來(lái)的。總損失定義為:
L(Gvid)=αLperc+βL1img+γL1face+LadvvidL\left(G^{v i d}\right)=\alpha L_{p e r c}+\beta L_{1}^{i m g}+\gamma L_{1}^{f a c e}+L_{a d v}^{v i d} L(Gvid)=αLperc?+βL1img?+γL1face?+Ladvvid?
4. 實(shí)驗(yàn)及結(jié)果
我們?cè)趩蝹€(gè) GTX 2080Ti 上使用 PyTorch 實(shí)現(xiàn)系統(tǒng)。在 Mocap 數(shù)據(jù)集上訓(xùn)練說(shuō)話人獨(dú)立階段需要 3 小時(shí)。在 5 分鐘的參考視頻中,針對(duì)演講者特定階段的培訓(xùn)需要一天時(shí)間。我們的方法以每秒 5 幀的速度生成 512 × 512 分辨率的視頻。更多的實(shí)現(xiàn)細(xì)節(jié)在補(bǔ)充材料中介紹。我們將所提出的方法與最先進(jìn)的音頻/視頻驅(qū)動(dòng)方法進(jìn)行比較,并評(píng)估子模塊的有效性。視頻比較顯示在補(bǔ)充視頻中。
5. 局限性
圖 15:來(lái)自極端參數(shù)的失敗案例,包括 (a) 上面部表情; (b) 嘴巴表情; ? 頭部旋轉(zhuǎn); (d) 頭部翻譯。
我們的工作有幾個(gè)局限性。所提出的方法利用了高質(zhì)量的 Mocap 數(shù)據(jù)集。我們的方法僅限于產(chǎn)生說(shuō)英語(yǔ)或中文的說(shuō)話者,因?yàn)槲覀冎徊东@了 Mocap 數(shù)據(jù)集與兩種語(yǔ)言。 Mocap 數(shù)據(jù)的數(shù)量也不足以捕獲更詳細(xì)的動(dòng)作對(duì)應(yīng)關(guān)系以及文本輸入的語(yǔ)義和句法結(jié)構(gòu)。在不久的將來(lái),我們將記錄更多語(yǔ)言的 Mocap 數(shù)據(jù)并發(fā)布用于研究目的。我們的渲染網(wǎng)絡(luò)無(wú)法處理動(dòng)態(tài)背景和復(fù)雜的上身運(yùn)動(dòng),例如聳肩、擺臂、駝背、極端頭部姿勢(shì)等。如果預(yù)期的表情或頭部運(yùn)動(dòng)超出參考視頻的范圍,則生成的視頻將退化。情緒對(duì)生成的嘴唇和頭部動(dòng)畫的影響被忽略。圖 15 顯示了一些失敗案例。未來(lái),我們將致力于解決上述問(wèn)題。
6. 結(jié)論
本文提出了一個(gè)基于文本的談話頭視頻生成框架。合成的視頻顯示了情感完整的面部表情、有節(jié)奏的頭部運(yùn)動(dòng)、上半身運(yùn)動(dòng)和背景。生成框架可以適應(yīng)新演講者的 5 分鐘參考視??頻。我們的方法通過(guò)一系列實(shí)驗(yàn)進(jìn)行評(píng)估,包括定性評(píng)估和定量評(píng)估。評(píng)估結(jié)果表明,我們的方法可以生成高質(zhì)量的照片逼真的頭部談話視頻,并且優(yōu)于最先進(jìn)的方法。據(jù)我們所知,我們的工作是第一個(gè)從時(shí)間對(duì)齊的文本表示中制作帶有情緒面部表情和有節(jié)奏的頭部運(yùn)動(dòng)的完整頭部談話視頻。
總結(jié)
以上是生活随笔為你收集整理的Write-a-speaker: Text-based Emotional and Rhythmic Talking-head Generation(译文)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 主机ip和子网掩码计算
- 下一篇: 应用ggplot2绘制病例分级统计地图