高清實景合成解讀 (ICCV 2017)

Photographic Image Synthesis with Cascaded Refinement Networks

Qifeng Chen, Vladlen Koltun Link: arxiv.org/pdf/1707.0940

此文一出各界都表示震驚,一是因為破了GAN的生成領域神話,二是高清圖像的生成省去了很多後處理的工作。有知乎文章、和科技評論已對此做出了領讀,但本文想就演算法細節繼續深究一下:

1.任務

從mask(或者說是layout)去生成RGB圖像,實際上與分割(segmentation)互為逆任務。那麼這個任務的困難點則在於生成圖像的尺寸上:大部分用GAN的演算法僅能生成64*64或128*128的圖像,且訓練極不穩定。如果不能一步到位,那隻能藉助Laplacian pyramid的思想,構造多尺度的(multi-scale)。作者總結了生成高質量圖片的三要素:

  1. 全局協調性
  2. 高清
  3. 足夠大的網路

其實個人覺得也就在說一件事情:從小迭代到大

2.方法

在網路中我們的輸入是semantic layout L,尺寸w_i * h_i * c,c類別數,即每個pixel用one-hot vector表徵一個類別,輸出是F,尺寸是w_i * h_i * d_i, d_i 代表在這個尺度下的feature map數(512->128->32)。那這個級聯網路究竟是怎麼從小到大訓練的呢:我們跟著示意圖看

首先網路由很多模塊M組成,且一開始M_0解析度只有4*8,input L也被降採樣

到4*8。接著如上圖所示Mi接收w_i * h_i尺寸的L_i(upsampled)和上一個模塊的輸出F^i-1,再輸出F^i。每層layer跟一個3*3的卷積、layer normalization和LReLu。

直到最後一層只conv+一個線性映射(1*1conv),為了讓最後的d_i映射到RGB的channel=3.

【訓練】

因為文章明確表示是supervised fashion,那作為GT的Image應該如何監督呢?

這裡loss還構造得很直接:這裡Phi表示與一個結構類似的visual perception network(VGG-19), g表示上部分提到的image synthesis network, Loss相當於一個L1-loss,這個假設是基於我需要g學到一個映射,使得每一層的output和vgg的output是一樣的。假設loss趨近於0的時候,

output of layer_i = Phi(I) = Phi(g(L)) 則 I = g(L)

【生成多樣的圖片】

由於這個問題是1 vs n的,即一個layout可對應多種生成圖片,那作者針對多樣性設計了一個loss去生成一組圖(3*k channels)


推薦閱讀:

Extreme clicking for efficient object annotation

TAG:新知 | QifengChen | VladlenKoltun | 知乎文章 | 科技评论 |