GAN「家族」又添新成員——EditGAN,不但能自己修圖,還修得比你我都好

  • 2021 年 11 月 19 日
  • AI
作者 | 莓酊

編輯 | 青暮

首先想讓大家猜一猜,這四張圖中你覺得哪張是P過的?小編先留個懸念不公布答案,請繼續往下看。

生成對抗網路(Generative Adversarial Network, GAN)是通過讓兩個神經網路對抗學習生成數據的方法。GAN從伊始到現在發展「壯大」,比如我們熟悉的PGGAN和StyleGAN,已經可以生成高品質、高解析度的圖片。最近NVIDIA 、多倫多大學和麻省理工大學的研究者們為GAN「家族」又添一員—— EditGAN。

大多數基於 GAN 的影像編輯都需要在具有語義分割注釋的大規模數據集上訓練,並只提供極少的修改,或僅在不同影像之間進行插值。

而EditGAN作為一種高品質、高精度語義影像編輯的新模型,允許通過修改高精細度零件的分割掩碼(Segmentation mask)來編輯影像。簡而言之,EditGAN能自己P圖,而且還P得特別好。就如上圖所示,除了第一張是小哥原版的「邪魅笑容」,其餘都是EditGAN的作品,請問你猜對了嗎?

EditGAN是建立在GAN框架上,該框架是對影像及其語義分割 (DatasetGAN) 進行聯合建模,只需要少量標記數據就能訓練,進而成為可擴展的編輯工具。

使用 EditGAN 進行高精度語義影像編輯

在動圖中可以更直觀地觀察到EditGAN的修圖效果:

具體來說,就是將影像嵌入到GAN潛在空間中,並根據分割編輯執行潛在的程式碼優化從而高效地修改影像。為了攤銷優化,研究人員在潛在空間中找到編輯向量,並允許任意數量的編輯向量以交互速率直接應用於其他影像。

以可愛貓貓的「張嘴編輯」為例:

橫向第一排是影像和學習編輯向量的蒙版,編輯前後的對比及原圖的分割掩碼和手動修改後的目標分割掩碼。第二排是EditGAN將學習提煉到的編輯應用於新影像的前後對比。

實驗證明,EditGAN 可以用前所未有的細節自由度操作影像,同時保持高品質的完整度。而且還可以輕鬆組合多個編輯,在 EditGAN 的訓練數據之外執行合理的影像修改。

目前只有EditGAN可以達到這樣的效果!大多數基於GAN 的影像編輯方法,有的依賴於GAN對類標籤或像素級語義分割注釋的調節,其他則需要輔助屬性分類器指導合成編輯影像。而且訓練它們必須背靠大型標記數據集,導致這些方法目前僅適用於大型注釋數據集的影像類型。除此之外,即使注釋可用,但由於注釋只包含高級別全局屬性或相對粗略的像素分割,大多數技術只提供有限編輯操作。

而EditGAN的「制勝法寶」就在於:高精度的分割掩碼(Segmentation mask)。

詳細的面部標記,連魚尾紋、法令紋都有屬於自己的語義模組,其實大可不必這麼真實的。

汽車、鳥和貓的部分標記模版也是無比精細了。

在EditGAN的互動式演示工具中,通過調整相應部位的分割掩碼就修改影像。

還能同時應用多個編輯,並利用預定義的編輯向量生成新影像。

EditGAN在繪畫作品上的泛化應用也很出色。

可以說,EditGAN是第一個GAN驅動的影像編輯框架,它能提供非常高精度的編輯,只需要很少帶注釋的訓練數據(並且不依賴於外部分類器),運行實時交互,允許多個編輯的直接組合,並適用於真實嵌入、GAN生成影像,甚至是域外影像。


GAN框架下的編輯影像發展

電腦視覺(Computer Vision, 簡稱CV)領域取得了許多進展。2012年之前,人工設計(hand-designed)是電腦視覺的主要研究方法。2012年,深度神經網路(Deep Neural Network, DNN)在ImageNet的分類任務上發揮了巨大作用,熱門研究如:自動駕駛,物體識別,對人體的理解等等。直到2014年,電腦科學家Ian Goodfellow發表生成對抗網路(GAN)的開創性論文,開啟了深度學習的變革,取得了很多技術上的重大突破。雖然生成對抗網路原先是為了無監督學習提出的,它也被證明對半監督學習、完全監督學習、強化學習是有用的。在一個2016年的研討會,楊立昆描述生成式對抗網路是「機器學習這二十年來最酷的想法」。

GAN包含了兩個神經網路,生成器G(Generator)和鑒別器D(Discriminator),生成器的作用是生成圖片,鑒別器則接收圖片作為輸入對象,隨後對影像的真假進行辨別,輸出1為真,輸出0則為假。在博弈的過程中兩者都在不斷變強,即生成器產出的影像愈發「惟妙惟肖」,鑒別器也更加「火眼金睛」。訓練效果達到峰值後,這時再把D直接拿來作為圖片生成器。

下面我們將從風格遷移、特徵解耦和語言概念解耦三個方面,向大家展示GAN框架之下的視覺生成發展歷程。

1

風格遷移

這一階段的影像生成技術繼承自CycleGAN、pix2pix等經典模型,屬於條件生成,也就是基於確定的輸入來得到輸出,而不是像GAN那樣通過隨機取樣生成,從而輸出更加可控,或者得以實現對輸入的風格化編輯。

在此基礎上,人們按照「輸入-輸出」配對的套路開發出了各種不同的玩法,比如漫畫真人化、風景動漫化、靜物變「動物」、2D變3D等等。

  1. 「紙片人」變「真人」

YouTube部落客AIみかん通過機器學習生成灌籃高手裡各角色的真人版,80後90後淚目直呼「爺青回」。他使用的正是由藝術家Joel Simon在2018年創建的Artbreeder。Artbreeder是基於StyleGAN和bigGAN的在線影像生成網站(曾被GANBreeder),人們使用它已經創造了超過5400萬張影像。除了可將漫畫人物轉化為真人,還有肖像,風景,建築等圖片生成模式,網址://artbreeder.com/browse

  1. 現實變「漫畫風」

由清華大學,卡迪夫大學的研究人員提出的CartoonGAN,作者們設計了一個GAN網路框架,用非成對影像訓練GAN模型,能夠使用漫畫風格直接重現現實世界的場景。

論文鏈接://openaccess.thecvf.com/content_cvpr_2018/papers/Chen_CartoonGAN_Generative_Adversarial_CVPR_2018_paper.pdf

研究人員提出了損失函數,在生成器里VGG網路中引入高階特徵映射稀疏正則化以保證現實照片和生成漫畫之間風格差。在鑒別器里提出推進邊緣的對抗損失,以確保生成邊緣清晰的圖片。CartoonGAN有四種訓練好的模型:宮崎駿風、細田守風、今敏風和新海誠風。

  1. 「靜物」變「動態」

2020年大谷老師使用四個AI模型「復活」了兵馬俑。分別是基於StyleGan2的Artbreeder、First-order-model、DAIN、Topaz Labs,都是訓練好的模型。

在整個修復過程中,每張圖都要按照順序用這4個AI模型進行處理。其中,Artbreeder把角色從繪畫轉成寫實風格,First-order-model生成人物動態,DAIN進行補幀(60fps),最後用Topaz Labs提升解析度,使用的顯示卡是Nvidia 2080Ti。

大谷老師其他「神筆馬良」作品

  1. 「2D」變「3D」

上海交通大學和華為公司聯合提出基於GAN的感知生成器CIPS- 3D,使用單視角圖片,無需採集樣本,就能生成視覺立體影像。CIPS- 3D在淺層使用的是主負責把人像從2D變3D的NeRF(Neural Radiance Fields,隱式神經表達法),在深層網路設置為能讓合成影像保真的INR(Implicit Neural Representations,神經輻射場)。為解決鏡像對稱問題,研究人員在神經網路中添加了一個鑒別器,用以輔助甄別鏡像問題。

論文地址://arxiv.org/pdf/2110.09788.pdf

不支援在 Docs 外粘貼 block

當然,這種影像生成或編輯模式比較單一,通常一個模型只能實現一個功能。

人們開始思考,是否可以實現一個模型、多種PS?當然可以,秘密藏在向量空間的特徵解耦中。

2

特徵解耦

特徵解耦就是,在神經網路的輸入層和輸出層之間的編碼層,也就是向量空間中,將影像的不同特徵分解開來,從而改變一個特徵的時候,不會影響另一個特徵。這正是實現一個模型、多種PS的必要條件。

比如由加州大學伯克利分校提出的InfoGAN。InfoGAN可以在向量空間控制生成影像的不同變數,並且不會互相干擾,比如MNIST數據集中的數字類型、旋轉角度,以及人臉生成中的五官控制等等。

論文鏈接://arxiv.org/pdf/1606.03657.pdf

在標準的GAN中,生成數據的來源一般是一段連續單一的雜訊z,這會導致Generator會將z高度耦合處理,z將不可解釋。作者對GAN的目標函數進行改進,讓網路學習擁有可解釋的特徵表示。

在InfoGAN中,模型的輸入就被分成了兩部分:

(1)不可壓縮的 z,該部分不存在可以被顯式理解的語義資訊。

(2)可解釋的隱變數 c,該部分包含我們關心的語義特徵(如 MNIST 數據集中數字的傾斜程度、筆畫的粗細),與生成的數據之間具有高相關性(即二者之間的互資訊越大越好)。

對於可解釋的部分,另一篇論文在特徵空間層面給出了更加具體的解釋。

香港中文大學助理教授周博磊在CVPR2020提出了一個叫InterFaceGAN的方法,這個方法就是為了在隱空間跟最後輸出圖片的語義空間建立聯繫。這個方法本身非常簡單,但是很有效。

具體步驟是,訓練好了生成模型過後,就得到了一個隱空間。然後可以從隱空間裡面進行取樣,把這些取樣出來的向量放到生成器之中,進行圖片生成,後面可以再接一個現有的分類器,給生成的圖片打上一個具體的語義標籤(比如性別標籤)。

這樣就可以把預測出來的標籤當做隱空間向量的真實標籤,從而進一步再回到隱空間,把預測的標籤當成真實標籤,然後訓練一個分類器,對隱空間向量進行分類。

研究發現,在隱空間裡面,GAN其實已經把隱空間的向量變得非常解耦。只需要用一個線性分類器,就可以在隱空間里實現90%左右的二分分類準確率。

在訓練了一個線性分類器後可在隱空間里得到了一個子空間,這個子空間就對應了生成圖片的性別

當然,要實現這種有明確語義的編輯方式,除了依靠數學的力量,也可以藉助語言的魔法。比如,OpenAI在2021年初提出的DALL·E就通過直接的文本-影像映射,實現了視覺效果驚艷,同時語義對應上接近填空的控制力。

比如輸入「豎琴狀的蝸牛」,AI可以生成這樣的影像:

要知道,這些影像在訓練集中是不存在的,不得不令人懷疑AI獲得了人類般的概念組合能力,也就是基於語言思維的概念解耦能力。

3

語言概念解耦

StyleCLIP進一步將這個能力精細化,當然這個模型也比DALL·E好實現多了。

由自希伯來大學、特拉維夫大學、Adobe 等機構的學者們提出了名為StyleCLIP模型,它可以只「聽」文字指令就能「畫」出你想要的圖片。

StyleCLIP是StyleGAN 和 CLIP 兩種模型的「進化體」。它既保留了預訓練 StyleGAN 生成器的生成能力,也擁有CLIP 的視覺語言能力。

論文地址://arxiv.org/pdf/2103.17249.pdf

論文中有3種結合StyleGAN和CLIP的方法:

Optimizer:以文本為指導的latent優化,其中 CLIP 模型被用作損失網路。

Mapper:訓練一個特定文本提示的latent殘差映射器,使潛在向量與特定文本一一對應。

Global dir:一種在StyleGAN的style space中將文本描述映射到輸入影像的全局方向(global direction),提供了對操作強度和解耦的控制。


4

尾聲

從風格遷移到特徵解耦、語言概念解耦,研究者們正通過數學和語言逐步改善GAN的功能,無論是從基本能力上,還是從功能精細化上,我們也在這個過程中不斷增進對GAN的理解。當然,這兩個方向並無優劣之分,未來皆可期。

鏈接:

//arxiv.org/pdf/2111.03186.pdf

//mp.weixin.qq.com/s/h5gZCKRGZlG03DZL-2FWIw

//tandon-a.github.io/Image-Editing-using-GAN/

//mp.weixin.qq.com/s?__biz=MzA5ODEzMjIyMA==&mid=2247571522&idx=1&sn=380ab14b7cf34783fd412e60713b6b48&chksm=9095d1d1a7e258c79fbfda93ac25b66f651af60b77e28c4c17855aecfc1979471a03205e1e55&token=1979387772&lang=zh_CN#rd

//mp.weixin.qq.com/s?__biz=MzA5ODEzMjIyMA==&mid=2247629931&idx=1&sn=3ee515e9f3e618c4cd05bb5841a96ecc&chksm=909af5f8a7ed7ceebfcc48fd9e38140412b6244de846b6bd11e800f3f65b0985dfa4f674c927&token=1979387772&lang=zh_CN#rd

//arxiv.org/pdf/2103.17249.pdf

雷峰網雷峰網