Skip to content
This repository has been archived by the owner on Jan 18, 2020. It is now read-only.
/ NAM Public archive

Non-Adversarial Unsupervised Domain Mapping

License

Notifications You must be signed in to change notification settings

facebookarchive/NAM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NAM: Non-Adversarial Mapping

This repo contains PyTorch code replicating the main ideas presented in:

  • NAM - Unsupervised Cross-Domain Image Mapping without Cycles or GANs
    Yedid Hoshen and Lior Wolf, ICLR 2018 Workshop
    ICLR Manuscript

  • Non-Adversarial Unsupervised Domain Mapping
    Yedid Hoshen and Lior Wolf, ECCV 2018
    https://arxiv.org/abs/1806.00804

Examples

Edges2Bags

Alt text
Top: DiscoGAN Middle: NAM: Bottom: Source

Edges2Shoes

Alt text
Top: DiscoGAN Middle: NAM: Bottom: Source

Variation in Outputs:

Alt text
Alt text

Getting Started

  1. Download Edges2Shoes data:
cd data
sh get_data.py
cd ..
  1. Train DCGAN unconditional generative model for the A domain:
cd code
python train_gen.py
  1. Use NAM to train a mapping from A to B:
python train_nam.py
  1. Evaluate multiple image analogies:
python eval_variation.py $image_id 

Where $image_id is replaced with the ID of the image you wish to map.

Note: DCGAN training can diverge sometimes. Unconditional samples from each epoch are available in "code/unconditional_ims/". If DCGAN training diverged, simply re-run it.

License

This project is CC-BY-NC-licensed.

About

Non-Adversarial Unsupervised Domain Mapping

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages