GANimation讓圖片變GIF表情包,秒殺StarGAN

GANimation讓圖片變GIF表情包,秒殺StarGAN

來自專欄機器之心47 人贊了文章

選自arXiv,作者:Albert Pumarola等,機器之心編譯,參與:劉曉坤、張倩、高璇。

近期生成對抗網路(GAN)在人臉表情合成任務中取得了驚人的表現,其中最成功的架構是 StarGAN,但該架構只能生成不連續的表情。為突破這一局限,本文提出了一種基於動作單元(AU)標註的新型 GAN 條件化方法,可以從單張圖像和表情編碼生成連續的表情動畫,生成的圖像具備連貫性、真實性、廣泛性、魯棒性。該方法以完全無監督的方式進行訓練,使用符合人類解剖結構的面部動作編碼系統來編碼面部表情。目前,該論文已被 ECCV 2018 接收,並被選為 Oral 論文。

  • 研究展示:albertpumarola.com/#

  • 項目地址:github.com/albertpumaro

以下是部分動畫示例:

1 引言

如果一張圖片中的面部表情可以自動變成動畫形式,就會打開許多不同領域新應用的大門,包括電影產業、攝影技術、時尚界和電子商務等。隨著生成對抗網路的流行,這項任務取得了重大的進展,例如 StarGAN 這樣的架構不僅能夠合成新表情,還能更改面部的其它屬性,如年齡、發色、性別等。儘管 StarGAN 很通用,但它只能在由數據集的注釋粒度定義的離散屬性中改變面部一個特定的部分。例如,在面部表情合成任務中,StarGAN 在數據集 RaFD 上進行訓練,該數據集上只有八種二元標籤,分別是悲傷、中立、憤怒、輕蔑、厭惡、驚訝、恐懼和快樂。

圖 1:從單張圖像生成的人臉動畫。研究者提出了一種解剖結構上連貫的方法,該方法不局限於離散數量的表情,可以對給定的圖像進行動畫化處理, 並在一些連續的圖像域中生成新的表情。在這些例子中,只給出最左邊的圖像輸入 I_yr(由綠色方框圈出), 參數α控制微笑表情中包含的目標動作單元的激活程度。此外, 該系統可以處理非自然光照條件下的圖像, 如最下面一行的例子。

然而,面部表情是面部肌肉組合和協調運動的結果,不能被歸為離散的、數量較少的類別。Ekman 和 Friesen[6] 開發了面部動作編碼系統(FACS),以動作單元(AU)來描述面部表情,它們在解剖學上與特定面部肌肉的收縮有關。儘管動作單元的數量相對較少(已發現 30 個 AU 在解剖學上與特定面部肌肉的收縮有關),但人們已經觀察到了 7000 多個不同的 AU 組合 [30]。例如,恐懼的面部表情通常是通過以下 AU 激活產生的:眉心提升(AU1)、眉尾提升(AU2)、眉毛降低(AU4)、上眼瞼提升(AU5)、眼瞼收緊(AU7)、嘴唇伸展(AU20)和下頜下降(AU26)[5]。根據每個 AU 的大小,表情將或多或少地傳遞恐懼情緒。

本文旨在建立一個具有 FACS 表達水平的合成面部動畫模型,能夠在連續的域中產生解剖學結構的表情,而不需要獲得任何面部關鍵點標註 [36]。為此,研究者利用最近的 EmotioNet 數據集 [3],該數據集由 100 萬幅(我們使用其中的 20 萬幅)自然狀態下的情緒面部表情圖像組成,用離散的 AU 激活標註。研究者構建了一個 GAN 架構,它不像 [4] 中那樣被特定域的圖像所條件化,而是被一個一維向量所條件化,該向量表示每個動作單元的存在/缺失以及大小。研究者以一種無監督的方式訓練這個架構,只需要輸入激活 AU 和圖像。為了避免對同一個人在不同表情下的成對訓練圖像的需求,研究者將問題分為兩個主要階段。首先,研究者考慮一個 AU 條件化的雙向對抗性架構,在給定一張訓練照片的情況下,它最初會在期望表情下呈現一個新的圖像。然後,該合成圖像被渲染回原始狀態,因此可以與輸入圖像直接比較。研究者結合最近提出的損失函數來評估生成圖像的真實感。此外,該系統還超越了當前最佳水平,因為它可以在不斷變化的背景和光照條件下處理圖像。研究者通過一個注意力層來實現這一點,該注意力層只將網路的動作集中在與傳達新表情相關的圖像區域。

最終,研究者構建了一個自動化的連貫人臉表情合成方法,可以在連續域中渲染圖像,並且可以處理包含複雜背景和光照條件的自然圖像。如結果部分所示,研究者將它與其它的條件化 GAN 模型在最終的視覺效果以及生成圖像的範圍上做了對比。圖 1 展示了部分結果示例,其中給定一張輸入圖像,模型可以逐漸改變 AU 激活值的大小來生成笑臉。

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

論文地址:arxiv.org/abs/1807.0925

摘要:近期生成對抗網路(GAN)在人臉表情合成任務中取得了驚人的表現。其中最成功的架構是 StarGAN,它使用特定域的圖像來調整 GAN 生成過程,即一系列相同表情的人臉圖像。儘管該方法很有效,但它只能生成不連續的表情,而這是由數據集決定的。為了解決這個局限,本文提出了一種基於動作單元(AU)標註的新型 GAN 條件化方法,該方法在連續流形中描述了定義人臉表情解剖結構的運動。我們的方法允許控制每個 AU 的激活值大小,並將其組合。此外,我們還提出了一個完全無監督的策略來訓練該模型,僅需要用激活 AU 標註的圖像,並利用注意力機制使我們的網路對背景和光照條件變化具備魯棒性。擴展評估結果表明,我們的方法在合成更多樣表情(按解剖結構的肌肉運動),以及處理自然圖像的能力上都超越了對比的條件生成模型。

4 我們的方法

這一節將描述我們用於生成逼真圖像的新方法。如圖 2 所示,該模型由兩個模塊組成。一方面,生成器 G(I_yr | yg) 被訓練來將圖像 I_yr 中的表情逼真地轉換為目標表情 yg。注意 G 被應用了兩次,第一次映射輸入圖像為 I_yg,即 I_yr→I_yg,然後將其渲染回去,即 I_yg→I_yr hat。另一方面,我們使用了一個基於 WGAN-GP[9] 的判別器 D(I_yg) 來評估生成圖像及其表情的質量。

4.1 網路架構生成器

令 G 為生成器模塊。由於它需要被雙嚮應用(即映射輸入圖像為期望表情,反之亦然),在接下來的討論中我們使用下標 o 和 f 來表示初始和最終。

給定圖像 I_yo ∈ R^H×W×3 以及編碼期望表情的 N 維向量 yf,我們將生成器的輸入設置為拼接(I_yo,yo)∈ R^H×W×(N+3),其中 yo 被表徵為 N 個大小為 H x W 的數組。

我們系統的一個關鍵是使 G 聚焦於那些對合成新表情有意義的圖像區域,並保持圖像的餘下部分不變,例如頭髮、眼鏡、帽子或飾物等。為此,我們嵌入了一個注意力機制到生成器中。

具體來說,我們的生成器不是回歸整個圖像,而是輸出了兩個掩碼,一個著色掩碼 C 和一個注意力掩碼 A。最終的圖像由以下式子獲得:

其中 A=G_A(I_yo | yf)∈ {0, . . . , 1} ^H×W 以及 C=G_C(I_yo | yf)∈ R^H×W×3。掩碼 A 表示 C 的每個像素在多大程度上對輸出圖像 I_yf 有貢獻。這樣生成器就無需渲染與表情無關的元素,僅聚焦於定義了人臉表情的像素上,從而能得到銳度更高和更加真實的合成圖像。該過程如圖 3 所示。

條件化判別器。這是一個用來訓練評估生成圖像的逼真度和期望表情的完成度的網路。D(I) 的結構集成了 PatchGan[10] 網路的組件,將輸入圖像映射到一個矩陣 Y_I∈ R^H/2^6×W/2^6,其中 Y_I[i,j] 表示重疊補丁 ij 為真實的概率,此外,為了評估它的約束,我們在頂部添加了一個輔助回歸頭來估計圖像中 AU 的激活值 y hat = (y1 hat, . . . , yN hat)^T。

圖 2:用我們的方法來生成逼真圖像的過程概覽。該架構由兩個主要模塊構成:一個生成器 G 來回歸注意力和著色掩碼;一個判別器來評估生成圖像的照片真實度 D_I 和表情條件化完成度 yg。注意我們的系統是無監督的,即不需要同一個人的不同表情的圖像對比,也不需要假設目標圖像 I_yg 已知。

圖 3:注意力生成器。給定一個輸入圖像和目標表情,生成器將對整個圖像進行回歸併將注意力掩碼 A 和 RGB 色彩轉換 C 覆蓋在原圖上。注意力掩碼定義了每個像素的強度,指定擴展源圖像的每個像素對最終渲染圖像的影響。

6 實驗評估

圖 4:只調整 AU。特定的 AU 在強度增強時被激活(從 0.33 到 1)。第一行對應於 AU 零強度應用,在所有情況下都會準確生成原始圖像。

圖 5. 注意力模型。注意力掩碼 A(第一行)和著色掩碼 C(第二行)中間級的具體表現。最底行圖像是合成表情。注意力掩碼 A 的較暗區域顯示了圖像中與每個特定 AU 相關的區域。較亮的區域從原始圖像中保留下來。

圖 6:與當前最優方法進行定性比較。不同方法的面部表情合成結果:DIAT、CycleGAN、IcGAN、StarGAN 和我們的方法。上圖分別是輸入圖像和七種不同的面部表情。可以看出,我們的方法在視覺精度和空間解析度之間取得了最好的平衡。目前最好的方法——StarGAN 的一些結果出現了一定程度的模糊。之前模型的圖像來自 [4]。

圖 7:採樣面部表情分布空間。通過向量 y_g 應用 AU 參數化,我們可以用相同的源圖像 I_y_r 合成大量逼真圖像。

圖 8:對自然圖像的定性評估。上行:我們從《加勒比海盜》中選取了一張圖片(左),然後用我們的方法合成了一張新圖(右)。下行:我們用類似的方式在《權力的遊戲》中選擇了一張圖片(左),併合成了五個不同表情的新圖。

圖 9:成功案例和失敗案例。源圖像 I_y_r,目標圖像 I_y_g、著色掩碼 C、注意力掩碼 A。上方:極端情況下的成功案例;下方:失敗案例。


推薦閱讀:

人工智慧時代來臨,孩子學編程已成潮流,家長到底要不要追?
face-api.js:在瀏覽器中進行人臉識別的JS介面
日記-《必然》
【AI識人】OpenPose:實時多人2D姿態估計 | 附視頻測試及源碼鏈接
49、【轉載】人工智慧發展速度迅猛而倫理道德的發展困擾人類

TAG:人工智慧 | 計算機視覺 | 圖像識別 |