In this work, we propose MiCADangelo, a solution for automating CAD reverse engineering by emulating the way human designers approach the task. As illustrated in the bottom part of the above figure, MiCADangelo begins by analyzing the input scan through a series of 2D cross-sectional slices and predicting key slices to serve as sketch planes. For each selected plane, closed loops are extracted from the cross-section and converted into raster images, which are used to predict both the 2D parametric curves and associated CAD sketch constraints. These constrained sketches are then extruded via an optimization process that leverages the local mesh geometry around each loop. The resulting extruded parts are ultimately merged to produce a structured, fully parametric CAD model.
MiCADangelo offers the advantage of preserving fine-grained geometric details of the input scan while generating fully parametric sketch-extrude sequences, including CAD constraints—an aspect largely unexplored in 3D CAD reverse engineering. The main contributions of this work can be summarized as follows:
Sketch Plane Detection MiCADangelo samples N equally-spaced slicing planes along the x-, y-, and z-axes, producing a set of 2D cross-section slices. These slices are then converted into raster images and supplied with contextual embeddings before being passed into a sketch plane detection network that identifies the most relevant slices.
Constrained Sketch Parameterization Once the key cross-section slices are identified, the next step is to predict the sketch primitives and their associated constraints from these slices to obtain the corresponding constrained sketches. To achieve this, each key crosssection slice is decomposed into separate closed loops. Each loop is converted into a raster image and passed to a network for constrained sketch parameterization with the goal of inferring the corresponding sketch primitives and constraints.
Differentiable Extrusion Optimization After obtaining the constrained sketches, a differentiable extrusion optimization is performed for each sketch w.r.t the input geometry of the mesh to find out the corresponding extrusion parameters. Finally, the obtained extruded elements are assembled together to obtain the final CAD model.
The proposed method is compared with DeepCAD, CAD-Diffuser, Point2Cyl, and CADSIGNet on the DeepCAD and Fusion360 test sets. A quantitative comparison with these methods is provided in the table below. Across datasets, MiCADangelo achieves superior reconstruction performance.
The figure below provides a qualitative comparison with CADSIGNet. Our method consistently generates CAD models that closely resemble the ground-truth geometry across a diverse range of samples.
Due to effective application of CAD sketch constraints, edits in our method propagate correctly through sketch primitives, resulting in modified CAD models that retain structural consistency w.r.t the ground-truth. In contrast, coincident constraints alone are insufficient to preserve overall geometry with displacements leading to geometric distortions.
To evaluate performance on real imperfect scans, we include a comparison on the challenging CC3D dataset that consists of realistic scanning artifacts, such as holes and misoriented normals. The proposed MiCADangelo demonstrates robustness to real-world scans.
The present work is supported by the National Research Fund (FNR), Luxembourg under the BRIDGES2021/IS/16849599/FREE-3D project and Artec3D.
@inproceedings{karadenizmicadangelo,
title={MiCADangelo: Fine-Grained Reconstruction of Constrained CAD Models from 3D Scans},
author={Karadeniz, Ahmet Serdar and Mallis, Dimitrios and Rukhovich, Danila and Cherenkova, Kseniya and Kacem, Anis and Aouada, Djamila},
booktitle={The Thirty-ninth Annual Conference on Neural Information Processing Systems}
}