世界を動かす技術を、日本語で。

GenCADの翻訳は「GenCAD」となります。これは製品名であり、特に翻訳する必要はありません。

概要

  • GenCAD は画像からパラメトリックな CADプログラム を生成する新しいモデル
  • B-rep などの複雑なCADデータ構造にも対応
  • 一般的なメッシュやボクセル表現よりも 高精度 かつ 修正可能 なCAD生成を実現
  • 画像から CADコマンド履歴 (CADプログラム)を出力
  • 自動設計プロセス の高度化に貢献

GenCAD: 画像条件付きCAD生成モデルの提案

  • GenCAD は画像を入力として、3D CADモデルと パラメトリックなコマンド履歴 を同時に生成するモデル
  • 従来手法 ではメッシュ・ボクセル・点群表現が主流だが、設計や製造用途で求められる 精度や編集性 が不足
  • B-rep (境界表現)などの複雑な構造にも対応し、 真のCADモデル を生成可能
  • 画像から CADプログラム を出力し、ジオメトリカーネルで3Dソリッドモデルへ変換が可能

GenCADのアーキテクチャと技術的特徴

  • 4つの重要なステップ で構成されるアーキテクチャ
    • オートレグレッシブトランスフォーマーエンコーダ によるCADコマンド列の潜在表現学習
    • コントラスト学習 によるCADコマンド列とCAD画像の潜在空間の共同表現学習
    • 潜在拡散モデル による画像条件付きCADコマンド列潜在表現の生成
    • デコーダモデル で潜在表現からパラメトリックCADコマンド列に変換

GenCADの意義と応用可能性

  • 3Dソリッドモデルだけでなく CADプログラム全体 を生成できる点が最大の特徴
  • 画像から 精密かつ修正可能 な3Dモデリングを実現
  • 自動設計・製造プロセス の効率化や設計空間探索の高度化に貢献
  • CAD分野における AI活用の新たな進展 を示唆

Hackerたちの意見

理想的には、LLMと連携できるといいよね?「x,y,zの制約に基づいて車のサスペンションのデザインを作って」みたいに言えるといいな。

入力が画像で、出力がCADモデルだから、マルチモーダルなLLMを使って自然言語 -> 画像 -> CADって流れができそうだね。

OpenSCADを使えば、これがずっと簡単だったよ。こうやってたくさんのクールで複雑なモデルを作ってきた。LLMにやり方を教えるためのプロンプトをまとめたリポジトリも作ったし、そこにはこの方法で作ったモデルもたくさん含まれてるよ… https://github.com/cjtrowbridge/vibe-modeling

同じく。LLMとOpenSCADを使うのは全然ストレスがないよ。

でも、OpenSCADはB-repモデリング(「本物」のCAD、これがそうらしい)とはほとんど関係ないんだよね。

これの推論オーバーヘッドってどのくらい?

彼らが見せてる例はめっちゃ基本的だね。

読者の皆さんには、私のオープンソースのRust BRep CADカーネルも楽しんでもらえるかもね。https://github.com/ecto/vcad それと、ホスティング版もあるよ。https://vcad.io それに、CADアプリに何が必要かについてもちょっと書いたよ! https://campedersen.com/tessellation

言い忘れたけど、これClaudeに接続してるから、OPみたいにCADを使えるんだよね。でも、もう少し手間がかかるけど。似たようなモデルをすぐにトレーニングしたいな!最初の挑戦についても書いたよ。https://campedersen.com/cad0

もし著者がこれを見てたらお願い。自動再生の動画はやめてほしい。誰かがスマホで別の音を聴いてると、いつもこれが勝手に再生されて邪魔になるんだよね。

今日学んだこと:まだ広告ブロッカーなしでインターネットをブラウジングしてる人がいるんだ。

部品の実際の写真や手描きの図面でどれくらい性能が出るか見たかったんだけど、dockerイメージのセットアップを試みたら、すぐにいろんな依存関係がインストールされてないことにぶつかった。例を見てると、元々CADから生成された画像以外ではうまく動かない気がする。

依存関係をソフトウェアと一緒にまとめられるコンテナがあればいいのに。

Dockerイメージを使ったら、依存関係が全然インストールされてなくて、いろいろと問題が出たよ。皮肉なことに、前者は後者を避けるように設計されてるんだよね。

もしかしたら見落としたかも。最初から画像レンダリングがあるなら、すでにCADを持ってる可能性が高いよね。デモとしてはいいけど、実際の役立ち方は何なの?

GenCADをチェックしてみた。シンプルな回路設計には結構便利そうだね。他のCADフォーマットとのインポート/エクスポートに対応してるか気になるな。

いい感じだけど、実際の役立ち方が見えないな。CAD図面の時間がかかる部分は、各機能の正確な寸法や間隔、サイズ、許容差を考えることから来てるし、後で簡単に調整できるように図面を制約することなんだよね。これには全然対応してない。2Dスケッチを描いて生成することはできるかもしれないけど、やっぱり難しい部分は自分でやらないといけないよ。

もし将来的にこのモデルが2D画像から3Dモデルを作れるようになったら、ウォーゲーミングモデルのコストを抑えるのにすごくいい方法だよね。

IKEAのネジが足りない。

入力画像はどうやって生成されてるの?