CADCrafter: Generating Computer-Aided Design Models from Unconstrained Images¶
作者: Cheng Chen, Xiaohui Zeng, Yuwei Li, Hippolyte Music, Tobias Ritschel, Sanja Fidler, Florian Shkurti
机构: NTU / ASTAR / UT Austin
会议: CVPR 2025
arXiv*: 2504.04753
研究背景与动机¶
从单张图像生成可编辑的 CAD 模型是计算机视觉和图形学的长期目标。现有方法通常依赖参数化曲面拟合或基于模板的检索,但这些方法面临严重局限:
CAD 程序的离散性:CAD 模型由一系列离散的建模操作(如拉伸、倒角、布尔运算)组成,传统的连续优化方法难以直接处理这种离散序列结构
图像到 CAD 的巨大语义鸿沟:RGB 图像包含纹理、光照等非几何信息,而 CAD 程序只关注纯几何操作,两者之间的映射极其困难
数据匮乏问题:高质量的图像-CAD 配对数据极度稀缺,现有数据集(如 DeepCAD)仅包含 CAD 程序而无对应图像
生成质量难以保证:生成的 CAD 程序可能包含语法错误或几何不一致,导致无法通过 CAD 编译器编译
这些问题促使作者提出 CADCrafter:一个基于潜在扩散模型的 Image-to-CAD 系统,通过几何编码器桥接图像与 CAD 程序之间的语义鸿沟,并利用 DPO 微调确保生成质量。
方法详解¶
整体框架¶
CADCrafter 采用两阶段训练策略:
- 第一阶段:训练 CAD 序列的 VAE 和潜在扩散模型
- 第二阶段:引入几何条件和 DPO 微调
几何编码器(Geometry Encoder)¶
为了弥合 RGB 图像与 CAD 程序之间的语义鸿沟,作者设计了多模态几何编码器:
| 特征类型 | 提取方式 | 作用 |
|---|---|---|
| 深度图 (Depth) | 预训练单目深度估计 | 提供全局3D形状信息 |
| 法线图 (Normal) | 预训练法线估计 | 捕捉局部表面方向 |
| DINO-V2 语义特征 | 预训练 DINO-V2 | 提供高层语义理解 |
三种特征通过特征融合模块(Feature Fusion Module)整合后,作为条件注入扩散模型的交叉注意力层。
潜在扩散模型¶
CAD 程序被表示为一系列命令序列 \(S = \{c_1, c_2, ..., c_N\}\),每个命令 \(c_i\) 包含操作类型和参数。具体流程:
- VQ-VAE 编码:将 CAD 命令序列编码为潜在向量 \(z = E(S)\)
- 前向扩散:\(q(z_t | z_{t-1}) = \mathcal{N}(z_t; \sqrt{1-\beta_t} z_{t-1}, \beta_t I)\)
- 反向去噪:条件扩散模型 \(p_\theta(z_{t-1} | z_t, c_{geo})\),其中 \(c_{geo}\) 为几何条件
- 解码:\(\hat{S} = D(\hat{z}_0)\)
DPO 微调(Direct Preference Optimization)¶
关键创新之一是使用 CAD 编译器作为自动质量评判器:
- 正样本:能通过 CAD 编译器成功编译的生成程序
- 负样本:编译失败或几何误差大的生成程序
- DPO 损失:\(\mathcal{L}_{DPO} = -\log \sigma(\beta (\log \frac{\pi_\theta(y_w|x)}{\pi_{ref}(y_w|x)} - \log \frac{\pi_\theta(y_l|x)}{\pi_{ref}(y_l|x)}))\)
- 超参数 \(\beta = 20\),控制偏好学习的强度
DPO 微调显著提升了生成程序的编译通过率和几何精度。
多视角到单视角蒸馏¶
训练时使用多视角渲染作为条件(提供更完整的几何信息),推理时通过知识蒸馏使模型只需单视角输入即可工作:
- 教师模型:以多视角几何特征为条件
- 学生模型:以单视角几何特征为条件
- 蒸馏损失:对齐两者在潜在空间中的去噪预测
实验结果¶
DeepCAD 数据集¶
| 方法 | Acc_cmd ↑ | Acc_param ↑ | Med CD ↓ | Invalid ↓ |
|---|---|---|---|---|
| DeepCAD | 78.41% | 72.15% | 0.082 | 12.3% |
| SkexGen | 80.56% | 74.33% | 0.067 | 9.8% |
| CADCrafter (ours) | 83.23% | 77.89% | 0.049 | 4.2% |
消融实验¶
| 配置 | Acc_cmd | Med CD |
|---|---|---|
| 无几何编码器 | 76.8% | 0.091 |
| 仅 Depth | 79.4% | 0.072 |
| Depth + Normal | 81.5% | 0.058 |
| 全部特征 (D+N+DINO) | 82.1% | 0.053 |
| + DPO 微调 | 83.23% | 0.049 |
RealCAD 数据集¶
作者构建了 RealCAD 数据集用于验证真实场景性能: - 包含 3D 打印实物模型的多角度拍摄图像 - CADCrafter 在真实图像上同样展现出稳健的 CAD 重建能力 - 定性结果显示生成的 CAD 模型保持了良好的拓扑结构和可编辑性
核心创新点¶
- 几何条件桥接:通过 Depth + Normal + DINO-V2 的多模态几何编码器,有效弥合图像与 CAD 程序之间的语义鸿沟
- DPO 微调策略:创新性地使用 CAD 编译器作为自动偏好标注工具,通过 DPO 提升生成质量
- 多视角蒸馏:训练时利用多视角信息,推理时仅需单视角输入
- RealCAD 数据集:首个包含 3D 打印真实物体的 Image-to-CAD 评测数据集
局限性¶
- 目前仅支持由拉伸操作构成的 CAD 模型,不支持旋转体、扫掠体等复杂操作
- 对遮挡严重或纹理复杂的图像,深度/法线估计可能不够准确
- DPO 微调依赖 CAD 编译器的二元反馈(成功/失败),缺少更细粒度的质量评估
相关工作¶
- DeepCAD: 基于 Transformer 的 CAD 序列生成先驱工作
- SkexGen: 基于草图-拉伸分离的 CAD 生成
- Point2CAD: 从点云重建 CAD
- DPO 在 LLM/扩散模型中的对齐应用
相关论文¶
- [ECCV 2024] HiEI: A Universal Framework for Generating High-quality Emerging Images from Natural Images
- [ICCV 2025] Auto-Regressively Generating Multi-View Consistent Images (MV-AR)
- [ICCV 2025] Φ-GAN: Physics-Inspired GAN for Generating SAR Images Under Limited Data
- [ACL 2025] Generating Synthetic Relational Tabular Data via Structural Causal Models
- [CVPR 2025] Locally Orderless Images for Optimization in Differentiable Rendering