Skip to content

sajontahsen/GaussianSceneRender-Python

Repository files navigation

A barebones implementation of 3D Gaussian Splatting (3DGS) scene rendering. This initializes the Gaussians from COLMAP input and renders a scene based on the original 3DGS implementation. The idea is to learn the core concepts of Gaussian Splatting by building up a barebones version from scratch. Lots more to be added!

Updates


Installation

  1. Clone the repository:

    git clone https://github.com/sajontahsen/GaussianSceneRender-Python.git
    cd GaussianSceneRender-Python
  2. Install dependencies:

    pip install -r requirements.txt

Usage

To render an image from COLMAP reconstruction data, you can use the command-line interface:

python main.py --colmap_path <path_to_colmap_data> --image_id <image_id>

Example:

python main.py --colmap_path "treehill/sparse/0" --image_id 100

This will render the specified image and save the output to ./output/rendered_image_<image_id>.png

There is a demo notebook with example outputs. I've kept it because the python implementation is VERY slow. Furthermore, to avoid the costly nearest neighbor search, for now all scale variables are initialized to a small constant.


References

About

Minimal 3DGS rendering implementation in CUDA and Vulkan

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published