Follow these instructions to set up the LoG environment on your machine.
Ensure you have Anaconda or Miniconda installed to manage your environments and packages.
conda create --name LoG python=3.10 -y
conda activate LoG
Install specific versions of PyTorch and torchvision for CUDA 11.8:
pip install torch==2.0.1+cu118 --extra-index-url https://download.pytorch.org/whl/cu118
pip install torchvision==0.15.2+cu118 --extra-index-url https://download.pytorch.org/whl/cu118
If you are familiar with Python and PyTorch, feel free to use your own versions of Python and torch that suit your needs.
Install other necessary packages from a requirements file:
git clone https://github.com/zju3dv/LoG.git
cd LoG
pip install -r requirements.txt
Clone and install the differential Gaussian rasterization library:
mkdir submodules && cd submodules
git clone https://github.com/graphdeco-inria/diff-gaussian-rasterization.git --recursive
pip install ./diff-gaussian-rasterization -v
# clone the modified gs
git clone https://github.com/chingswy/diff-gaussian-rasterization.git mydiffgaussian --recursive
cd mydiffgaussian
git checkout antialias
pip install . -v
cd ..
Install Simple-KNN for k-nearest neighbor searches:
git clone https://gitlab.inria.fr/bkerbl/simple-knn.git
pip install ./simple-knn -v
Finally, install the LoG package in editable mode to facilitate development:
cd ..
# installs packages in editable mode
pip install -e .
git clone https://github.com/isl-org/MiDaS.git --depth=1
cd MiDaS/weights
wget -c https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_beit_large_512.pt
cd ..
cp ../../docs/external/run_midas.py ./
# install extra packages
pip install timm==0.6.12 imutils
We provide an interactive GUI that utilizes imgui and OpenGL for rendering. To operate this GUI, you must set up a desktop environment with a display on a Linux system. We have tested this setup on an Ubuntu system. Follow these steps to install the required dependencies:
cd submodules
git clone https://github.com/zju3dv/EasyVolcap.git
cd EasyVolcap
pip install -v -e . --no-deps
pip install pdbr h5py PyGLM imgui-bundle addict yapf ujson scikit-image cuda-python ruamel.yaml
cd ..
cd ..
To verify that the GUI is functioning correctly, execute the following command:
python3 apps/check_gui.py
The test script initializes a sequence of GS points randomly. You can interact with the GUI using the mouse to drag and rotate the viewpoint, scroll to zoom, and hold the right mouse button to pan the view. Keyboard controls using 'W', 'A', 'S', 'D' allow for camera movement. This setup provides a comprehensive way to explore and interact with the graphical content dynamically.
To visualize the trained model, you should specify the path of model config and the model checkpoints:
python3 apps/gui.py filename=<config_name> ckptname=<checkpoint_name>
# for example:
python3 apps/gui.py filename=config/example/test/train.yml ckptname=output/example/test/log/model_init_wotrain.pth
#
python3 apps/gui.py filename=config/example/test/train.yml ckptname=output/example/test/log/model_latest_wotrain.pth