Paper Reading: ICCV2019 ORAL: COCO-GAN: Generation by Parts via Conditional Coordinating

Paper Reading Note

相關鏈接:
論文URL
論文Github
作者項目介紹
full resolution pdf

TL;DR

人類往往在認知一件事物時,由於生物功能信息上的侷限性,我們往往只能夠看到局部信息。人類會根據自己的經驗結合這些信息形成對這個物體的整體上認知。
本文介紹的COnditional COordinate GAN從這點上得到啓發,將真實圖像進行切分,對每一小塊座標對應的圖像進行訓練,並將位置信息作爲條件作爲Conditional輔助GAN的訓練,最終能夠通過拼接生成比訓練數據更大的假圖像,並且在生成質量上也做到了SOTA。

Model

model
採用的是conditionalGAN作爲模型框架:

  • 將位置信息作爲condition加入到latent distribution中。
  • 將生成的小塊圖像與經過crop的圖像訓練判別器的true/fake分類。
  • 位置信息訓練判別器的位置分類器。
  • 爲了能輕連續小塊之間縫隙的問題,作者將生成器生成的小塊圖像進行對應位置的拼接,使判別器能夠學習到位置之間的相關性。

最後的損失函數也很好理解:
loss
L_w是對抗損失,這裏用的是WGAN-gp,所以在判別器中還有梯度懲罰:L_GP,L_s是位置信息的準確性損失。
L_s採用了Conditional GAN的損失。與一般的CGAN不同的是,一般的CGAN都是分類問題,最後的損失函數都是交叉熵等。這裏由於位置信息的連續性關係,作者採用了L2損失:
coordinate loss

生成器網絡

generator

判別器網絡

discriminator

Experiment

生成圖像過程

test image
使用一個latent distribution能夠在訓好的生成器上通過位置信息生成每一個小塊的圖像,然後通過簡單的基於位置的拼接操作即可得到整個圖像。

模型結果

選取不同的full-macro-micro比例圖像得到的實驗結果
results
在FID評價指標上也超過了部分SOTA方法。
results fid

特徵表示向量的選取

作者首先分析了latent distribution不同取值的影響。這裏的latent distribution的取法是通過隨機取兩個vector,然後用弧插值的方法計算出一箇中間值,不同取值得到的結果:
latent vector study

小塊引導的圖像生成 (※)

本文最有意思的一個工作:通過另一個網絡預測該patch對應大圖的latent vector(有點粗暴),然後通過同樣的網絡生成整個圖像:
patch guided study
這種方法相對於其他任務的一個比較好的點在於不依賴於生成部分周圍的信息,單純依靠位置預測latent distribution,如果這個模型訓得很好,那麼相同的網絡就可以還原出一整幅逼真的圖像。
更多使用該方法的結果:
patch-guided results

Thoughts

這篇文章的核心模型十分簡單容易理解。但腦洞開的很大,能夠從patch圖像去生成整體的圖像這點不太好想到,作者提供的這套解決方法很有說服力,最關鍵的是提供了分小塊去做GAN這種方法。這種思路這篇文章讓我覺得GAN不僅能夠做簡單的數據增強,在super resolution,image inpainting等任務上也可以用類似的想法去做。

發佈了67 篇原創文章 · 獲贊 94 · 訪問量 39萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章