アーカイブ / VLM / Computer Vision
参照画像からCADプログラムの誤りを指摘し、コードを修正するReCAD
ReCAD
ReCADの原論文から掲載した図です。細部はクリックして拡大できます。
原論文の図の説明を読む
Figure 1: Overview of different ways ( i.e. , designer, GPT-4o and our ReCAD) to CAD review. The green and red denote correct and incorrect prediction, respectively.
概要
- ReCADは参照画像とCADプログラムを照合し、誤りの指摘文を生成してからコードを修正する。
- CADReviewの試験用データは1,615件で、位置や寸法、ブロック欠落など8種類の誤りを扱う。
- 表1の人手作成プログラムにおける指摘正解率は、ReCAD-QWが63.60、追加学習したLlama 3.2が51.24だった。
補足:編集した模式図で仕組みを確認する
VISUAL EXPLAINER
図でつかむ、ReCADの仕組み
- 01参照画像とCADコード
- 02部品と命令を対応付け
- 03誤りを文章で指摘
- 04コードを修正
原論文の説明をもとにした模式図です。処理の細部は省略しています。
研究の背景
ReCADは、正しい形を示す参照画像とCADプログラムを照合し、誤りを指摘して修正する。CADプログラムは、立体の部品や配置を幾何学的な命令で記述したものだ。設計者は生成された形を図面と見比べ、違いを見つけてコードを直す。
部品が多い立体では、画像中のどの部品がどの命令に当たるかを追う必要がある。内部に隠れた部品は画像だけでは確認しにくい。誤りを生んだ命令まで特定できれば、設計者は確認と修正の対象を絞れる。
手法
ReCADは、画像と文章を扱うマルチモーダル言語モデルを指摘文の生成とコード編集に使う。前段は参照画像、CADプログラム、そのプログラムを描画した画像を受け取り、誤ったコードブロックと誤りの種類を文章で示す。例えば部品の位置が違えば、位置を指定するブロックを指摘する。
後段は、その指摘と画像、コードを受けてプログラムを編集する。学習では部品の説明文や画像上の位置とコードの対応を使い、隠したコードブロックを補う課題で幾何操作を学ぶ。位置の値は8ビットに量子化し、数値部分の予測誤差を重く扱う。さらに前段を、指摘の正しさと編集後の描画画像の類似度を使って調整する。
新規性
著者らは、参照画像とCADプログラムのずれを見つけ、指摘文を使ってコードを修正する「CADレビュー」課題を提案した。ReCADでは、画像中の部品とコードブロックを結び付ける学習を指摘文の生成に、数値を含む幾何操作の学習をコード編集に用いる。
評価用のCADReviewには、誤りのあるプログラム、正しい参照画像、指摘文を収録した。位置や寸法の誤りに加え、制御文の誤りやコードブロックの欠落も扱う。
従来手法との違い
比較対象はGPT-4o、Claude 3.5、Gemini 2.0と、CADReviewで追加学習したLlama 3.2である。ReCADは画像とコードの対応付けを学んだうえで、誤ったブロックと種類を文章で指摘し、その指摘をコード編集に渡す。
著者らの表1では、ReCADの二つの構成はいずれも、同じデータで追加学習したLlama 3.2を掲載された全指標で上回る。この結果が示す範囲はCADReviewでの比較であり、別のCAD言語や実際の設計工程での優位性は未確認である。
実験結果
著者らはCADReviewを学習用17,334件、検証用2,000件、試験用1,615件に分けた。人手作成と機械生成のOpenSCADプログラムを使い、位置、寸法、ブロック欠落など8種類の誤りと、誤りのない例を収録した。指摘の正解率は、誤ったブロックと誤りの種類の両方を当てた場合に数える。
表1の指摘正解率は、機械生成プログラムでReCAD-LAが73.11、ReCAD-QWが71.83、追加学習したLlama 3.2が56.23だった。人手作成では順に59.15、63.60、51.24である。著者らは編集後の立体も点群に関する指標などで評価したが、ここに挙げた値は指摘文の評価であり、修正成功率ではない。
応用の可能性
編集上の応用案 · 論文が実証した用途とは区別しています。
編集上の応用案:一種類の製造部品について、正しい形を示す複数視点の図面と、レビュー対象のOpenSCADプログラムを入力する。担当者は、誤りが疑われるブロック、誤りの種類、修正コードを受け取り、図面と編集差分を確認する。
適応には、その部品群の正しい図面とプログラム、誤った版、該当ブロックと誤りの種類を示すラベル、正しい修正版が必要だ。既存の図面とコードを使う想定で、新たなセンサーは使わない。社内の形状やコードの書き方に合わせた調整が要るかを確かめる。
導入時の検証
導入時の検証案 · 対象データでの再評価が必要です。
導入時の検証案:対象を一種類の部品群に絞り、正しいOpenSCADプログラムと複数視点の図面、誤りを含む版、正しい修正版を集める。担当者が誤ったブロックと種類をラベル付けし、社内の形状や記述に合わせた調整の要否を調べる。入力は既存ファイルとし、新たなセンサーは使わない。
調整用と最終評価用の例を分け、同じ評価例で通常の担当者レビューとReCAD支援レビューを比べる。ブロックと誤りの種類を両方当てた割合、修正後の実行可否、図面との一致、確認と修正に要した時間を記録する。修正案の採否は担当者が判断する。
限界と課題
著者らは課題として、画像から見えない内部部品の検査が難しいこと、回転や位置移動を正確なコード変更に結び付ける必要があることを挙げる。表1では、指摘の正解率は比較した全手法で人手作成プログラムの方が低い。
編集上の検証事項は、社内図面の視点で内部形状を確認できるか、複雑な制御文でも誤ったブロックを特定できるか、修正後のコードが実行できるかである。CADReviewの結果だけでは、実案件での作業時間や採用可能な修正案の割合は判断できない。
出典
元のタイトル・要旨を確認する(英語)
CADReview: Automatically Reviewing CAD Programs with Error Detection and Correction
Computer-aided design (CAD) is crucial in prototyping 3D objects through geometric instructions (i.e., CAD programs). In practical design workflows, designers often engage in time-consuming reviews and refinements of these prototypes by comparing them with reference images. To bridge this gap, we introduce the CAD review task to automatically detect and correct potential errors, ensuring consistency between the constructed 3D objects and reference images. However, recent advanced multimodal large language models (MLLMs) struggle to recognize multiple geometric components and perform spatial geometric operations within the CAD program, leading to inaccurate reviews. In this paper, we propose the CAD program repairer (ReCAD) framework to effectively detect program errors and provide helpful feedback on error correction. Additionally, we create a dataset, CADReview, consisting of over 20K program-image pairs, with diverse errors for the CAD review task. Extensive experiments demonstrate that our ReCAD significantly outperforms existing MLLMs, which shows great potential in design applications.
論文本体の取得範囲に基づく解説。AIが作成した未校閲の記事です。性能の数値は著者の評価条件に依存します。応用例と検証計画は編集上の提案です。解説更新:2026-10-01




