Torch implementation of our ICCV 17 paper: "3D-PRNN, Generating Shape Primitives with Recurrent Neural Networks"
Torch implementation of our ICCV 17 paper: "3D-PRNN, Generating Shape Primitives with Recurrent Neural Networks"
Linux
NVIDIA GPU + CUDA CuDNN
Torch
matio: https://github.com/tbeu/matio
distributions: https://github.com/deepmind/torch-distributions
Matlab (for visualization)
This includes our ground truth primitives (folder "prim_gt") and the original ModelNet mesh (folder "ModelNet10_mesh")
th driver.lua
th driver_depth.lua
th testNet_3dp.lua
th testNet_3dp_depth.lua
For shape generation conditioned on depth, as explained in the paper Sec 5.1, we perform a nearest neighbor query based on the encoded feature of the depth map to retrieve the most similar shape in the training set and use the configuration as the initial state for the RNN. For convenience, we include our pre-computed initial configuration for each test class in folder "data/sample_generation".
We provide in the matlab folder the demo code (demo.m) to parse single primitive. To sequentially parse primitives in batch, see "script_parse_primitive.m". After each run of "script_parse_primitive.m", run "script_parse_primitive_symmetry.m" to get the symmetry. With every three parses, try "script_refine_parse_primitive.m" to refine the parsed primitives.
@inproceedings{zou20173d,
title={3d-prnn: Generating shape primitives with recurrent neural networks},
author={Zou, Chuhang and Yumer, Ersin and Yang, Jimei and Ceylan, Duygu and Hoiem, Derek},
booktitle={The IEEE International Conference on Computer Vision (ICCV)},
year={2017}
}