
3D Gaussian Splattingを試してみよう - スマホ撮影からWebビューアまで初心者向け完全ガイド
スマホで撮って3Dシーンを生成。必要なのはカメラと好奇心だけ
はじめに
3D Gaussian Splatting(3DGS)は、複数の写真からリアルタイムで閲覧できる3Dシーンを生成する技術です。
「難しそう」と思うかもしれませんが、2026年現在はスマホアプリで撮影するだけでGaussian Splatを作れる環境が整っています。
この記事では、難易度別に3つのアプローチを紹介します。
レベル1: スマホアプリで手軽に試す(所要時間:10分)
最も簡単なのは、専用アプリを使う方法です。
Polycam
- App Store / Google PlayからPolycamをダウンロード
- アプリ内で「Gaussian Splat」モードを選択
- 対象物の周囲をゆっくり歩きながら撮影(30秒〜1分程度)
- クラウドで処理が行われ、数分で3DGSが完成
- アプリ内で3Dビューとして閲覧可能
Luma AI
- Luma AIアプリをダウンロード
- 対象物を動画で撮影(周囲をぐるっと回る)
- アップロード後、クラウド処理でGaussian Splatが生成
- Webリンクとして共有可能
撮影のコツ
- 対象物の周囲360度をカバーするように撮影する
- カメラをゆっくり、滑らかに動かす(急な動きはNG)
- 明るい場所で撮影する(暗い環境は品質が落ちる)
- 同じ場所を複数回通らない(重複は品質低下の原因に)
- 20〜100枚程度の写真が理想(動画の場合はアプリが自動でフレームを抽出)
レベル2: COLMAP + 公式実装で本格トレーニング
より高品質な結果を得たい場合は、公式リポジトリを使ったトレーニングに挑戦してみましょう。
必要な環境
- GPU: NVIDIA GPU(VRAM 8GB以上推奨、12GB以上で快適)
- OS: Ubuntu 22.04推奨(WindowsはWSL2経由で可能)
- Python: 3.8以上
- CUDA: 11.8以上
ステップ1: 写真を用意する
対象物を20〜200枚程度撮影します。
dataset/
input/
IMG_001.jpg
IMG_002.jpg
...
ステップ2: COLMAPでカメラ位置を推定
COLMAPはSfM(Structure from Motion)ソフトウェアで、写真群からカメラの位置・向きと疎な点群を推定します。
# COLMAPのインストール
sudo apt install colmap
# 自動処理(公式リポジトリのスクリプト)
python convert.py -s dataset/
これにより、各写真のカメラパラメータと初期点群が生成されます。
ステップ3: 公式リポジトリでトレーニング
# リポジトリのクローン
git clone https://github.com/graphdeco-inria/gaussian-splatting --recursive
cd gaussian-splatting
# 環境構築
pip install -r requirements.txt
pip install submodules/diff-gaussian-rasterization
pip install submodules/simple-knn
# トレーニング実行
python train.py -s dataset/
デフォルト設定で30,000イテレーション、NVIDIA RTX 3090で約10〜30分程度です。
ステップ4: 結果の確認
# インタラクティブビューアで確認
python viewer.py -m output/
リアルタイムで自由な視点から3Dシーンを閲覧できます。
レベル3: Webで公開・アプリに組み込む
作成したGaussian Splatを公開・活用する方法を紹介します。
Webビューア
ブラウザ上で3DGSを表示できるライブラリがいくつかあります。
GaussianSplats3D(Three.js ベース)
npm install @mkkellogg/gaussian-splats-3d
import * as GaussianSplats3D from '@mkkellogg/gaussian-splats-3d';
const viewer = new GaussianSplats3D.Viewer({
cameraUp: [0, -1, 0],
initialCameraPosition: [0, 0, 5],
});
viewer.addSplatScene('your-scene.ply')
.then(() => {
viewer.start();
});
Spline
デザインツールSplineは3DGSのインポートに対応しています。コードを書かずにWebページに3Dシーンを埋め込めるため、デザイナーにもおすすめです。
Unreal Engine 5(NanoGS)
UE5ユーザーは、無料プラグインNanoGSを使って大規模なGaussian Splatをエンジン内で表示できます。Naniteライクな設計で数百万スプラットを効率的に描画します。
ファイル形式について
2026年現在、3DGSには複数のファイル形式があります。
| 形式 | 特徴 |
|---|---|
| .ply | 公式実装のデフォルト出力。点群形式で広く対応 |
| .splat | Web表示に最適化された軽量フォーマット |
| .spz | Niantic開発の圧縮形式。元データの約1/10のサイズ |
| .glTF | Khronos標準(2026 Q2承認予定)。今後の主流になる見込み |
Webで配信する場合は .splat や .spz が実用的です。長期的には .glTF への移行が見込まれます。
よくあるトラブルと対処法
トレーニング結果にぼやけた部分がある
- 撮影枚数が足りない可能性があります。特に問題のある部分をカバーする追加写真を撮影してみてください
- COLMAPでのカメラ推定が失敗しているケースもあります。
sparse/0/内のファイル数を確認してください
VRAM不足エラー
--densification_intervalを大きくしてガウシアンの増加ペースを抑える- 画像解像度を下げる(
--resolution 2で半分に) - より大きなVRAMのGPUを使う
背景にノイズが出る
- 撮影時に背景が変化していると起こりやすいです(通行人、車など)
- マスクを使って対象物以外を除外する方法もあります
まとめ
| レベル | 方法 | 難易度 | 所要時間 | |---|---|---|---| | 1 | スマホアプリ(Polycam / Luma) | 簡単 | 10分 | | 2 | COLMAP + 公式リポジトリ | 中級 | 1〜2時間 | | 3 | Web公開・エンジン統合 | 中〜上級 | 用途次第 |
まずはスマホアプリで身近なものを3DGS化してみるのがおすすめです。自分の部屋、お気に入りのフィギュア、近所の建物 — 何でもフォトリアリスティックな3Dシーンに変換できる体験は、きっと新鮮な驚きがあるはずです。
技術に慣れてきたら、公式リポジトリでのトレーニングやWebでの公開にも挑戦してみてください。2026年はglTF標準化も控えており、3DGSを学ぶには最高のタイミングです。
次に読む
役に立ったら、関連記事とカテゴリ一覧もチェックしてください。

