follow this video: https://www.youtube.com/watch?v=4LktBHGCNfw

paper: https://arxiv.org/pdf/1703.10593.pdf

 

只讲我关注到的,与Pix2Pix的区别之处

区别一:不需要成对匹配的数据

CycleGAN是两个集合的转换,不需要建立元素的一一映射

CycleGAN的原理及Pytorch实现

  

区别二:增加了cycle-consistency loss

CycleGAN的原理及Pytorch实现

 

 

CycleGAN的原理及Pytorch实现

 

CycleGAN的原理及Pytorch实现

 

 每种loss代表什么实际含义呢?

CycleGAN的原理及Pytorch实现

 

 GAN alone 和 GAN+forward 遭受了模式奔溃, 不管输入什么图片,产生相同的输出。

区别三:增加了identity loss

Lidentity有助于保持和输入图片一样的颜色,没有Lidentity时,生成器G和F会改变输入图片的色调当它们不需要时,例如把早上的图片映射成傍晚的图片,因为这同样满足adversarial loss和cycle consistency loss.

CycleGAN的原理及Pytorch实现

 

区别四:生成器有residual Blocks

生成器采用残差模块,虽然据说像Pix2Pix一样使用U-Net效果也不错;

识别器还是用PatchGAN,不过论文里输出是70 x 70,我实现上还是用 30 x 30;

CycleGAN的原理及Pytorch实现

 

 

 完整代码:https://github.com/growvv/GAN-Pytorch/tree/main/CycleGAN

相关文章:

  • 2021-03-30
  • 2021-09-04
  • 2021-07-01
  • 2022-02-28
  • 2021-12-30
  • 2022-12-23
  • 2022-01-08
猜你喜欢
  • 2022-02-17
  • 2021-07-10
  • 2021-05-18
  • 2021-06-07
  • 2022-01-01
  • 2021-09-28
  • 2021-11-30
相关资源
相似解决方案