Skip to content

Tensorflow implementation of 3D Generative Adversarial Network.

License

Notifications You must be signed in to change notification settings

AshishBora/tf-3dgan

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

tf-3dgan

license arXiv Tag

Tensorflow implementation of 3D Generative Adversarial Network.

This is a tensorflow implementation of the paper "Learning a Probabilistic Latent Space of Object Shapes via 3D Generative-Adversarial Modeling"

Requirements

  • tensorflow>=1.0
  • visdom>=1.0.1 (for mesh visualization)
  • scipy
  • scikit-image
  • stl (optional)

One-line installation

```
pip install scipy scikit-image stl visdom
```

Data

  • Download the training data from the 3D Shapenet website
  • Extract the zip and modify the path appropriately in dataIO.py

Usage

To train the model (visdom will show generated chairs after every 200 minibatches)

python 3dgan_mit_biasfree.py 0 <path_to_model_checkpoint>

To generate chairs

python 3dgan_mit_biasfree.py 1 <path_to_trained_model>

Some sample generated chairs

Source code files

File Description
3dgan_mit_biasfree.py 3dgan as mentioned in the paper, with same hyperparams.
3dgan.py baseline 3dgan with fully connected layer at end of discriminator.
3dgan_mit.py 3dgan as mentioned in the paper with bias in convolutional layers.
3dgan_autoencoder.py 3dgan with support for autoencoder based pre-training.
3dgan_feature_matching.py 3dgan with additional loss of feature mathcing of last layers.
dataIO.py data input output and plotting utilities.
utils.py tensorflow utils like leaky_relu and batch_norm layer.

Todo

  • Host the trained models
  • Add argparser based interface
  • Add threaded dataloader
  • Release the pytorch and keras versions of the GAN.
  • Train for longer number of epochs to improve quality of generated chairs.

About

Tensorflow implementation of 3D Generative Adversarial Network.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%