研究意义:

  1. pix2pix在图像翻译任务上提供了通用框架
  2. 使GAN从此统治了各类图像翻译任务,促使各类图像翻译任务的效果逐渐接近了实用级别.

论文导读

image.png

补充: CV CG DIP三套教材 image.png

1. 研究背景

image.png
image.png

像素损失: 对锐度不敏感 感知损失: 用imagenet数据集的预训练模型的特征来表示损失, 比如vgg loss或者resnet loss

补充: 数据集 image.png

2. 研究意义

image.png

论文泛读

1. Introduction

  1. 目的: 在图像翻译任务上(如超分, 风格迁移), 提供一个通用的解决方案(同时学习映射和损失)
  2. 模型结构: 使用主流的CNN;
  3. 模型损失: 打造通用的结构性的loss, 即可学习的损失, 在判别器上给出损失, 在理论上, 能对任何结构上的区别给出惩罚.

    2. relative

  4. 更着重于结构性损失, 而且利用CGAN来作为可学习的损失.

  5. CGAN之前被用在其他领域, 用于针对特定的任务. 但现在, 我们的框架是通用的.
  6. 生成模型结构基于”U-Net” (读者注:广泛用于语义分割).
  7. 判别模型(读者注: 可学习的损失)被称为一个条件的”PatchGAN”, 这里的Patch是指输入图片的大小, 采用patch的目的是capture local style statistics.

    3. Method

    简单讲了GAN的原理

论文总结

image.png

1. 目标函数

image.png

  • Gan loss

具体而言,是基于CGAN以及Patch大小为输入, 被作者称为Patch-GAN(注: 见下Patch-GAN部分)

  • 为何推断时也使用dropout

原文给出: 生成器能学习忽略噪声内部的差异, 故并不能依据噪声来让生成器产生多样性; 鉴于此, 作者认为训练和验证阶段均使用dropout能激发生成器的多样性 image.png

2. 模型结构与训练参数

image.png

  • Encoder-decoder与Unet对比

image.png

  • Unet (with skip connection)

可见上面的网络结构. 为保证低级特征不会丢失, 基于”U-Net”利用了concat连接了各个层次的特征. 类似的思想在RDN也用到了 (注: RDN用于图像超分任务) image.png

另外, 以上的做法是基于作者的先验假设: 虽然输入和输出的看起来不同, 但是有潜在结构相似性.

image.png

image.png

PatchGAN在原论文中, 也被称为是Markovian discriminator, 其原因是: 一个先验的假设, 像素之间的额距离大于patch的大小N时, 像素之间是相互独立的, 图像可被建模为马尔科夫随机场, 如此可认为PatchGAN处理了纹理/style损失的计算.

image.png

  1. 采用原始GAN损失的替换技巧, 目的是: 在训练初期有更强的学习梯度…(读者注: 初期生成器太差了,所以D(…)接近0)
  2. “G和D的训练次数为1:1,训练速度为2:1” 的实现是: 将判别器的损失人为地除以2.0
  3. instance norm仅在图像内部进行norm, 其目的是: 生成器的多样性

3. 评价方式

4. 目标函数

  • 为什么L1loss和CGANloss的加权比例为100:1?

为了保证两种loss在同一个数量级上.

  • 为什么单独使用loss呢?

仅采用L1 loss生成的图片比较模糊,光谱偏浅灰色 仅采用CGANloss生成的图片比较尖锐,光谱更真实

4.2 理论证明