Skip to content
This repository contains the source codes for the paper "Multi-chart Generative Surface Modeling"
MATLAB Python C++
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Multi-Chart Generative Surface Modeling

This repository contains the source code for the SIGGRAPH Asia 2018 paper: Multi-Chart Generative Surface Modeling .

This paper introduces a 3D shape generative model based on deep neural networks. A new image-like (i.e., tensor) data representation for genus-zero 3D shapes is devised. It is based on the observation that complicated shapes can be well represented by multiple parameterizations (charts), each focusing on a different part of the shape. The new tensor data representation is used as input to Generative Adversarial Networks for the task of 3D shape generation.The effectiveness of the method is demonstrated for the task of anatomic shape generation including human body and bone (teeth) shape generation.

Getting Started

Setting up the environment


The code is compatible with python 3.5 and tensorflow 1.6.

Additional packages: bunch, tqdm

pip install tqdm
pip install bunch

Data pre and post processes

The code is compatible with Matlab


Clone the repository and work from the project directory.

Data and pre-trained model

Download the human models data (~6.3 Gb) and a pre-trained GAN model (~2.6 Gb) on this dataset:


The script downloads, unzips and places the files in the appropriate paths in the project directory.


Generating Examples from Pre-trained Model

After downloading the data and the pre-trained model:

python3 -c=configs/config.json

To inspect the results, run in Matlab: matlab/inspectGeneratedData.m

Preparing a New Database

To create a new database follow the example in: matlab/createDataset.m And then wrap the images to tfrecords:

python3 --database_signature=<database_signature>


To train a new model, create a config file as the template in configs/config.json

python3 -c=configs/<my_config>.json


This research was supported in part by the European Research Council (ERC Consolidator Grant, ”LiftMatch” 771136), the Israel Science Foundation (Grant No. 1830/17). We would like thank the authors of AtlasNet and of Deformable Shape Completion with Graph Convolutional Autoencoders for sharing their results for comparison.

You can’t perform that action at this time.