UCSG-Net - Unsupervised Discovering
of Constructive Solid Geometry Tree


Kacper Kania, Maciej Zięba, Tomasz Kajdanowicz

Architecture visualization of the UCSG-Net

Signed distance field (SDF) is a prominent implicit representation of 3D meshes. Methods that are based on such representation achieved state-of-the-art 3D shape reconstruction quality. However, these methods struggle to reconstruct non-convex shapes. One remedy is to incorporate a constructive solid geometry framework (CSG) that represents a shape as a decomposition into primitives. It allows to embody a 3D shape of high complexity and non-convexity with a simple tree representation of Boolean operations. Nevertheless, existing approaches are supervised and require the entire CSG parse tree that is given upfront during the training process. On the contrary, we propose a model that extracts a CSG parse tree without any supervision - UCSG-Net. Our model predicts parameters of primitives and binarizes their SDF representation through differentiable indicator function. It is achieved jointly with discovering the structure of a Boolean operators tree. The model selects dynamically which operator combination over primitives leads to the reconstruction of high fidelity. We evaluate our method on 2D and 3D autoencoding tasks. We show that the predicted parse tree representation is interpretable and can be used in CAD software.

Reconstructing 2D shapes


UCSG-Net can work in any number of dimensions of the input. As a first experiment, that also serves as a proof of concept, we evaluate it on the CAD dataset, prepared by Gopal et al. We ran our method and compare it to CSGNet using chamfer distance and IoU with the ground truth. UCSG-Net achieves state-of-the-art in quality of reconstruction and extracts reasonable CSG trees. We emphasize that CSGNet reconstructs more diverse CSG trees, their method is supervised and CSG operations are required at each reconstruction level. We show below couple 2D reconstructions obtained from our method. $\cup^*, \cap^*, -^*$ denote a union, intersection and difference respectively.

2D experiment

Reconstructing 3D shapes


UCSG-Net can reconstruct shapes present in the ShapeNet dataset. While the approach does not beat state-of-the-art in the mesh reconstruction task, it achieves accuracy of the reconstruction similar to other reconstruction-as-shape-abstraction methods, for example Visual Primitives. Additionally, thanks to our interpretable formulation of the model, we can reconstruct shapes using external 3D software (Blender) and evaluate CSG operations directly on meshes. This allows us to quickly retrieve meshes, while still the method learns on SDF representation of objects. We remind that most of SDF methods rely on evaluating many points in 3D space to reconstruct a mesh which is time and memory consuming. On the other hand, UCSG-Net can serve as a prototyping tool for 3D objects that gives instant feedback to the 3D graphic designer. We show several reconstructions below. Note, that the method struggles with providing diverse CSG operations and we want to address it in future works. To this end, it is the first method that can retrieve CSG trees without any supervision, while still maintaining good reconstruction quality.

Predicted airplane CSG tree
Predicted bench CSG tree
Predicted chair CSG tree
Predicted ship CSG tree
Predicted sofa CSG tree
Predicted table CSG tree
Predicted tv CSG tree

Paper


Bibtex


@inproceedings{kania2020ucsgnet, author = {Kania, Kacper and Zi{\k{e}}ba, Maciej and Kajdanowicz, Tomasz}, title = {UCSG-Net -- Unsupervised Discovering of Constructive Solid Geometry Tree}, booktitle = {arXiv}, year={2020} }