DI-PCG: Diffusion-based Efficient Inverse Procedural Content Generation
for High-quality 3D Asset Creation
Abstract
手続き型コンテンツ生成(PCG)は高品質な3Dコンテンツの作成に強力であるが、所望の形状を生成するように制御することは困難であり、しばしば広範なパラメータ調整を必要とする。逆手続き型コンテンツ生成は、入力条件下で最適なパラメータを自動的に見つけることを目指している。しかし、既存のサンプリングベースおよびニューラルネットワークベースの手法は、依然として多数のサンプル反復や限られた制御性に悩まされている。本稿では、一般的な画像条件からの逆PCGのための新規かつ効率的な手法であるDI-PCGを提案する。その核心は軽量な拡散トランスフォーマーモデルであり、PCGパラメータを直接ノイズ除去の対象として扱い、観測画像をパラメータ生成を制御する条件として扱う。DI-PCGは効率的かつ効果的である。わずか7.6Mのネットワークパラメータと30 GPU時間の訓練で、パラメータを正確に復元し、実世界の画像にも良好に一般化する優れた性能を示す。定量的および定性的な実験結果は、逆PCGおよび画像から3D生成タスクにおけるDI-PCGの有効性を検証している。DI-PCGは効率的な逆PCGのための有望なアプローチを提供し、パラメトリックモデルを使用して3Dアセットを構築する方法をモデル化する3D生成パスに向けた価値ある探索ステップを表している。
1 Introduction
手続き型コンテンツ生成(PCG)は、アルゴリズムプログラムとルールを通じて高品質な3Dコンテンツを設計・生成する強力な手段であり、ゲームや映画産業で幅広く応用されている。数十年にわたり、L-system [37, 55, 56]、シェイプおよびスプリットプログラム [77]、Blenderジオメトリノード [12]などの異なるドメイン固有言語文法を通じて、木 [44, 74, 57]、地形 [16, 17]、建物 [47]、材料 [22, 26]、都市 [51, 92]、さらには自然界全体 [59]といった様々な3Dコンテンツを自動生成する多くの研究が提案された。しかしながら、明示的なパラメータ定義が示されていても、PCGを使用して望ましい3Dアセットを作成することは非常に困難であり、煩雑なパラメータ調整が必要となる。これにより、テキストや画像から3D生成といったより広範な応用が妨げられている。
PCGにおけるこの制御の困難さは、逆手続き型コンテンツ生成(I-PCG)につながる。I-PCGは、PCGタスクを逆転させること、すなわち与えられた観測から最適なパラメータを自動的に推定することを目的としている。観測は画像、3D、あるいはその他の制約条件である可能性がある。他の非線形および非微分逆問題と同様に、確率的サンプリングベースの手法がI-PCGのゴールデンルールであり、一連のサンプルが実施され、観測値に基づく事後分布を近似するためにスコア化される。マルコフ連鎖モンテカルロ法(MCMC)[45, 24]は、最も代表的な手法の一つである。MCMCの多くの変種[20, 79, 64]や異なる尤度評価指標[81, 75]が、サンプリング効率と近似精度を向上させるために探求されている。残念ながら、ほとんどのサンプリングベースの手法は依然として数百から数千回の反復を必要とし、各反復で手続き型生成器の順伝播と評価を行うため、逆問題を解くのに長時間を要する。主な理由は、サンプリングベースの手法がターゲット分布に関する事前データを持たないため、多数のサンプルを用いてゼロから近似する必要があるためである。これに動機づけられ、いくつかの研究[29, 49, 65, 21, 52, 95, 96]は、深層ニューラルネットワークを利用してPCGパラメータと入力観測間の分布対応を学習することを目指している。特定の入力条件(例:スケッチ)やカテゴリに対しては印象的な逆問題解決性能を示すものの、これらの手法は多くの場合、限られた条件適応能力、実世界データに対する貧弱な汎化性能、特定のオブジェクトカテゴリに対する特殊な設計に悩まされ、I-PCGおよび3D生成の一般的な方法としての使用を妨げている。
本稿では、一般的な画像条件からの効率的な逆PCGのための革新的な拡散モデルベースの手法であるDI-PCGを提示する。その核心は軽量な拡散トランスフォーマーモデルであり、PCGパラメータを直接的にノイズ除去の対象として扱い、観測画像をパラメータ生成を制御する条件として用いる。反復的なノイズ除去スコアマッチング訓練を通じて、拡散モデルは現在の手続き型生成器のパラメータ空間に適合することを学習し、条件画像によって制御されたPCGパラメータの目標事後分布から数秒以内に効率的なサンプリングを実行できる。サンプリングされたパラメータはPCGに供給され、画像から高品質な3Dアセットの生成が可能となる。
我々が提案するDI-PCGは効率的かつ効果的である。ネットワークパラメータはわずか7.6M、訓練には30 GPU時間、サンプルの抽出には数秒しか要さないため、リソースに制約のあるシナリオに適している。効率性に加えて、DI-PCGは手続き型生成器のパラメータ空間に効果的に適合し、対応するパラメータを正確に復元し、画像条件に視覚的基盤モデルの特徴を採用しているため、実世界の画像にも良好に一般化できる。さらに、DI-PCGは自己完結型であり、訓練データの生成に現在の手続き型生成器のみに依存し、外部データ収集の労力を必要としないにもかかわらず、実世界の未見データにも良好に一般化する。定量的および定性的実験の両方が、逆PCGおよび画像から3D生成タスクにおけるDI-PCGの有効性を明確に検証している。図1にいくつかの例を示す。生成された3Dアセットは高品質で、条件画像と一致しており、下流のアプリケーションですぐに使用できる。
DI-PCGは、効率的な逆PCGのための分布事前確率を学習するために拡散モデルを活用する有望な方法を示している。従来のサンプリングベースまたはフィードフォワードニューラルネットワークベースの手法と比較して、DI-PCGは大幅な速度向上と優れた一般化能力を特徴としている。 別の観点から見ると、DI-PCGは手続き型生成器とそのパラメータを明示的な3D表現として活用し、その分布をモデル化するための拡散モデルを設計することで、高品質で即時使用可能かつ編集可能な画像から3Dアセット生成を可能にしている。DI-PCGは、3Dアセットの構築方法をパラメトリックモデルでモデル化し、3Dオブジェクト自体をモデル化するのではなく、入力条件に基づいてパラメトリックモデルを逆決定できる、有望な3D生成パスに向けた価値ある探索段階を表している。
2 Related Works
2.1 Procedural Content Generation and Inverse
手続き型コンテンツ生成(PCG)は、コンピューターグラフィックスとビジョンコミュニティにおける長年の研究課題である。L-システム[37]は当初、生物学的モデリングのために提案され、後に植物の幾何学的モデリングに拡張された[57, 44]。異なるオブジェクトカテゴリーを簡潔に記述するために、形状文法[77, 38]、分割文法[84, 47]など、多くのドメイン固有言語が導入された。これらは木[74, 57]、人工的なファサードや建物[66]の生成に用いられた。形状以外にも、PCGはテクスチャ[13]や材質[70, 27]の生成にも広く使用されている。Blender[12]のような現代の商用ソフトウェアの強力なノードグラフ文法を活用し、Infinigen[59]とInfinigen Indoors[60]は、オブジェクト、自然資産、構成的シーンを含む多様な手続き型ジェネレーターの広範なコレクションを開発し、合成データ生成を大きく促進した。最近では、大規模言語モデル(LLM)の成功に触発され、多くの研究[78, 88, 28, 30, 34, 94, 2, 32, 73]が、LLMの推論能力を活用して3D創作や対話のための手続き型ジェネレーターを自動的に設計または編集することを提案している。これらの研究は、特定の制約のあるシナリオに限定されているものの、コンテキストを持つ一般的なLLMエージェントを使用してPCGのためのドメイン固有言語を生成する有望な試みを示している。
多様性のある高品質な3Dアセットを生成する能力があるにもかかわらず、PCGの主要な欠点の一つは制御の難しさである。1つか2つの特定のパラメータを調整するのは簡単だが、望ましい形状を生成するために数十のパラメータの適切な組み合わせを見つけるのは非常に複雑である。そこで、逆PCGが導入され、観測結果から最適なパラメータを逆に見つけることが可能になった。多くの研究[5, 3, 89, 75, 81]では、マルコフ連鎖モンテカルロ(MCMC)法を用いてパラメータを探索している。複数のパラメータグループをより適切に扱うために、Taltonら[79]は可逆ジャンプMCMCを採用し、[62, 63]も同様の精神を持っている。Ritchieら[64]は、PCGの前方計算の総数を減らすために、確率的に順序付けられた逐次モンテカルロ法をさらに提案した。遺伝的アルゴリズム[25]のような他の最適化アルゴリズムも逆PCGのために研究された。PICO[33]は、対話的な制御のために制約最適化器を備えた手続き型モデルを設計した。連続的な最適化を可能にするために、いくつかの研究[19, 76, 18]は、PCGプロセスを微分可能にし、勾配を用いて最適化を試みた。
ビジョン問題を解決するためのニューラルネットワークの大きな成功により、多くの研究が入力条件をPCGパラメータに直接マッピングするためにニューラルネットワークを使用することを探求してきた。Ritchieら[65]は、特定のランダムパラメータが訓練されたネットワークによって予測される、ニューラル誘導手続き型モデルを構築した。CSGNet[68]とInverseCSG[15]は、CADで使用される手続き型モデリングの特殊なクラスとみなすことができる構成的ソリッドジオメトリ(CSG)のパラメータ推論に焦点を当てている。[49, 29, 52]では、スケッチを通じて手続き型モデルを制御し、畳み込みニューラルネットワーク(CNN)を学習してスケッチ特徴を抽出し、パラメータを回帰している。Guoら[21]とDeepTree[95]は、木のような分岐構造に焦点を当て、それを扱うための特定の設計を導入している。これらの方法とは異なり、我々のDI-PCGはスケッチ以外の一般的な画像を入力条件として可能にし、コードをほとんど修正せずにあらゆる手続き型ジェネレーターをサポートする。最近の拡散モデルからのベストプラクティス、例えば入力画像の事前学習された視覚基盤モデル特徴を条件として使用することや、トランスフォーマーベースの拡散ノイズ除去アーキテクチャを活用することで、DI-PCGは異なるジェネレーターに対して正確で汎用性のある逆問題の結果を達成している。
2.2 Diffusion Models for 3D Generation
拡散モデルは生成モデリングにおいて顕著な進歩を遂げ、3D生成においてもその人気が高まっている。3Dデータの希少性により、初期の研究ではスコア蒸留サンプリング[54]とその改良版[9, 46, 67, 83, 36]を通じて2D拡散事前分布を活用しようと試みた。この蒸留は本質的に視点の一貫性と3D事前分布を欠いており、しばしばぼやけたテクスチャや多頭ヤヌス問題につながる。この問題を緩和するため、Zero-1-to-3[39]は必要なカメラ視点下で新しい視点画像を生成し、生成されたマルチビュー画像を使用して3D表現を再構築することを提案した。この研究の流れに沿って、多くの研究[72, 40, 71, 42, 58, 82]は、慎重に設計された視点相互作用を通じて直接マルチビュー画像を生成するために2D拡散モデルのファインチューニングを探求し、視点の一貫性を大幅に改善し、それによって3D生成に利益をもたらした。
Objaverse[14]のような大規模3Dデータセットの出現により、3Dネイティブな拡散モデルの訓練が可能になった。点群、ボクセル、メッシュ、陰関数などの様々な種類の3D形状表現が探求されている。Point-E[48]は点群上のノイズ除去拡散の先駆けとなった。LION[80]とSLIDE[43]はさらに、コンパクト性を高めるために点群VAEを用いた潜在点拡散モデルを導入した。 3D表面を直接モデル化するために、PolyDiff[1]はメッシュを量子化された三角形スープとして表現し、三角形の頂点座標に拡散モデルを適用した。一方、MeshDiffusion[41]は、変形可能なマーチングテトラヘドラ[69]表現をメッシュに使用し、その上で拡散モデルを訓練した。疎なボクセル階層やOctreeベースの潜在ボクセル表現を利用することで、XCube[61]とOctFusion[86]は3Dボクセルのメモリ-解像度のトレードオフを緩和し、潜在ボクセル上で拡散モデルを訓練し、詳細な3D生成結果を達成した。
上記の明示的な3D表現とは異なり、多くの研究は高い圧縮率、無限のデコード解像度、本質的な滑らかさを特徴とする陰関数表現に焦点を当てている。SDFusion[10]は3D VAEを用いてノイズ除去された潜在変数からSDFフィールドをデコードした。3DGen[23]とDirect3D[85]はトリプレーン[6]を表現として選択し、一方Michelangelo[93]、3DShape2VecSet[90]、CLAY[91]はVAEを用いた純粋な3D形状潜在ベクトルを採用し、スケーリング能力を完全に解放した。
画像条件付き逆PCGは画像から3D生成と見なすことができる。この観点から、DI-PCGは本質的に手続き型生成器とそのパラメータを強力で非常にコンパクトで編集可能な3D表現として扱い、その上に高品質な3D生成のための拡散モデルを訓練する。
3 Methods
3.1 Preliminaries
プロシージャル生成器。 プロシージャル生成器は、アセットを作成するためのパラメータセットを持つアルゴリズム的ルールを定義する。生成器は通常、椅子、花瓶、木などの特定のカテゴリーのオブジェクトを扱う。例えば、椅子は椅子の背もたれの種類、脚の高さ、バーの数、肘掛けの有無などを記述する選択されたパラメータによってプロシージャルに構築される。理論的には、パラメータをランダムにサンプリングすることで無限に多くのバリエーションのオブジェクトを生成できる。実際には、生成器が多様なインスタンスを提供する能力は、そのルールの一般性と粒度によって決定される。
拡散モデル。 拡散モデルは、順方向のノイズ付加過程と逆方向のノイズ除去過程から構成される。順方向過程は、クリーンなデータ をガウス分布 に徐々に破壊する: <math alttext="q(\mathbf{x_{t}}|\mathbf{x_{0}})=\mathcal{N}(\mathbf{x_{t}};\sqrt{\bar{\alpha}%