歡迎光臨
每天分享高質量文章

ECCV 2018最佳論文解讀:基於解剖結構的面部表情生成

在碎片化閱讀充斥眼球的時代,越來越少的人會去關註每篇論文背後的探索和思考。

在這個欄目裡,你會快速 get 每篇精選論文的亮點和痛點,時刻緊跟 AI 前沿成果。


點選本文底部的「閱讀原文」即刻加入社群,檢視更多最新論文推薦。

這是 PaperDaily 的第 103 篇文章

本期推薦的論文筆記來自 PaperWeekly 社群使用者 @TwistedW本文獲得 ECCV 2018 最佳論文榮譽提名。GANimation 將 Action Units 和 GAN 結合,實現了人面部表情變化的過程展示效果。Action Units 的大小控制著人面部表情的幅度,從而對單個影象可以實現表情生成的漸進過程,採用無監督訓練,並將 Attention 輔助矯正影象的背景和照明帶來的問題。

如果你對本文工作感興趣,點選底部閱讀原文即可檢視原論文。

關於作者:武廣,合肥工業大學碩士生,研究方向為影象生成。

■ 論文 | GANimation: Anatomically-aware Facial Animation from a Single Image

■ 連結 | www.paperweekly.site/papers/2171

■ 原始碼 | github.com/albertpumarola/GANimation


GAN 在面部生成上已經取得了很大的成果,StarGAN [1] 已經可以實現人臉面部的高畫質和多屬性的生成,但是這類生成是基於資料集的,往往在兩幅屬性不一的影象上做插值生成是實現不了的。當然,將 VAE 或 AE 和 GAN 結合可以實現較好的插值生成,但是如何合理的插值仍然是一個困難的過程。 


GANimation 介紹了一種基於動作單元(Action Units)為條件的新型 GAN 模型,可以根據 Action Units(簡稱 AC)的大小調節面部表情生成的幅度,從而實現面部表情不同幅度過程的生成。


論文引入


從單張人臉面部影象生成出表情變化的多幅影象將為不同領域帶來不一樣的靈感,比如可以根據單幅照片做不同人物表情變化的影象,這可以用在電影電視的創作中。想象一下讓特別嚴肅的人設做滑稽的表情變化是不是很有意思的一件事。


GAN 已經可以在人臉面部屬性上做很多變換的生成,StarGAN 是屬性生成上比較好的模型,可以同時生成多屬性的人臉影象。但是 StarGAN 受限於資料集,因為 StarGAN 的生成是在屬性標簽的基礎上完成的,所以 StarGAN 不能做插值的漸進生成。


雖然 VAE 和 GAN 的結合可以實現插值生成,但是合理的插值仍然是一個待解決和最佳化的過程。GANimation 將 Action Units(AU)和 GAN 結合,利用動作單元(AU)來描述面部表情,這些動作單元在解剖學上與特定面部肌肉的收縮相關。 


儘管動作單元的數量相對較少(發現 30 個 AU 在解剖學上與特定面部肌肉的收縮相關),但已觀察到超過 7,000 種不同的 AU 組合。例如,恐懼的面部表情通常透過啟用產生:Inner Brow Raiser(AU1),Outer Brow Raiser(AU2),Brow Lowerer(AU4),Upper Lid Raiser(AU5),Lid Tightener(AU7),Lip Stretcher( AU20)和 Jaw Drop(AU26)。 根據每個 AU 的大小,將在表情程度上傳遞情緒幅度。 


為了說明 AU 的作用,我們一起來看看透過調節特定 AU 的大小實現的面部表情漸變的效果:



由上圖我們可以看出來,在 AU 設定為微笑表情的動作時,隨著 AU 的大小逐漸增大途中人物微笑表情的力度也越來越大,對比度最強的是 AU=0 和 AU=1 的情況下,可以清楚的看到人物面部嘴角和笑臉的變化,當然中間隨著 AU 的增大,微笑也是越來越燦爛。


總結一下 GANimation 的貢獻:


  • 將動作單元(AU)引入到 GAN 中實現了人物面部表情漸變生成;


  • 將 Attention 引入到模型中用於剋服生成中背景和光照的影響;


  • 模型可應用於非資料集中人物面部表情的生成。


GANimation模型

我們一起來看看實現 GANimation 的模型結構:



先把圖中的變數交代一下,真實影象記為與它對應的生成的影象記為是動作資訊它是屬於 N 種動作單元,由於存在兩組生成器(另一組為了讓生成的影象還原為原始影象,做迴圈誤差最佳化網路),將生成器的輸入統一記為,動作單元記為,輸出記為

為 Attention 生成器,生成的是一維的影象包含了影象中 Attention 的位置。則是畫素影象生成器,用於生成包含影象畫素的三維影象。最後將的輸出和的輸出結合形成完整的影象輸出,其中的輸出是為了指示畫素影象的每個畫素在哪個範圍內對最終的輸出作用力度。對應的判別器也由兩部分組成,用於區分真實影象和生成影象,而則是用來區分影象的條件資訊也就是影象的 AU 資訊用來讓生成的影象的 AU 特性更加的好。


的結合方式由下圖所示:


最終生成器的輸出就是:



有了以上的分析,我們再來捋一遍模型框架。將真實影象輸入到生成器和動作單元結合生成具有動作單元資訊的影象,為了區分真實影象和生成影象將生成影象和真是影象送入判別器去判別,區分真假影象,區分 AU 資訊,不斷最佳化生成器和判別器達到共同進步。為了實現迴圈最佳化網路,做了一個重構的迴圈生成,將生成的影象進一步根據原始影象的 AU 還原回去生成。 


整個模型框架就是這樣,接下來就是損失函式的設計了。

GANimation損失函式

GANimation 採用的 GAN 模型是 WGAN-GP [2](利用 Earth Mover Distance 代替 GAN 中的 Jensen-Shannon divergence),其優點是訓練會更加的穩定。所以接下來的分析是在 WGAN-GP 的基礎上展開的。


GANimation 模型的損失函式細分的話有 4 個,分別為 Image Adversarial Loss,Attention Loss,Condition Expression Loss 和 Identity Loss。


Image Adversarial Loss 


這就是傳統的影象對抗損失,用於最佳化生成器和判別器,需要考慮 Earth Mover Distance 中的梯度懲罰:



這部分的損失函式沒必要細說,就是比較傳統概念上的 GAN 的損失。


Attention Loss 


這部分是 Attention 的損失函式,主要是 Attention 的知識,考慮影象的前後對應關係。由於 Attention 最佳化後得到的 A 很容易飽和到 1,對應上面的公式中的則沒了意義,所以為了防止這種情況,將 A 做 l2 損失。得到損失函式:



Condition Expression Loss 


這部分損失還是蠻重要的,它的作用是讓 AU 作用下生成的影象更具有 AU 的動作特性,整體的思路是最佳化生成器和判別器,透過對抗實現共進步。



Identity Loss 


最後一個損失就是迴圈損失了,也可以說為重構損失,這一塊也沒什麼說的:



最後將損失函式統一一下:


GANimation實驗


實驗先對單 AU 進行編輯,在不同強度下啟用 AU 的能力,同時保留人的身份。下圖顯示了用四個強度級別(0,0.33,0.66,1)單獨轉換的 9 個 AU 的子集。對於 0 強度的情況,不改變相應的 AU。


對於非零情況,可以觀察每個 AU 如何逐漸加強,註意強度為 0 和 1 的生成影象之間的差異。相對於眼睛和麵部的半上部(AU1,2,4,5,45)的 AU 不會影響口腔的肌肉。同樣地,口腔相關的變形(AU10,12,15,25)不會影響眼睛和眉毛肌肉。


對於相同的實驗,下圖顯示了產生最終結果的註意力 A 和顏色 C 掩模。註意模型是如何學會將其註意力(較暗區域)以無人監督的方式聚焦到相應的AU上的。



多 AU 編輯的實驗結果就是正文的第一張圖,非真實世界的資料上也顯示了出了較好的結果(阿凡達的那張)。


實驗還將 GANimation 與基線 DIAT,CycleGAN,IcGAN 和 StarGAN 進行比較。



最後,實驗展示了在非資料集上的實驗效果,圖片選自加勒比海盜影片。



當然,實驗也展示了不足的地方。


總結

GANimation 提出了一種新穎的 GAN 模型,用於臉部表情漸進生成,可以實現無監督訓練。模型透過 AU 引數化與解剖學面部變形是一致的,在這些 AU 上調整 GAN 模型允許生成器透過簡單插值來渲染各種表情幅度。此外,作者在網路中嵌入了一個註意模型,對背景和光照有一定的補充。


參考文獻


[1]. Choi, Y., Choi, M., Kim, M., Ha, J.W., Kim, S., Choo, J.: Stargan: Unified gen- erative adversarial networks for multi-domain image-to-image translation. CVPR (2018)

[2]. Gulrajani, I., Ahmed, F., Arjovsky, M., Dumoulin, V., Courville, A.C.: Improved training of wasserstein GANs. In: NIPS (2017)

本文由 AI 學術社群 PaperWeekly 精選推薦,社群目前已改寫自然語言處理、計算機視覺、人工智慧、機器學習、資料挖掘和資訊檢索等研究方向,點選「閱讀原文」即刻加入社群!


點選標題檢視更多論文解讀: 


#投 稿 通 道#

 讓你的論文被更多人看到 


如何才能讓更多的優質內容以更短路徑到達讀者群體,縮短讀者尋找優質內容的成本呢? 答案就是:你不認識的人。


總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。 


PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學習心得技術乾貨。我們的目的只有一個,讓知識真正流動起來。

來稿標準:

• 稿件確系個人原創作品,來稿需註明作者個人資訊(姓名+學校/工作單位+學歷/職位+研究方向) 

• 如果文章並非首發,請在投稿時提醒並附上所有已釋出連結 

• PaperWeekly 預設每篇文章都是首發,均會新增“原創”標誌


? 投稿郵箱:

• 投稿郵箱:hr@paperweekly.site 

• 所有文章配圖,請單獨在附件中傳送 

• 請留下即時聯絡方式(微信或手機),以便我們在編輯釋出時和作者溝通



?


現在,在「知乎」也能找到我們了

進入知乎首頁搜尋「PaperWeekly」

點選「關註」訂閱我們的專欄吧

關於PaperWeekly


PaperWeekly 是一個推薦、解讀、討論、報道人工智慧前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公眾號後臺點選「交流群」,小助手將把你帶入 PaperWeekly 的交流群裡。


▽ 點選 | 閱讀原文 | 下載論文 & 原始碼

贊(0)

分享創造快樂