Community画像github.com

Image 2 Sculpt

たった1枚の画像から、画像に忠実な水密3Dスカルプトを生成します。フロントマップ、生成ビュー、ビジュアルハル、フィットパスにより、Blender上で全工程が記録・再生可能です。

Image 2 Sculpt とは?

Image 2 Sculpt (i2s) は、1枚の画像(AI画像、レンダリング、フィギュアや製品の写真、スケッチ、あるいはアイデアを画像化したもの)から、Blender上で工程ごとに記録された水密な3D彫刻を作成するAIエージェントスキルです。 このスキルは、与えられた画像の表面(マスク、メトリック深度、焦点距離、法線)を抽出・計測し、未確認の側面については生成ビューを用いて補完します。各生成ビューは全周にわたって位置合わせ・スクリーニングされ、ビジュアルハル(視覚的船体)を構築。その後、すべての法線マップ、シルエット、写真の深度に対して多数の記録済みフィットパスを実行し、対称性を考慮した領域処理、ギャップカット、スムージングを適用します。 提供されるCLI (`scripts/i2s.py`) は、ケースのスキャフォールディング、fal APIの予算管理、ビュー登録、カービング、フィッティング、マップチェック、Blenerリプレイ、タイムラプス&ターンテーブル動画生成、GLB/OBJ/STLエクスポート、レポート作成を統合的に行います。「この画像から3Dモデルを作ってほしい」「フィギュアをメッシュに変換したい」「彫刻のタイムラプス動画を見たい」「リファレンス画像と3Dモデルを比較したい」といったユーザーリクエストに最適です。 このスキルは、写真が写す面は写真自身の法線・輪郭・深度に厳密にフィットさせ、隠れた面は生成ビュー間で事前に一致確認した情報のみを利用することで、高い証明可能性と品質を実現します。すべての操作は記録・リプレイ可能で、チェックポイントごとに視覚的なフィードバックが得られるため、透明性のある反復作業が可能です。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/gokayfem/image-to-sculpt/tree/HEAD/skills/image-to-sculpt

Installed? Explore more 画像 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Image 2 Sculpt は何をしますか?

1枚の画像から、証明可能な彫刻が出力されます。画像に写っているすべての表面は、その画像自身の法線、輪郭、深度にフィットし、隠れた表面は、事前に相互に一致確認された生成ビューからのみ作成されます。そして、構築のすべてのステップはBlenderに記録され、再生可能です。

入力ルーティング

どのような入力でも、最終的には同じケース構成になります(i2s.py new CASE --input ...)。詳細は references/inputs.md を参照してください。

入力操作方法備考
キャラクター/クリーチャー/オブジェクトのレンダリングまたはAI画像new → runメインパス
実物の写真(フィギュア、おもちゃ、製品、像)new --kind photo → runMoGeが実際の焦点距離と深度を提供
透明部分のあるカットアウトPNGnew → runアルファチャンネルがマスクになります。マスク呼び出しは不要
複数のものが写った込み入った画像prep --select "the red dragon"SAM-3が被写体を選択
ドローイング、スケッチ、フラットなイラストprep --restylenano bananaが姿勢を保ったまま、まず3Dレンダリングに変換
同一物体の複数写真views --import DIRあなたの写真が生成ビューを置き換えます。角度は位置合わせで自動決定
アイデアのみimagine OUT.png "idea" → new出発点となるクリーンな全身レンダリングを生成
APIキーなしカットアウトPNG(+ 自分で用意したビュー)フロントのみでも動作:シルエットが膨張し、奥行きは背後の推測値になります

ワークフロー

すべてのチェックポイントでラベル付きのビジュアル(checks/sheet_*.png、ビューシート、ターンテーブルフレーム)を提供します。画像が先、数値はその後です。修正ラウンドではステップを追加します。記録されたものは決して編集されません。

  1. スキャフォールディング i2s.py new CASE --input IMG --subject "短い名詞句"。画像を見て、被写体フレーズを自分で書いてください("stocky cartoon troll"、"ceramic owl figurine")。このフレーズはすべてのビュープロンプトに挿入されます。入力画像はsha256とともにコピーされ、最も近いジェネレーターのアスペクト比にパディングされるため、すべてのビューが1つのレンズを共有します。
  2. フロントマップ i2s.py prep CASE(マスク、MoGe-3深度+焦点距離、Marigold法線。単位は被写体に正規化)。先に進む前に ref/front_mask.png と ref/front_normals.png を確認してください。間違った被写体が選択された場合は --select を。ドローイングの場合は --restyle を。
  3. ビュー i2s.py views CASE(9ビュー+1ホールドアウト、推定約$2。最小限の場合は --set minimal で5ビュー)。生成されたすべての画像を確認してください。ポーズが変わっている、余分な手足がある、被写体が切れている場合は不良ビューです。位置合わせは、矛盾するビュー(他のビューのハルに対するIoUが0.80未満)を拒否しますが、見たものを報告してください。どのビューも見ていない領域は、より多くのスムージングではなく、その領域を見渡せる角度からの新しいビュー(--angles "-30:25")が必要です(references/views.md)。
  4. ハル i2s.py hull CASE:すべてのビューの位置合わせ(要求した角度は事前情報にすぎません。左右の入れ替わりは検出され、フロント/バックは維持されます)、再センタリング、スクリーニング、記録されたカービング、対称性の検出。case.json で位置合わせ後の角度を読んでください。i2s.py symmetry CASE on|off で検出されたミラー平面をオーバーライドします。
  5. フィット i2s.py fit CASE --stage all(フォーム→サーフェス→ディテール、38の記録パス)、その後 cut(写真に写っている指、脚、腕と体の間の隙間を開ける)、smooth(ウェブや斑点を除去)、fit --stage polish。i2s.py run CASE はこのデフォルトプランでステップ2~8を順に実行します(references/fitting.md)。
  6. チェックと反復 i2s.py check CASE はビューごとにシート(リファレンス、リファレンス法線、スカルプト、法線誤差、シルエット差分)を作成します。しこり、ウェブ、欠落した隙間、平坦化された特徴がないか確認してください。それらをターゲットにします:parts CASE --prompt "hands" してから fit --stage focus --region hands、cut --region hands、smooth --region box:...(references/checking.md)。改善前/後のシートなしに、修正を主張しないでください。
  7. 仕上げ、Blender、フィルム finish(面スムージング、OBJ/STL)、blender(すべてのステップが写真のカメラから再生、360°ターンテーブル、各ビュー、sculpt.blend、GLB)、film(360°回転で終わる2パネルタイムラプス、ターンテーブル、ビューシート、ヒーロー画像)。(references/blender-and-delivery.md)。
  8. レポートと停止 report は out/REPORT.md、out/index.html、およびステップごとのチャートを作成します。タイムラプス、ビューシート、測定結果の表を示し、弱点を述べて停止します。次にどうするかはユーザーが決定します。

ハードルール

  • 写真は、それが見える範囲を支配します。 生成ビューは、写真が見えない部分を埋めるためだけに使用されます。生成ビューの深度は決して使用されません(ビュー間で数センチ単位で一致しません)。生成ビューの法線を写真の法線と平均化しないでください。
  • すべてのビューを位置合わせし、要求角度を決して信用しないでください。 トロールの場合、生成ビューは要求から20~155°ずれており、ほとんどが左右の入れ替わりでした。検索はこれらのずれを許容しますが、フロントビューは前面に、バックビューは背面に維持します(対称な被写体の背面は前面と輪郭が似ています)。case.json で位置合わせ後の角度を読んでください。
  • カービングの前にスクリーニングしてください。 他のビューと矛盾するビューは、異なる被写体やポーズです。スカルプトをカットする前に、そのビューを拒否し(そしてその理由を伝えてください)、スカルプトをカットしないでください。
  • 1つのビューをホールドアウトします。 そのビューは決してサーフェスを動かさず、そのカメラはフィッティング前に固定されます。フィットに使用されたビューとは別に報告してください。これも生成ビューであるため、真実ではなく一貫性を測定します。
  • 目視だけでなく測定してください。 IoU、輪郭距離、法線角度、リファレンス自身のラフネスに対するラフネス、写真の深度を確認してください。単一の数値が「品質」を表すことはありません。それらを並べて報告してください。
  • 距離フィールドは正確に保たれます。 すべての操作はグリッドを再距離化します(バンド内は正確な三角形距離、それ以外はEDT)。不正確なフィールドのオフセット、フィールド自体のミラーリング、または法線ターゲットのブラーは、このケースで階段状ノイズ、モアレ縞、平坦化された鼻を引き起こしました(references/lessons.md)。
  • すべてを記録してください。 すべてのカーブ、パス、カット、スムージングは build/steps/ と build/log.jsonl のステップとして記録され、Blenderで再生され、タイムラプスで表示されます。記録されたステップを編集せず、新しいステップを追加してください。
  • 有料呼び出し: すべてのfal呼び出しはケースの予算(settings.budget_usd)を通過し、そのリクエストIDは待機前に case.json に保存され、何も盲目的に再送信されません。FAL_KEY は決して印刷されたり書き込まれたりしません。
  • すべてのチェックポイントで視覚的なフィードバック を提供し、すべてのフィルムのフレーム0は完成したサムネイルにします。
  • 何が創作されたかを伝えてください。 正面からしか見えていない被写体の背面は、ジェネレーターの推測です。

リファレンス

ファイル読むタイミング
references/inputs.md通常とは異なる入力のルーティング時、マスク、リスタイル、選択、インポート写真、アイデアのみの場合
references/views.mdビューの生成、判定、位置合わせ、スクリーニング、追加時
references/fitting.mdパスの動作、ステージ、パラメータ、カット/スムーズ/フォーカス、デフォルトプランについて
references/checking.mdマップシートとメトリクスの読み方、ホールドアウトビュー、次に修正すべき点について
references/blender-and-delivery.mdBlender再生、フィルム、エクスポート、レポート、レビューページについて
references/conventions.mdワールドフレーム、カメラ、単位、ファイル形式(新しいツール作成時)
references/lessons.md最初のケースで何が問題だったか、上記のルールが存在する理由

テンプレート:templates/CONTRACT.md(すべてのケースにコピー)、templates/acceptance.json(ターゲット)。

関連スキル