
2025/12/17 7:09
TRELLIS.2: state-of-the-art large 3D generative model (4B)
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
**概要
TRELLIS.2は、4 Bパラメータを備えた最先端のフィールドフリー・ボクセルモデルで、通常の画像を数秒で高解像度かつ完全にテクスチャリングされた3‑Dアセットへと変換します。O‑Voxelデータ構造と疎な畳み込みを使用し、512³から1536³までのボクセルメッシュを生成し、Base Color、Roughness、Metallic、Opacityなどの完全な物理ベースレンダリング(PBR)属性を備えます。変換パイプライン全体はCPU上で10秒未満、CUDA上では100ミリ秒以下で実行され、NVIDIA H100 GPUでの推論は解像度に応じて3〜60秒です。モデルは完全ロスレスで、任意のトポロジー(オープンサーフェス、非多面体幾何学、内部構造を含む)をサポートし、O‑Voxel、FlexGEMM、CuMesh、およびフラッシュアテンションバックエンドなどの軽量ライブラリに依存します。MIT ライセンスで公開されており、Linux、CUDA 12.4搭載の24 GB以上のNVIDIA GPU、Conda、Python 3.8+ が必要です。事前学習済み重み(TRELLIS.2‑4B)は Hugging Face で入手可能です。計画されているリリースには研究論文、推論コード、事前学習チェックポイント、Hugging Face Spaces 上のデモ、2025年12月までに実装予定の形状条件付きテクスチャ生成、および年末までに完成する完全なトレーニングコードが含まれます。この技術は、ゲーム開発・設計・AR/VR・シミュレーションワークフローへ統合可能なフォトリアリスティック3‑Dコンテンツ生成の高速パイプラインを提供します。
本文
ネイティブでコンパクトな構造化潜在表現による3D生成
TRELLIS.2
4 Bパラメータを持つ最先端の大規模3D生成モデル。高忠実度の画像→3D生成を目的としています。
- O‑Voxel と呼ばれる新しい「フィールドフリー」疎ボクセル構造を活用し、複雑なトポロジー、鋭い特徴、完全なPBRマテリアルを持つ任意の3Dアセットを再構築・生成します。
✨ 主な機能
-
高品質・高解像度・効率性
- ベンチマーク版DiTを用いて、高解像度で完全にテクスチャ化されたアセットを卓越した忠実度で生成。
- 16×の空間ダウンサンプリングを行うSparse 3D VAEで、アセットをコンパクトな潜在空間へエンコードします。
解像度 総時間* 分解 (形状 + マテリアル) 512³ 約 3 s 2 s + 1 s 1024³ 約 17 s 10 s + 7 s 1536³ 約 60 s 35 s + 25 s NVIDIA H100 GPUでテスト済み。
-
任意トポロジー対応
- O‑Voxelはイソサーフェスフィールドの限界を突破し、損失のない変換なしに複雑構造を堅牢に扱います:
- 開放表面(例:衣類、葉)
- 非流形ジオメトリ
- 内部閉じた構造
- O‑Voxelはイソサーフェスフィールドの限界を突破し、損失のない変換なしに複雑構造を堅牢に扱います:
-
豊富なテクスチャモデリング
- Base Color, Roughness, Metallic, Opacity など任意の表面属性をモデル化。フォトリアルレンダリングと透明度サポートが可能です。
-
ミニマリスト処理
- 即時、レンダリング不要、最適化不要の変換:
- < 10 s (単一CPU):テクスチャ付きメッシュ → O‑Voxel
- < 100 ms (CUDA):O‑Voxel → テクスチャ付きメッシュ
- 即時、レンダリング不要、最適化不要の変換:
🗺️ ロードマップ
| マイルストーン | 目標日付 |
|---|---|
| 論文公開 | – |
| 画像→3D推論コード公開 | – |
| 事前学習チェックポイント (4B) 公開 | – |
| Hugging Face Spaces デモ | – |
| 形状条件付きテクスチャ生成推論コード公開 | 12/24/2025 前 |
| 学習コード公開 | 12/31/2025 前 |
🛠️ インストール
必要条件
- OS:Linux(テスト済み)
- ハードウェア:NVIDIA GPU、≥ 24 GB メモリ(A100/H100 が検証済み)
- ソフトウェア:
- CUDA Toolkit 12.4+(推奨)
- Conda(依存関係管理用)
- Python 3.8+
手順
# リポジトリをクローン git clone -b main https://github.com/microsoft/TRELLIS.2.git --recursive cd TRELLIS.2 # 新しい Conda 環境を作成し、依存関係をインストール ./setup.sh --new-env --basic --flash-attn --cumesh --o-voxel --flexgemm --nvdiffrast --nvdiffrec
備考
は--new-envという名前の新規 Conda 環境を作成します。既存環境を使用する場合は削除してください。trellis2- デフォルトでは PyTorch 2.6.0 と CUDA 12.4 が利用されます。複数バージョンがある場合は
を変更してください。CUDA_HOME- flash‑attn をサポートしない GPU(例:V100)の場合は xformers を手動でインストールし、
に設定します。ATTN_BACKEND=xformers
📦 事前学習済み重み
事前学習済みモデル TRELLIS.2‑4B は Hugging Face で公開されています。
| モデル | パラメータ数 | 解像度 | リンク |
|---|---|---|---|
| TRELLIS.2‑4B | 4 B | 512³ – 1536³ | Hugging Face |
🚀 利用方法
1. 画像 → 3D生成(最小例)
import os, cv2, imageio, torch from PIL import Image from trellis2.pipelines import Trellis2ImageTo3DPipeline from trellis2.renderers import EnvMap from trellis2.utils import render_utils import o_voxel os.environ['OPENCV_IO_ENABLE_OPENEXR'] = '1' os.environ["PYTORCH_CUDA_ALLOC_CONF"] = "expandable_segments:True" # 1. 環境マップ envmap = EnvMap(torch.tensor( cv2.cvtColor(cv2.imread('assets/hdri/forest.exr', cv2.IMREAD_UNCHANGED), cv2.COLOR_BGR2RGB), dtype=torch.float32, device='cuda')) # 2. パイプラインをロード pipeline = Trellis2ImageTo3DPipeline.from_pretrained("microsoft/TRELLIS.2-4B") pipeline.cuda() # 3. 推論実行 image = Image.open("assets/example_image/T.png") mesh = pipeline.run(image)[0] mesh.simplify(16777216) # nvdiffrast の上限 # 4. 動画レンダリング video = render_utils.make_pbr_vis_frames( render_utils.render_video(mesh, envmap=envmap)) imageio.mimsave("sample.mp4", video, fps=15) # 5. GLB にエクスポート glb = o_voxel.postprocess.to_glb( vertices = mesh.vertices, faces = mesh.faces, attr_volume = mesh.attrs, coords = mesh.coords, attr_layout = mesh.layout, voxel_size = mesh.voxel_size, aabb = [[-0.5, -0.5, -0.5], [0.5, 0.5, 0.5]], decimation_target=1_000_000, texture_size = 4096, remesh = True, remesh_band = 1, remesh_project = 0, verbose = True ) glb.export("sample.glb", extension_webp=True)
出力結果:
:生成アセットの動画。sample.mp4
:PBR対応GLB(デフォルトは不透明)。3Dソフトで透明度を有効にしてください。sample.glb
2. Web デモ
app.py を実行して簡易ウェブデモを起動します。ターミナルに表示される URL にアクセスしてください。
🧩 関連パッケージ
| パッケージ | 説明 |
|---|---|
| O‑Voxel | テクスチャ付きメッシュと O‑Voxel 表現の相互変換を行うコアライブラリ。 |
| FlexGEMM | Triton ベースの高速疎畳み込みでボクセル処理を加速。 |
| CuMesh | CUDA で最適化された後処理、再メッシュ、減衰、UV 展開ユーティリティ。 |
⚖️ ライセンス
モデルとコードは MIT License。
依存ライブラリには別途ライセンスが存在します。
– 自前のライセンス。nvdiffrast
– 自前のライセンス。nvdiffrec
📚 参考文献
@article{xiang2025trellis2, title={Native and Compact Structured Latents for 3D Generation}, author={Xiang, Jianfeng and Chen, Xiaoxue and Xu, Sicheng and Wang, Ruicheng and Lv, Zelong and Deng, Yu and Zhu, Hongyuan and Dong, Yue and Zhao, Hao and Yuan, Nicholas Jing and Yang, Jiaolong}, journal={Tech report}, year={2025} }