{"id":13441211,"url":"https://github.com/VladimirYugay/Gaussian-SLAM","last_synced_at":"2025-03-20T11:37:55.241Z","repository":{"id":212255927,"uuid":"724547005","full_name":"VladimirYugay/Gaussian-SLAM","owner":"VladimirYugay","description":"Gaussian-SLAM: Photo-realistic Dense SLAM with Gaussian Splatting","archived":false,"fork":false,"pushed_at":"2024-07-03T15:01:05.000Z","size":33739,"stargazers_count":840,"open_issues_count":3,"forks_count":50,"subscribers_count":56,"default_branch":"main","last_synced_at":"2024-08-01T03:33:39.790Z","etag":null,"topics":["3d-reconstruction","computer-vision","gaussian-splatting","robotics","slam"],"latest_commit_sha":null,"homepage":"https://vladimiryugay.github.io/gaussian_slam","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/VladimirYugay.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-11-28T09:56:37.000Z","updated_at":"2024-07-31T08:40:20.000Z","dependencies_parsed_at":"2024-05-17T12:51:42.832Z","dependency_job_id":null,"html_url":"https://github.com/VladimirYugay/Gaussian-SLAM","commit_stats":null,"previous_names":["vladimiryugay/gaussian-slam"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VladimirYugay%2FGaussian-SLAM","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VladimirYugay%2FGaussian-SLAM/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VladimirYugay%2FGaussian-SLAM/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VladimirYugay%2FGaussian-SLAM/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/VladimirYugay","download_url":"https://codeload.github.com/VladimirYugay/Gaussian-SLAM/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221759944,"owners_count":16876323,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d-reconstruction","computer-vision","gaussian-splatting","robotics","slam"],"created_at":"2024-07-31T03:01:31.192Z","updated_at":"2025-03-20T11:37:55.229Z","avatar_url":"https://github.com/VladimirYugay.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n\n  \u003ch1 align=\"center\"\u003eGaussian-SLAM: Photo-realistic Dense SLAM with Gaussian Splatting\u003c/h1\u003e\n  \u003cp align=\"center\"\u003e\n    \u003ca href=\"https://vladimiryugay.github.io/\"\u003e\u003cstrong\u003eVladimir Yugay\u003c/strong\u003e\u003c/a\u003e\n    ·\n    \u003ca href=\"https://unique1i.github.io/\"\u003e\u003cstrong\u003eYue Li*\u003c/strong\u003e\u003c/a\u003e\n    ·\n    \u003ca href=\"https://staff.fnwi.uva.nl/th.gevers/\"\u003e\u003cstrong\u003eTheo Gevers\u003c/strong\u003e\u003c/a\u003e\n    ·\n    \u003ca href=\"https://people.inf.ethz.ch/moswald/\"\u003e\u003cstrong\u003eMartin Oswald\u003c/strong\u003e\u003c/a\u003e\n  \u003c/p\u003e\n  \u003cdiv\u003e\u003csmall\u003e*Significant contribution\u003csmall\u003e\u003c/div\u003e\n  \u003ch3 align=\"center\"\u003e\u003ca href=\"https://vladimiryugay.github.io/gaussian_slam/index.html\"\u003eProject Page\u003c/a\u003e\u003c/h3\u003e\n  \u003cdiv align=\"center\"\u003e\u003c/div\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"\"\u003e\n    \u003cimg src=\"./assets/gaussian_slam.gif\" width=\"90%\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n## ⚙️ Setting Things Up\n\nClone the repo:\n\n```\ngit clone https://github.com/VladimirYugay/Gaussian-SLAM\n```\n\nMake sure that gcc and g++ paths on your system are exported:\n\n```\nexport CC=\u003cgcc path\u003e\nexport CXX=\u003cg++ path\u003e\n```\n\nTo find the \u003ci\u003egcc path\u003c/i\u003e and \u003ci\u003eg++ path\u003c/i\u003e on your machine you can use \u003ci\u003ewhich gcc\u003c/i\u003e.\n\n\nThen setup environment from the provided conda environment file,\n\n```\nconda env create -f environment.yml\nconda activate gslam\n```\nWe tested our code on RTX3090 and RTX A6000 GPUs respectively and Ubuntu22 and CentOS7.5.\n\n## 🔨 Running Gaussian-SLAM\n\nHere we elaborate on how to load the necessary data, configure Gaussian-SLAM for your use-case, debug it, and how to reproduce the results mentioned in the paper.\n\n  \u003cdetails\u003e\n  \u003csummary\u003e\u003cb\u003eDownloading the Data\u003c/b\u003e\u003c/summary\u003e\n  We tested our code on Replica, TUM_RGBD, ScanNet, and ScanNet++ datasets. We also provide scripts for downloading Replica nad TUM_RGBD. Install git lfs before using the scripts by running \"git lfs install\". \u003cbr\u003e\n  For downloading ScanNet, follow the procedure described on \u003ca href=\"http://www.scan-net.org/\"\u003ehere\u003c/a\u003e.\u003cbr\u003e\n  For downloading ScanNet++, follow the procedure described on \u003ca href=\"https://kaldir.vc.in.tum.de/scannetpp/\"\u003ehere\u003c/a\u003e.\u003cbr\u003e\n  The config files are named after the sequences that we used for our method.\n  \u003c/details\u003e\n\n  \u003cdetails\u003e\n  \u003csummary\u003e\u003cb\u003eRunning the code\u003c/b\u003e\u003c/summary\u003e\n  Start the system with the command:\n\n  ```\n  python run_slam.py configs/\u003cdataset_name\u003e/\u003cconfig_name\u003e --input_path \u003cpath_to_the_scene\u003e --output_path \u003coutput_path\u003e\n  ```\n  For example:\n  ```\n  python run_slam.py configs/Replica/room0.yaml --input_path /home/datasets/Replica/room0 --output_path output/Replica/room0\n  ```  \n  You can also configure input and output paths in the config yaml file.\n  \u003c/details\u003e \n\n  \u003cdetails\u003e\n  \u003csummary\u003e\u003cb\u003eReproducing Results\u003c/b\u003e\u003c/summary\u003e\n  While we made all parts of our code deterministic, differential rasterizer of Gaussian Splatting is not. The metrics can be slightly different from run to run. In the paper we report average metrics that were computed over three seeds: 0, 1, and 2. \n\n  You can reproduce the results for a single scene by running:\n\n  ```\n  python run_slam.py configs/\u003cdataset_name\u003e/\u003cconfig_name\u003e --input_path \u003cpath_to_the_scene\u003e --output_path \u003coutput_path\u003e\n  ```\n\n  If you are running on a SLURM cluster, you can reproduce the results for all scenes in a dataset by running the script:\n  ```\n  ./scripts/reproduce_sbatch.sh\n  ``` \n  Please note the evaluation of ```depth_L1``` metric requires reconstruction of the mesh, which in turns requires headless installation of open3d if you are running on a cluster.\n  \u003c/details\u003e\n\n  \u003cdetails\u003e\n  \u003csummary\u003e\u003cb\u003eDemo\u003c/b\u003e\u003c/summary\u003e\n  We used the camera path tool in \u003ca href=\"https://github.com/yzslab/gaussian-splatting-lightning\"\u003egaussian-splatting-lightning\u003c/a\u003e repo to help make the fly-through video based on the reconstructed scenes. We thank its author for the great work.\n  \u003c/details\u003e\n\n## 📌 Citation\n\nIf you find our paper and code useful, please cite us:\n\n```bib\n@misc{yugay2023gaussianslam,\n      title={Gaussian-SLAM: Photo-realistic Dense SLAM with Gaussian Splatting}, \n      author={Vladimir Yugay and Yue Li and Theo Gevers and Martin R. Oswald},\n      year={2023},\n      eprint={2312.10070},\n      archivePrefix={arXiv},\n      primaryClass={cs.CV}\n}\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FVladimirYugay%2FGaussian-SLAM","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FVladimirYugay%2FGaussian-SLAM","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FVladimirYugay%2FGaussian-SLAM/lists"}