Skip to content

Latest commit

 

History

History
41 lines (30 loc) · 2.4 KB

cycleGAN.md

File metadata and controls

41 lines (30 loc) · 2.4 KB

Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks

Task Description

Translate an image from a source domain X to a target domain Y in the absence of paired examples.

Main Idea

Train mappings G: X -> Y and F: Y -> X simultaneously with a cycle consistency loss and adversarial loss.

Network Design

Generator

Auto Encoder from fast neural-style transfer

Two stride-2 convolutions -> Residual Blocks(6 for 128x128 images and 9 for 256x256 images) -> Two stride-1/2 fractional-stride convolutions

Discriminator

PatchGAN from pix2pix which tries to discriminates overlapping 70x70 patches to be real/fake. Advantages of PatchGAN compared to conventional discriminator:

  • Less parameters
  • Can be applied to abitrary-sized images

Objectives

Cycle Consistency Loss

The cycle consistency loss is to prevent the learned mappings G and F from contradicting each other.

Adversarial Losses

The adversarial loss is to match the distribution of generated images to the data distribution in the target domain;

Differences from DiscoGAN

  1. Generator's archetecture

  2. Cycle GAN replaces the negative log likelihood objective by a least square loss which is able to stable training and generate images of higher quality.

  3. Cycle GAN uses a history of generated images rather than the ones produced by the latest generative networks and keeps an image buffer that stores the 50 previously generated images.

  4. Cycle GAN uses instance normalization.

Reference

Zhu J Y, Park T, Isola P, et al. Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks[J]. arXiv preprint arXiv:1703.10593, 2017.