BEGAN in Tensorflow
Tensorflow implementation of BEGAN: Boundary Equilibrium Generative Adversarial Networks.
Requirements
- Python 2.7 or 3.x
- Pillow
- tqdm
- requests (Only used for downloading CelebA dataset)
- TensorFlow 1.3.0
Usage
First download CelebA datasets with:
$ apt-get install p7zip-full # ubuntu
$ brew install p7zip # Mac
$ python download.py
or you can use your own dataset by placing images like:
data
└── YOUR_DATASET_NAME
├── xxx.jpg (name doesn't matter)
├── yyy.jpg
└── ...
To train a model:
$ python main.py --dataset=CelebA --use_gpu=True
$ python main.py --dataset=YOUR_DATASET_NAME --use_gpu=True
To test a model (use your load_path
):
$ python main.py --dataset=CelebA --load_path=CelebA_0405_124806 --use_gpu=True --is_train=False --split valid
Results
gamma=0.5
after 300k steps
Generator output (64x64) with
gamma=0.5
after 200k steps
Generator output (128x128) with
gamma=0.5
after 300k steps
Interpolation of Generator output (64x64) with
gamma=0.5
after 200k steps
Interpolation of Generator output (128x128) with
Interpolation of Discriminator output of real images
Related works
Author
Taehoon Kim / @carpedm20