GenCAD:MIT 开源项目,一张图片就能生成可编辑的 CAD 模型

MIT(麻省理工学院)的研究团队开源了 GenCAD,一个能够从图片直接生成参数化 CAD 模型的 AI 系统。这不只是生成一个 3D 网格或点云——它生成的是完整的CAD 命令序列,也就是可以编辑、修改、用于制造的”CAD 程序”。

项目地址:https://github.com/ferdous-alam/GenCAD

GenCAD 能做什么

核心功能:图片 → CAD 程序

给 GenCAD 一张物体的图片,它能生成:

  • 完整的参数化 CAD 命令序列(可以编辑、可以修改)
  • 可运行的 3D CAD 模型
  • 支持同一张图片生成多个不同的 CAD 模型(样本多样性)

和传统方法的区别

传统的 AI 3D 生成方法通常输出的是网格(mesh)、体素(voxel)或点云(point cloud),这些格式虽然能展示 3D 形状,但不能直接用于工程制造和设计修改

GenCAD 的不同之处在于,它生成的是参数化的 CAD 命令序列——这是工程师在 CAD 软件中实际使用的格式。你可以直接修改参数、调整尺寸、添加特征,而不需要从头重新建模。

技术架构

GenCAD 的架构分为四个步骤:

  1. 自回归 Transformer 编码器:学习 CAD 命令序列的潜在表示,理解 CAD 程序的结构和语义
  2. 对比学习模型:学习 CAD 命令序列与 CAD 图像的联合表示,让文字描述和 3D 模型在同一个空间中对齐
  3. 潜在扩散模型:以 CAD 图像为条件,生成 CAD 命令序列的潜在表示(类似 Stable Diffusion 的工作方式)
  4. 解码器模型:将 CAD 潜在向量转换为可执行的参数化 CAD 命令序列

适合什么场景

  • 快速原型设计:设计师拍一张草图或参考物的照片,快速生成 CAD 模型作为起点
  • 逆向工程:从现有零件的照片生成 CAD 模型,用于复制或改进
  • 教育和研究:CAD 建模的教学辅助工具,让学生理解参数化设计的概念
  • 产品设计迭代:快速从多个角度的图片生成 CAD 模型,加速设计迭代

如何使用

GenCAD 是一个研究项目,使用方式偏学术:

  1. 克隆 GitHub 仓库
  2. 安装依赖(Python + PyTorch)
  3. 下载预训练模型(论文中提供了训练好的权重)
  4. 运行推理脚本,输入图片,输出 CAD 命令序列

项目提供了 arXiv 论文(arXiv:2409.16294),详细描述了模型架构和训练方法。

局限性

  • 生成的 CAD 模型质量取决于输入图片的质量和角度
  • 目前主要在特定类别的物体上表现较好(机械零件、简单几何体等)
  • 复杂有机形状(如人体、动物)的生成效果可能不理想
  • 需要一定的 Python 和 CAD 基础才能使用
  • 推理速度取决于硬件配置,建议使用 GPU

相关项目

如果你对 AI + CAD 感兴趣,还可以关注这些项目:

  • OpenAI Point-E:点云生成
  • Google DreamFusion:文本到 3D
  • Stability AI Stable 3D:3D 内容生成

GenCAD 的独特之处在于它专注于参数化 CAD 输出,这是工程制造领域真正需要的格式。

简评

对于站长和普通开发者来说,GenCAD 可能暂时没有直接的使用场景。但对于做硬件设计、产品设计、3D 打印的朋友来说,这个项目展示了 AI 在 CAD 领域的巨大潜力。从图片直接生成可编辑的 CAD 模型,这在以前是不可想象的。

值得关注的是,GenCAD 的代码和模型都是开源的,MIT 许可证。如果你有相关的研究或产品需求,可以直接基于它做二次开发。

来源:

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容