画像1枚から3Dガウシアンスプラットを生成できる「TripoSplat」がオープンソースで登場

CGソフト

2026年6月2日(現地時間)、オープンソースの3D生成モデル「TripoSplat」が公開され、ComfyUIで利用可能になりました。

TripoSplatとは

Tripoが開発したTripoSplatは、1枚の2D画像をアップロードするだけで、高品質な3Dガウシアンスプラッティング(3D Gaussian Splatting)アセットを生成するAIモデルです。モダンな3Dパイプラインやゲームエンジンで即座に表示・活用することができ、アセット制作、AR/VR、ゲーム開発、シミュレーション環境構築などの強力なツールとして機能します。

また、このモデルはノードベースの画像生成インターフェースであるComfyUIにおいて、リリース初日(Day 0)から公式サポートされました。これにより、ComfyUIのエコシステム内でシームレスに3D生成を組み込むことが可能となっています。

主な特徴

DeG(Density-Sampled Gaussians)

TripoSplatは、キャラクターやプロップ(小物)など、見た目のディテールが重視される「スタイル化された被写体」の生成において特に優れた結果を示します。その秘密は、新たに導入された「適応型密度制御(adaptive density control)」にあります。

本来、3Dガウシアンスプラッティングの最適化においては、複雑な部分の粒子を増やし、平坦な部分の粒子を減らす「分割」と「間引き」が重要です。しかし、昨今の生成モデル(Transformerアーキテクチャ)は固定長のデータを扱うため、この可変的な密度制御を生成プロセスに組み込むことは非常に困難でした。その結果、従来のモデルは全体に均一なディテールを生成してしまい、表現力やデータ効率に限界がありました。

TripoSplatはこの課題を解決するため、具体的な座標を直接予測するのではなく、階層的な密度関数からガウシアンの中心をサンプリングする手法「DeG(Density-Sampled Gaussians)」を導入しました。

強化学習の考え方を応用し、「レンダリング誤差の修正に貢献した場所に高い密度を割り当てる」という報酬ベースの仕組みを取り入れることで、必要な場所にだけ豊かなディテールを配置することが可能になりました。

DeGオートエンコーダのパイプライン概要。DeG表現の3Dオブジェクトを固定サイズの潜在ベクトルに圧縮し、1枚の画像から生成できるようにします。

高い生成品質

学習された密度制御により、TripoSplatは少ないデータ量(ガウシアン数)でも良好なビジュアル品質を保つことができます。

多様なスタイルや幾何学的複雑さを持つ94枚の画像を用いたユーザー評価(32名による399回のペア評価)では、視覚的な忠実度と正確さを示すEloレーティングにおいて、既存の最先端オープンソースモデルを上回るスコアを記録しました。

モデル名TripoSplatHunyuan3D 2.1TRELLIS.2TRELLISUniLat3D
Eloレーティング ↑1137996992975900

予算コントール

さらに、実用面における利点として「推論時の予算制御(Inference-time budget control)」が挙げられます。ガウシアンの配置は学習された密度分布からサンプリングされるため、用途に合わせて生成時のデータ量(最大262,144まで)を任意の数に指定できます。

例えば、以下のような用途(背景用、メインアセット用など)に合わせてガウシアンの生成量を柔軟に変更できます。

  • 背景要素: 数を減らしてストレージを節約し、描画フレームレートを向上させます。
  • ヒーローアセット: 数を増やして、複雑で高忠実度なディテールを維持します。
  • マルチプラットフォーム: 異なる解像度のアセットを即座に抽出し、LOD(Level of Detail)システムとして活用できます。

その他の主な特徴

  • 完全にオープンソース(MITライセンス): モデルの重みと推論コードが商用・非商用問わず利用しやすいMITライセンスで公開されています。
  • 依存関係が少なく軽量なコード: コードベースは triposplat.py と model.py のわずか2ファイル(合計約2,000行)に収められています。transformers や diffusers といった外部のフレームワークに依存せず、ほぼネイティブなPyTorchのみで構築されているため、環境構築時のバージョン競合を避けやすく、様々なプラットフォームへ組み込みやすい設計です。
  • 1枚の画像から生成: 複数の角度から対象を撮影した写真を用意する必要はありません。また、幅広い画像のスタイルに対応しており、汎用性の高い生成が可能です。

利用方法とセットアップ

TripoSplatは、ComfyUIを利用してUI上で手軽に実行する方法と、Python環境を利用してローカルで直接実行する方法の2つをサポートしています。

ローカル環境(Python)での利用

公式推論コードを使用して、ターミナルから直接スクリプトやGradioデモ(Web UI)を実行することも可能です。

まず、モデルの重みをダウンロードし、以下の構造で配置します(Hugging Face CLI等を使用すると便利です)

# HuggingFace CLIを使用したダウンロード例
hf download VAST-AI/TripoSplat --local-dir ckpts/
📂 TripoSplat/
├── 📂 ckpts/
│   ├── 📂 background_removal/
│   │   └── birefnet.safetensors
│   ├── 📂 diffusion_models/
│   │   └── triposplat_fp16.safetensors
│   ├── 📂 clip_vision/
│   │   └── dino_v3_vit_h.safetensors
│   ├── 📂 vae/
│   │   ├── flux2-vae.safetensors
│   │   └── triposplat_vae_decoder_fp16.safetensors

次に、必要なパッケージをインストールして実行します。

# 実行環境のセットアップと推論例の実行
pip install numpy safetensors pillow tqdm
python run_example.py

# または、ブラウザでUI(Gradio)を利用する場合
pip install gradio
python run_gradio.py

ComfyUIでの利用

公式にサポートされているComfyUIを使用すれば、すぐにワークフローに組み込むことができます。

  1. ComfyUIを最新バージョン(v0.23.0以降)にアップデートします。
  2. Hugging Faceからモデルをダウンロードし、以下のディレクトリ構造になるようにファイルを配置します。
📂 ComfyUI/
├── 📂 models/
│   ├── 📂 background_removal/
│   │   └── birefnet.safetensors
│   ├── 📂 diffusion_models/
│   │   └── triposplat_fp16.safetensors
│   ├── 📂 clip_vision/
│   │   └── dino_v3_vit_h.safetensors
│   ├── 📂 vae/
│   │   ├── flux2-vae.safetensors
│   │   └── triposplat_vae_decoder_fp16.safetensors
  1. Template Libraryを開き、「TripoSplat」と検索してワークフローテンプレートを選択します。
  2. 画像をアップロードし、ワークフローを実行します。

出力形式とビューアについて

生成された3Dデータは、標準的な .ply または .splat 形式で出力されます。

これらのファイルは、SuperSplatSparkJSなどの一般的な3Dガウシアンビューアで読み込み、ブラウザ上で直接確認や編集を行うことが可能です。

関連リソース


プロジェクトページへ

コメント

Translate »
タイトルとURLをコピーしました