褲子換裙子,就問你GAN的這波操做秀不秀

選自 arXiv,做者:Sangwoo Mo , Minsu Cho , Jinwoo Shin,機器之心編譯。git

把照片裏的綿羊換成長頸鹿、牛仔長褲換成短裙。聽起來有點難以想象,但韓國科學技術院和浦項科技大學的研究人員目前已實現了這一騷操做。他們開發的一種機器學習算法可在多個圖像數據集上實現這種操做。其論文《InstaGAN: Instance-Aware Image-to-Image Translation》已被 ICLR2019 接收。github

長褲變短裙

圖像到圖像的轉換系統——即學會把輸入圖像映射到輸出圖像的系統——並不是什麼新鮮事。去年 12 月,Google AI 研究人員開發了一種模型,該模型經過預測對象的大小、遮擋、姿式、形狀等,能夠逼真地將其插入照片中的合理位置。但正如 InstaGAN 的建立者在論文中所說的同樣,即便當前最早進的方法還是不夠完美的。算法

本文要介紹的這項新研究基於 CycleGAN 實現了實例級別的圖像轉換。跨域

圖源:Context-Aware Synthesis and Placement of Object Instances

CycleGAN 克服了 pix2pix 在圖像轉換中必須一一配對的限制,給定兩個無序圖像集 X 和 Y,CycleGAN 能夠自動對它們進行互相「翻譯」。網絡

但它沒法編碼圖像中的實例信息,所以在涉及目標類別特徵的圖像轉換時,效果不太理想。架構

「因爲其近期基於生成對抗網絡取得的進步使人印象深入,無監督的圖像到圖像轉換已受到大量關注。然而,之前的方法在面對具備挑戰性的任務時經常失敗,尤爲是當圖像具備多個目標實例而且任務涉及形狀的大幅變化時。」研究人員表示。機器學習

他們的解決方案是 InstaGAN 系統,該系統結合了多個任務目標的實例信息。InstaGAN 會生成圖像的實例分割掩碼(屬於同一實例的像素組),它會結合目標的邊界並同時忽略顏色等細節。函數

新奇的是,InstaGAN 轉換了一幅圖像和一組相應的實例屬性,並同時力求保留背景語境。當與一種創新的技術(該技術容許其在傳統硬件上處理大量實例屬性)結合時,它能夠推廣到具備許多實例的圖像。以下圖所示,把兩我的的牛仔褲換成裙子,把四隻綿羊換成長頸鹿都不是問題。學習

「據咱們所知,在咱們以前,尚未人實現過圖像到圖像轉換中的多實例轉換任務。和之前在簡單設置中的結果不一樣,咱們的重點是和諧,讓實例與背景天然地渲染。」測試

研究人員爲 InstaGAN 系統提供了來自不一樣數據集(包括 multi-human parsing(MHP)數據集、MS COCO 數據集和 clothing co-parsing(CCP)數據集)的兩類圖像。與圖像到圖像轉換的公認基線 CycleGAN 相比,InstaGAN 可以更成功地在保留原始語境的同時生成目標實例的「合理形狀」。

「在不一樣數據集上的實驗成功實現了圖像至圖像轉換中的挑戰性任務——多實例轉換,包括把時尚圖像中的牛仔褲換成短裙等新任務。探索新任務和新信息將是將來有趣的研究方向。」研究人員寫道。

這篇論文已被 ICLR2019 接收爲 Poster 論文,得到了 七、八、7 的高分,其中一位評審在評審意見中寫道:

本文做者對多圖像實例進行非成對的跨域轉換,他們提出了一種方法——InstaGAN。該方法基於 CycleGAN,考慮了以每一個實例分割掩碼形式存在的實例信息。


本文文筆較好,容易理解。該方法很新穎,解決了一類以前方法沒法解決的信息問題。該模型及訓練目標每一個部分的動機在該問題的語境中都獲得了清晰的解釋。結果看起來至關不錯,明顯優於 CycleGAN 和其它基線。

論文:INSTAGAN: INSTANCE-AWARE IMAGE-TO-IMAGE TRANSLATION


  • 論文連接:https://arxiv.org/pdf/1812.10889.pdf

  • 項目地址:https://github.com/sangwoomo/instagan

  • ICLR 連接:https://openreview.net/forum?id=ryxwJhC9YX

摘要:因爲生成對抗網絡的快速發展,無監督圖像到圖像的轉換吸引了大量研究者的目光。然而,以前的方法一般不適用於較難的任務,尤爲是在圖像擁有多個目標實例或轉換任務涉及極具挑戰性的形狀問題時,如將時尚圖片中的褲子轉換成短裙。爲了解決這一問題,本文提出了一種新的方法——instance-aware GAN(InstaGAN),這種 GAN 結合了實例信息(如目標分割掩碼),提升了多實例轉換的能力。在保持實例置換不變性的同時,該 GAN 對圖像和相應的實例屬性集進行轉換。爲此,研究人員引入了一個語境保留損失函數,鼓勵網絡學習目標實例以外的恆等函數。此外,他們還提出了一種序列 mini-batch 推理/訓練技術,這種技術藉助有限的 GPU 內存處理多個實例,加強了該網絡在多實例任務中的泛化能力。對比評估證實了該方法在不一樣圖像數據集上的有效性,尤爲是在上述具備挑戰性的狀況下。

圖 1:先前方法(CycleGAN, Zhu et al. (2017))的轉換結果 vs InstaGAN。後者在多實例轉換問題中獲得的結果更好。

在谷歌搜索圖片上的結果(褲子→短裙)

在 YouTube 視頻上的結果(褲子→短裙)

研究者還在 GitHub 給出了兩個預訓練模型,感興趣的讀者能夠下載試試。點擊如下連接下載預訓練模型(褲子→短裙及/或綿羊→長頸鹿):

地址:https://drive.google.com/drive/folders/10TfnuqZ4tIVAQP23cgHxJQKuVeJusu85

圖 2:(a)InstaGAN 架構概覽,其中的生成器 G_XY、G_YX 和判別器 D_X、D_Y 分別遵循(b)和(c)中的架構。每一個網絡都同時編碼一幅圖像及相應的一套實例掩碼。

InstaGAN 成功地把牛仔褲和短裙互換,把短褲和長褲互換。

圖 4:在 clothing co-parsing(CCP)(Yang et al., 2014)數據集上的轉換結果。

綿羊和長頸鹿互換,杯子和瓶子互換都不是問題。

圖 6:在 COCO(Lin et al., 2014)數據集上的轉換結果。

咱們能夠只給第一位小姐姐換短裙,也能夠只給第二位小姐姐換,固然一塊兒換也 OK。

圖 7:輸入掩碼不一樣,InstaGAN 獲得的結果也不一樣。

具體的玩法天然不限於此,做者可沒說須要限制性別。

圖 13:在 MHP 數據集上的更多轉換結果(褲子→短裙)。

從展現的案例中也能夠發現,CycleGAN 的轉換效果老是受到源圖像的形狀誤差影響,因此其轉換偏向於目標的紋理層面。好比,在下圖中,CycleGAN 就把短脖子的綿羊變成了短頸鹿。

圖 15:在 COCO 數據集上的更多轉換結果(綿羊→長頸鹿)。

給予讚揚的同時,同一位評審也指出了該論文的一些不足,並給出了相應的建議:

就測試領域的數量(三類圖像對——長頸鹿/綿羊,長褲/短裙,杯子/瓶子)來看,結果有必定的侷限性。從某種意義上來講,這也是能夠理解的。誰也不會沒事用它來轉換從未在相同語境出現過或者大小不一樣的目標(如杯子和長頸鹿)。但若是示例對更多會更好,也會使該系統更具說服力。


此外,若是單個模型能夠在多個類別對上訓練並從它們之間共享的信息中受益,那將頗有趣。


評估主要是定性的。我但願看更多該模型的控制變量實驗。

圖 9:關於本文所述方法每一個組成部分效果的控制變量研究。這些部分包括:InstaGAN 架構、語境保留損失函數、序列 mini-batch 推理/訓練算法,分別表示爲 InstaGAN、L_ctx 及 Sequential。

圖 10:關於序列 mini-batch 推理/訓練技術效果的控制變量研究。「One」和「Seq」分別表示「one-step」推理和序列推理。

參考連接:https://venturebeat.com/2019/01/01/this-neural-network-can-swap-sheep-for-giraffe-jeans-for-skirts/
相關文章
相關標籤/搜索