CAD-Recode: Reverse Engineering CAD Code from Point Clouds
Computer-Aided Design (CAD) models are typically constructed by sequentially
drawing parametric sketches and applying CAD operations to obtain a 3D model.
The problem of 3D CAD reverse engineering consists of reconstructing the sketch
and CAD operation sequences from 3D representations such as point clouds. In
this paper, we address this challenge through novel contributions across three
levels: CAD sequence representation, network design, and dataset. In
particular, we represent CAD sketch-extrude sequences as Python code. The
proposed CAD-Recode translates a point cloud into Python code that, when
executed, reconstructs the CAD model. Taking advantage of the exposure of
pre-trained Large Language Models (LLMs) to Python code, we leverage a
relatively small LLM as a decoder for CAD-Recode and combine it with a
lightweight point cloud projector. CAD-Recode is trained solely on a proposed
synthetic dataset of one million diverse CAD sequences. CAD-Recode
significantly outperforms existing methods across three datasets while
requiring fewer input points. Notably, it achieves 10 times lower mean Chamfer
distance than state-of-the-art methods on DeepCAD and Fusion360 datasets.
Furthermore, we show that our CAD Python code output is interpretable by
off-the-shelf LLMs, enabling CAD editing and CAD-specific question answering
from point clouds.
6763ec396daaeee5258221c2
Danila Rukhovich
claimed_verified
2024-12-19T18:00:54.252Z
6394434e872e49c02f5934c3
/avatars/d77228347a45868e7984607b18a98c29.svg
Danila Rukhovich
user
filapro
6763ec396daaeee5258221c3
Elona Dupont
6763ec396daaeee5258221c4
Dimitrios Mallis
admin_assigned
2024-12-20T10:06:34.326Z
667c2c74aeba4a9f63557291
/avatars/7a9e8182dcbf012c089e49b21064e4ee.svg
Dimitrios Mallis
user
malldimi1
6763ec396daaeee5258221c5
Kseniya Cherenkova
6763ec396daaeee5258221c6
Anis Kacem
extracted_confirmed
2025-01-03T10:29:23.854Z
6777ba76b0e38471644d2bf9
/avatars/affc04e85243e21f757d5f59e7db743a.svg
anis kacem
user
aniskacem
6763ec396daaeee5258221c7
Djamila Aouada
CAD-Recode: Reverse Engineering CAD Code from Point Clouds
Computer-Aided Design (CAD) models are typically constructed by sequentially
drawing parametric sketches and applying CAD operations to obtain a 3D model.
The problem of 3D CAD reverse engineering consists of reconstructing the sketch
and CAD operation sequences from 3D representations such as point clouds. In
this paper, we address this challenge through novel contributions across three
levels: CAD sequence representation, network design, and dataset. In
particular, we represent CAD sketch-extrude sequences as Python code. The
proposed CAD-Recode translates a point cloud into Python code that, when
executed, reconstructs the CAD model. Taking advantage of the exposure of
pre-trained Large Language Models (LLMs) to Python code, we leverage a
relatively small LLM as a decoder for CAD-Recode and combine it with a
lightweight point cloud projector. CAD-Recode is trained solely on a proposed
synthetic dataset of one million diverse CAD sequences. CAD-Recode
significantly outperforms existing methods across three datasets while
requiring fewer input points. Notably, it achieves 10 times lower mean Chamfer
distance than state-of-the-art methods on DeepCAD and Fusion360 datasets.
Furthermore, we show that our CAD Python code output is interpretable by
off-the-shelf LLMs, enabling CAD editing and CAD-specific question answering
from point clouds.
CAD-Recode translates point clouds into interpretable Python code for 3D CAD model reconstruction using a lightweight network and pre-trained LLMs, outperforming existing methods with fewer points.
CAD sequence representation network design dataset Python code CAD-Recode Large Language Models (LLMs) point cloud projector mean Chamfer distance CAD Python code