LichtFeld Studioの使い方をまとめてみました。
「postshotが有償化してしまった!」
「無償で3DGSしたい!」
という方は gsplat と併せてこちらのLichtFeld Studioも選択肢に上がるのではないでしょうか。
GitHubで公開されているオープンソースソフトウェアで、
しかもGUIで操作可能な3DGS (3D Gaussian Splatting ガウシアンスプラッティング) 生成ツールです。
前半で環境構築。
後半で簡単な使い方をまとめました。
GitHub
https://github.com/MrNeRF/LichtFeld-Studio
Windows環境構築手順
この公式のドキュメントがとても丁寧に解説されているのでこの手順の通りで環境構築できると思います。
しかし私の環境では一部エラーが発生してしまったところがあったので、その点を踏まえて以下に手順をまとめました。
多くの部分は元の記事と同じ内容になっています。
ステップ1 依存関係準備
Visual Studio 2022 Community Edition
Visual Studio Community 2022をインストールする。
https://learn.microsoft.com/en-us/visualstudio/releases/2022/release-history#release-dates-and-build-numbers
- Visual Studio Code ではないです
- LichtFeld Studioをビルドするために必要なファイルを含んでいません
- Visual Studio 2019 ではないです
- CMakeバージョンが古いです
- Visual Studio 2026 ではないです
- このバージョンはCUDAインストール環境ではまだ検出されていません
ダウンロードしたらインストーラーを起動し「C++によるデスクトップ開発」をチェックを入れてインストールする。
CUDA Toolkit 12.8
- 注意点:
- Visual Studio のインストールが完了するまでインストールを開始しないでください
- 別のバージョンの CUDA Toolkit が入っている場合はそれをアンインストールして CUDA Toolkit 12 を再インストールしてください
以下URLからCUDA Toolkit 12.8のインストーラーをダウンロードする。
https://developer.nvidia.com/cuda-12-8-0-download-archive
ダウンロードしたらインストールする。
Git
Gitをインストールしていない場合は入れておく。
下記URLからWindowsインストーラーをダウンロードします。
https://git-scm.com/downloads
インストール時のオプションはデフォルト設定のままでOK。
ステップ2 前提条件の確認
Windowsのスタートメニューをから「x64 native tools command prompt for VS 2022」を起動する。
以下のコマンドを入力し各バージョンを確認する。
cmake --version
nvcc --version
git --version
- Cmake: 3.30以上である必要があります
- nvcc: 12.8が使用されていることを確認する
- git: gitがバージョン情報を表示することを確認する
ステップ3 LichtFeld Studioのダウンロードとビルド
LichtFeld Studioをダウンロードするフォルダを作成しておく。
ここでは D:\Git\3DGS_LichtFeldStudio とした。
「x64 native tools command prompt for VS 2022」を起動する。
用意したフォルダへ移動する。
cd D:\Git\3DGS_LichtFeldStudio
vcpkg をセットアップする。
git clone https://github.com/microsoft/vcpkg.git
cd vcpkg && .\bootstrap-vcpkg.bat -disableMetrics && cd ..
リポジトリをクローンする。
git clone https://github.com/MrNeRF/LichtFeld-Studio
安定版をチェックアウトする。
cd LichtFeld-Studio
git checkout v0.3.0
構成ファイルをビルドし、依存関係をダウンロードする
cmake -B build -DCMAKE_BUILD_TYPE=Release -G Ninja -DCMAKE_TOOLCHAIN_FILE="../vcpkg/scripts/buildsystems/vcpkg.cmake"
CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. CMake Error: CMAKE_CUDA_COMPILER not set, after EnableLanguage CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage -- Configuring incomplete, errors occurred! D:\Git\3DGS_LichtFeldStudio\LichtFeld-Studio> cmake --build build -j no such file or directory CMake Error: Generator: execution of make failed. Make command was:
これが残っていると再ビルド時に悪影響があるため。
cd build
cmake .. -G "Visual Studio 17 2022" -A x64
-- Build files have been written to: .../LichtFeld-Studio/build
cd build
cmake --build . --config Release -j
この処理は時間がかかるので暫く待つ。
ビルドが完了すると build > Releaseフォルダ内に「LichtFeld-Studio.exe」が作成されている。
これがLichtFeld-Studioの実行ファイルです。
exeを実行するとLichtFeld Studioが立ち上がります。
以上で環境構築完了!
COLMAPデータの読み込み方
COLMAPデータの入ったフォルダをドラッグアンドドロップでOK。
詳しくはそれぞれ解説動画があります。
RealityScanで写真位置推定する場合。
COLMAPで写真位置推定する場合。
ply書き出し
左上のメニューから書き出せます。
処理の中断と再開
中断はTrainingタブの「Save Checkpoint」。
すると指定したOutputフォルダに「checkpoint_****.resume」ファイルが作成される。
処理を再開する際はこの「checkpoint_****.resume」ファイルをエディタ画面上へドラッグアンドドロップする。

都市スケールな広範囲の処理
大規模広域な空間の場合デフォルト設定だともやに覆われてしまいます。
この場合はTile Modeをデフォルトの1から4へ変更することで、空間を分割して処理されることになるようで改善できました。
ただしそれでもpostshot処理(splat3)のものと比べると全体的にぼやけているので、他のパラメーターも調整の余地がありそうです。
Inrita 3DGSの場合は 以下のようなFAQ があるので、これと同等の設定を行うことで改善できるかもしれません。
How can I use this for a much larger dataset, like a city district? The current method was not designed for these, but given enough memory, it should work out. However, the approach can struggle in multi-scale detail scenes (extreme close-ups, mixed with far-away shots). This is usually the case in, e.g., driving data sets (cars close up, buildings far away). For such scenes, you can lower the
--position_lr_init,--position_lr_finaland--scaling_lr(x0.3, x0.1, …). The more extensive the scene, the lower these values should be. Below, we use default learning rates (left) and--position_lr_init 0.000016 --scaling_lr 0.001"(right).















