Research
MiCADangelo: Fine-Grained Reconstruction of Constrained CAD Models from 3D Scans
MiCADangelo: Fine-Grained Reconstruction of Constrained CAD Models from 3D Scans Overview Research area: Computer vision and computer-aided design (CAD) — specifically CAD reverse engineering, the tas

- arXiv
- 2510.23429
- Published
- 2025-10-27
- Authors
- Ahmet Serdar Karadeniz, Dimitrios Mallis, Danila Rukhovich, Kseniya Cherenkova, Anis Kacem, Djamila Aouada
AI summary
MiCADangelo: Fine-Grained Reconstruction of Constrained CAD Models from 3D ScansOverview
Research area: Computer vision and computer-aided design (CAD) — specifically CAD reverse engineering, the task of converting 3D scans (meshes) into editable parametric CAD models.
Technical level: Advanced. The paper assumes familiarity with CAD sketch-extrude workflows, transformer architectures, convolutional encoders, Chamfer-distance metrics, and differentiable optimization.
Scope: The paper introduces MiCADangelo, a pipeline that converts a 3D scan into a fully parametric CAD model by mimicking how human designers perform reverse engineering with 2D cross-sections, and it is the first such method to also predict CAD sketch constraints.
What This Paper Is About
Real-world objects often have no existing CAD model, so designers scan them, but a scan produces an unstructured mesh that cannot be edited parametrically in CAD software. Converting that mesh back into a CAD model (sketch planes, 2D parametric curves, extrusion operations, and geometric constraints) is manual, tedious, and requires CAD expertise.
The paper's goal is to automate this reverse-engineering process while preserving fine-grained geometric detail and, unlike prior work, recovering the sketch constraints that encode a designer's intent so the model still behaves correctly when edited.
Key Contributions
- A reverse-engineering-inspired method that reconstructs fully parametric CAD models from 3D scans while preserving fine-grained geometric details.
- The first approach, to the authors' knowledge, capable of reconstructing CAD models from 3D scans while incorporating sketch constraints.
- Comprehensive experiments on publicly available benchmarks (DeepCAD and Fusion360 test sets, plus CC3D real-world scans) showing the method outperforms existing state-of-the-art CAD reverse-engineering techniques.
- A demonstration that recovering constraints makes reconstructions robust to sketch modifications, an experiment built by extruding 1k closed-loop sketches from SketchGraphs and evaluating impact through the FreeCAD API.
Main Findings
- DeepCAD test set (median Chamfer Distance, lower is better): MiCADangelo achieves 0.20, compared with 0.28 for CAD-SIGNet, 3.02 for CAD-Diffuser, 4.27 for Point2Cyl, and 9.64 for DeepCAD.
- DeepCAD IoU (higher is better): MiCADangelo reaches 80.6, versus 77.6 (CAD-SIGNet), 74.3 (CAD-Diffuser), 73.8 (Point2Cyl), and 46.7 (DeepCAD).
- DeepCAD ECD: MiCADangelo reports 0.46 against 0.74 for CAD-SIGNet. IR: MiCADangelo reports 2.6 versus 0.9 for CAD-SIGNet; the paper states that CAD-SIGNet's low IR is enabled by test-time sampling, and that without it CAD-SIGNet yields an IR of 4.4 on DeepCAD and 9.3 on Fusion360.
- Fusion360 test set: MiCADangelo achieves median CD 0.48, IoU 68.7, IR 3.2, ECD 2.66; CAD-SIGNet reports 0.56, 65.6, 1.6, and 4.14.
- Complex models (4 or more loops, DeepCAD): MiCADangelo gets median CD 0.37, IoU 68.3, IR 4.1, ECD 2.04, versus CAD-SIGNet's 1.34, 49.2, 3.2, and 4.75.
- Models with more than 2 extrusions: MiCADangelo reports median CD 0.46, IoU 64.8, IR 3.0, ECD 2.27, versus CAD-SIGNet's 3.95, 40.6, 5.4, and 9.81.
- Constraint impact under sketch modification: After a small random displacement to a recovered sketch point, MiCADangelo yields median CD 0.38, IoU 81.1, IR 4.3, ECD 1.29, while CAD-SIGNet yields 2.89, 57.4, 3.5, and 20.43. The paper attributes this to constraints propagating edits correctly.
- Sketch plane detection with and without contextual embeddings: precision 0.317 → 0.894, recall 0.292 → 0.864, F1 0.296 → 0.870.
- Plane detection across datasets: DeepCAD precision 0.894, recall 0.864, F1 0.870; Fusion360 0.860, 0.812, 0.820; CC3D 0.803, 0.790, 0.777.
- Sketch parameterization on single-extrusion CAD models (average SCD, lower is better): MiCADangelo 0.283 versus Davinci 0.827.
- Real-world scans (CC3D): MiCADangelo median CD 1.69, IoU 50.8, IR 2.2, ECD 5.93, versus CAD-SIGNet's 2.90, 42.6, 4.4, and 8.68.
- Extrusion optimization: performance improves steadily up to 8 extrusion vectors with minimal impact on inference time.
Methodology in Plain English
The pipeline has three stages, mirroring a human designer's workflow.
Sketch plane detection. The input mesh is sliced with 40 equally spaced cross-section planes per axis (x, y, z), producing 2D slices. Each slice is normalized into a unit bounding box and rendered as a 128×128 binary image, then encoded by a ResNet34 convolutional encoder. Contextual information (slice index, axis identifier, and normalization translation/scale parameters) is added to each embedding before a transformer encoder with 4 layers, 4 attention heads, and embedding dimension 256. A sigmoid classifier marks a slice as a "key" sketch plane when its probability is at least a fixed threshold of 0.5. This network is trained for 20 epochs on the DeepCAD train set with a learning rate of 1×10⁻⁴.
Constrained sketch parameterization. Each key slice is decomposed into closed loops. Each loop is rendered as a binary image and passed through a transformer encoder-decoder to predict a set of sketch primitives (lines, circles, arcs) and sketch constraints (from a list including coincident, concentric, equal, fix, horizontal, midpoint, normal, offset, parallel, perpendicular, quadrant, tangent, and vertical) through two separate heads, following the design of the Davinci method. Because DeepCAD and other 3D CAD datasets lack constraint annotations, this network is first trained on SketchGraphs and then fine-tuned for 50 epochs on a noise-augmented version of SketchGraphs with synthetically generated closed-loop images. The encoder is shared with the plane detection network: it is trained first within the parameterization network, frozen, then fine-tuned during plane detection training.
Differentiable extrusion. For each sketch loop, the sketch plane sets the extrusion direction. The extrusion type (new or cut) is assigned by loop nesting: outermost loops are "new," the label alternates with each level of nesting, and cut loops are treated as infinite cuts. Extrusion lengths are optimized by sampling anchor points along the loop boundary and mesh points, computing point-to-vector distances to the nearest extrusion vector, and minimizing a mean squared distance loss regularized by the squared sum of extrusion lengths. Optimization runs 200 iterations at a learning rate of 2×10⁻⁴, with AdamW used for all experiments. The resulting parts are merged into the final parametric CAD model.
Why This Matters
Impact on research. Prior deep-learning methods split into top-down approaches (fully parametric but weak on fine details) and bottom-up approaches (better local geometry but not fully parametric and not seamlessly usable in CAD workflows). MiCADangelo argues it bridges these by working from 2D cross-sections, and it opens a largely unexplored direction by predicting sketch constraints directly rather than only geometry. The authors note that constraints could also improve parameterization itself, for example by helping enforce orthogonality, and leave that to future work.
Real-world applications.
- Reverse engineering legacy or third-party parts that exist only as physical objects and have no CAD documentation.
- Design iteration and customization starting from a scanned template, the common CAD practice of adapting an existing object to new requirements.
- Post-manufacturing inspection and digital-twin creation, where an as-built part must be captured as an editable model.
- Rapid prototyping and manufacturing pipelines that need editable parametric models rather than meshes.
Industry relevance. The work is affiliated with SnT at the University of Luxembourg and Artec 3D (co-author Kseniya Cherenkova), and is supported by the Luxembourg National Research Fund under BRIDGES2021/IS/16849599/FREE-3D and by Artec3D. Compatibility with standard CAD software is emphasized as a practical requirement, and the CC3D evaluation specifically targets real scans with artifacts such as holes and misoriented normals.
Future Directions
- Extending beyond extrusion to other CAD operations; the paper states the method currently supports only extrusion, as in prior work.
- Handling non-axis-aligned extrusions, since extrusions are currently defined by sketch plane normals, which the authors call suboptimal for such models.
- Supporting complex sketch primitives such as B-splines, which are not yet supported.
- Investigating whether learning sketch constraints can improve sketch parameterization and overall reconstruction geometry, not just robustness to edits.
- Studying failure cases and limitations more fully, which the supplementary material discusses in detail.
Target Audience
Researchers and graduate students in computer vision, 3D geometry processing, and CAD/engineering design automation; industry practitioners building reverse-engineering or scan-to-CAD tools; and readers already familiar with sketch-extrude representations, transformer models, and evaluation metrics such as Chamfer Distance, IoU, ECD, IR, and SCD. Beginners in the field will find the conceptual workflow accessible, but the reproduction details require prior background.
Authors’ abstract
Computer-Aided Design (CAD) plays a foundational role in modern manufacturing and product development, often requiring designers to modify or build upon existing models. Converting 3D scans into parametric CAD representations--a process known as CAD reverse engineering--remains a significant challenge due to the high precision and structural complexity of CAD models. Existing deep learning-based approaches typically fall into two categories: bottom-up, geometry-driven methods, which often fail to produce fully parametric outputs, and top-down strategies, which tend to overlook fine-grained geometric details. Moreover, current methods neglect an essential aspect of CAD modeling: sketch-level constraints. In this work, we introduce a novel approach to CAD reverse engineering inspired by how human designers manually perform the task. Our method leverages multi-plane cross-sections to extract 2D patterns and capture fine parametric details more effectively. It enables the reconstruction of detailed and editable CAD models, outperforming state-of-the-art methods and, for the first time, incorporating sketch constraints directly into the reconstruction process.