Skip to content

maxorange/voxel-dcgan

Repository files navigation

VoxelDCGAN

Implementation of a 3D shape generative model based on deep convolutional generative adversarial nets (DCGAN) with techniques of improved-gan.

Experimental results on ShapeNetCore dataset are shown below. For training the networks, I used all 3D models in ShapeNetCore.

Random sampling

Linear interpolation

Real-time generation

This is an application for visualizing linear interpolation and saving generated data as binvox. You can run this application with the following command:

$ python application.py

I strongly recommend running the app on GPU because it is very slow on CPU.

Dependencies

To train the networks, you need to install three python packages.

The following python packages are required for running the application. If you are using anaconda, you can easily install VTK5 and PyQt4 (or they may already be installed). I show installation commands with conda for VTK5 and PyQt4.

$ conda install -c anaconda vtk=5.10.1
$ conda install -c anaconda pyqt=4.11.4
$ pip install qdarkstyle

Getting started

  1. Install the python packages above.
  2. Download the code from GitHub:
$ git clone https://github.com/maxorange/voxel-dcgan.git
$ cd voxel-dcgan
  1. Specify dataset path and model path in config.py:
...
dataset_path = "path/to/dataset/*.binvox"
params_path = "path/to/model"
...
  1. Train the networks:
$ python train.py
  1. Generate data:
$ python visualize.py
or
$ python application.py

More details are here.

About

A deep generative model of 3D volumetric shapes

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages