Skip to content
LOGAN: Unpaired Shape Transform in Latent Overcomplete Space
Python C++ Cuda Shell
Branch: master
Clone or download
Latest commit f270048 Nov 11, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
data add code Nov 9, 2019
figure add code Nov 9, 2019
latent_3d_points add code Nov 9, 2019
pointnet_plusplus add code Nov 9, 2019
AE.py add code Nov 9, 2019
LICENSE add code Nov 9, 2019
README.md Update README.md Nov 11, 2019
__init__.py add code Nov 9, 2019
cmd.sh add code Nov 9, 2019
config.py add code Nov 9, 2019
download_dataset.sh add data downloader Nov 5, 2019
encoders_decoders.py add code Nov 9, 2019
general_utils.py add code Nov 9, 2019
generators_discriminators.py add code Nov 9, 2019
in_out.py add code Nov 9, 2019
run_ae.py add code Nov 9, 2019
run_translator.py Update run_translator.py Nov 9, 2019
translator.py add code Nov 9, 2019

README.md

LOGAN: Unpaired Shape Transform in Latent Overcomplete Space

Kangxue Yin, Zhiqin Chen, Hui Huang, Daniel Cohen-Or, Hao Zhang.

[Paper] [Supplementary material]

teaser

Prerequisites

  • Linux (tested under Ubuntu 16.04 )
  • Python (tested under 3.5.4)
  • TensorFlow (tested under 1.12.0-GPU )
  • numpy, scipy, etc.

The code is built on the top of latent_3d_points and pointnet2. Before run the code, please compile the customized TensorFlow operators under the folders "latent_3d_points/structural_losses" and "pointnet_plusplus/tf_ops".

Dataset

  • Download the dataset HERE.
  • If you are in China, you can choose to download it from HERE.

Usage

An example of training and testing the autoencoder:

python -u run_ae.py  --mode=train   --class_name_A=chair    --class_name_B=table    --gpu=0
python -u run_ae.py  --mode=test    --class_name_A=chair    --class_name_B=table    --gpu=0   --load_pre_trained_ae=1

Training and testing the translator:

python -u run_translator.py  --mode=train  --class_name_A=chair    --class_name_B=table   --gpu=0
python -u run_translator.py  --mode=test   --class_name_A=chair    --class_name_B=table   --gpu=0   --load_pre_trained_gan=1

Upsampling:

Hmm.. I haven't got enough time to put this into the release version of the code. I will work on it as soon as I get time. 

Please note that all the quantitative evaluation results we provided in the paper were done with point clouds of size 2048, i.e., before upsampling.

Citation

If you find our work useful in your research, please consider citing:

@article {yin2019logan,
    author = {Kangxue Yin and Zhiqin Chen and Hui Huang and Daniel Cohen-Or and Hao Zhang}
    title = {LOGAN: Unpaired Shape Transform in Latent Overcomplete Space}
    journal = {ACM Transactions on Graphics(Special Issue of SIGGRAPH Asia)}
    volume = {38}
    number = {6}
    pages = {198:1--198:13}
    year = {2019}
}

Acknowledgments

The code is built on the top of latent_3d_points and pointnet2. Thanks for the precedent contributions.

You can’t perform that action at this time.