3D Gaussian Splatting(3DGS)というものは言葉は聞いたことありましたが、どんなものかよく分かってませんでした。
ComfyUI 3D PackのサンプルWorkflowに3DGSを使ったものがあったので、やってみました。
ComfyUI 3D Packとは
ComfyUIが最先端のアルゴリズム(3DGS、NeRFなど)とモデル(InstantMesh、CRM、TripoSRなど)を用いて3D入力(メッシュ&UVテクスチャなど)を処理できるようにする包括的なノードツール群です。
ComfyUIでの実行
ComfyUIはGoogle Colaboratoryで実行しました。
ComfyUI ManagerからComfyUI-3D-Packをインストールしたら、エラーになってしまいました。
Githubからダウンロードしたものを指定のフォルダへ入れました。
Colabで実行しようとしたらPytorchのバージョンで不整合がでました。
| !pip install tERROR: pip’s dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. xformers 0.0.30 requires torch==2.7.0, but you have torch 2.10.0.dev20251015+cu126 which is incompatible. fastai 2.8.4 requires torch<2.9,>=1.10, but you have torch 2.10.0.dev20251015+cu126 which is incompatible. |
以下のバージョンでいけました。
| !pip install torch==2.7.0 !pip install torchvision==0.22.0 h!pip install torchaudio==2.7.0 |
モジュールのバージョンの問題は解消しましたが、次は以下のようなエラーが発生しました。
ImportError: cannot import name ‘_load_state_dict_into_model’ from ‘diffusers.models.modeling_utils’
Githubに以下のissuesがありました。
URL:https://github.com/MrForExample/ComfyUI-3D-Pack/issues/534
書いてある通りに修正したらエラーは無くなりました。
同じような修正を何ヶ所かやる必要があったので、注意してください。
サンプルのWorkflow
ColabのGPUをL4 GPUで実行したらOOMのエラーがでました。

なのでA100 GPUにして実行してみたんですが、まだOOMのエラーがでました。
どうやらGPUの種類によってVRAMに大きさに関係なくエラーになってしまっているようでした。
そこで逆にL4 GPUにしてみたらOOMのエラーがでませんでした。
実行したところ、Mesh Orbit Rendererが2秒くらいかかっていて、Gaussian Splatting Orbit Rendererも2秒くらいかかっていました。

レンダリングするサイズを2048×2048にしてみたところ、Meshの方はエラーになりました。

OOMっぽいエラーでした。

減らしたらMeshも実行できました。

MeshとGaussian Splattingの両方をやっているのが良くないと思ってMeshだけにしたら、1536×1536でできました。
Gaussian Splattingの方は2048×2048でできました。

まとめ
とりあえず、MeshよりGaussian Splattingの方が高解像度でレンダリングできるようでした。
実行速度は同じくらいでしたが、Gaussian Splattingが点群データを使っていることを考えるとGaussian Splattingの方がいいのかもと思いました。
3Dモデルに関連した他の記事
生成した3Dモデルを3Dプリンタで出力するなら…

Trellisで別視点の複数枚画像から生成する方法



コメント