{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/fed3dgs-scalable-3d-gaussian-splatting-with","title":"Fed3DGS: Scalable 3D Gaussian Splatting with Federated Learning","arxiv_id":"2403.11460","date":"2024-03-18","proceeding":null,"authors":["Teppei Suzuki"],"abstract":"In this work, we present Fed3DGS, a scalable 3D reconstruction framework based on 3D Gaussian splatting (3DGS) with federated learning. Existing city-scale reconstruction methods typically adopt a centralized approach, which gathers all data in a central server and reconstructs scenes. The approach hampers scalability because it places a heavy load on the server and demands extensive data storage when reconstructing scenes on a scale beyond city-scale. In pursuit of a more scalable 3D reconstruction, we propose a federated learning framework with 3DGS, which is a decentralized framework and can potentially use distributed computational resources across millions of clients. We tailor a distillation-based model update scheme for 3DGS and introduce appearance modeling for handling non-IID data in the scenario of 3D reconstruction with federated learning. We simulate our method on several large-scale benchmarks, and our method demonstrates rendered image quality comparable to centralized approaches. In addition, we also simulate our method with data collected in different seasons, demonstrating that our framework can reflect changes in the scenes and our appearance modeling captures changes due to seasonal variations.","url_abs":"https://arxiv.org/abs/2403.11460v1","url_pdf":"https://arxiv.org/pdf/2403.11460v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"fed3dgs-scalable-3d-gaussian-splatting-with","repo_url":"https://github.com/densoitlab/fed3dgs","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}}],"tasks":[{"task_slug":"3d-reconstruction","task_name":"3D Reconstruction"},{"task_slug":"3dgs","task_name":"3DGS"},{"task_slug":"federated-learning","task_name":"Federated Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2403.11460","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2403.11460"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/densoitlab/fed3dgs","reach":{"status":"ok","spdx":"NOASSERTION"}}],"summary":{"ran":6,"ran_honours":2,"unverified":4},"by_repo_kind":{"official":{"samples":12,"ran":8,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":12,"samples":[{"code_sha256_prefix":"8350ff1d2d6a63bb","entry":"faiss_knn","repo":"densoitlab/fed3dgs","repo_kind":"official","path":"gaussian-splatting/utils/model_update_utils.py","file_url":"https://github.com/densoitlab/fed3dgs/blob/HEAD/gaussian-splatting/utils/model_update_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"8350ff1d2d6a63bb"}},{"code_sha256_prefix":"c56b7ef16f309a45","entry":"gaussian","repo":"densoitlab/fed3dgs","repo_kind":"official","path":"gaussian-splatting/utils/loss_utils.py","file_url":"https://github.com/densoitlab/fed3dgs/blob/HEAD/gaussian-splatting/utils/loss_utils.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c56b7ef16f309a45"}},{"code_sha256_prefix":"ac0e42d6fbcfbbe6","entry":"l1_loss","repo":"densoitlab/fed3dgs","repo_kind":"official","path":"gaussian-splatting/utils/loss_utils.py","file_url":"https://github.com/densoitlab/fed3dgs/blob/HEAD/gaussian-splatting/utils/loss_utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ac0e42d6fbcfbbe6"}},{"code_sha256_prefix":"8c3b0f873ba11813","entry":"l2_loss","repo":"densoitlab/fed3dgs","repo_kind":"official","path":"gaussian-splatting/utils/loss_utils.py","file_url":"https://github.com/densoitlab/fed3dgs/blob/HEAD/gaussian-splatting/utils/loss_utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"8c3b0f873ba11813"}},{"code_sha256_prefix":"840fed1f7fd11bbe","entry":"make_index","repo":"densoitlab/fed3dgs","repo_kind":"official","path":"gaussian-splatting/utils/model_update_utils.py","file_url":"https://github.com/densoitlab/fed3dgs/blob/HEAD/gaussian-splatting/utils/model_update_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"840fed1f7fd11bbe"}},{"code_sha256_prefix":"1dab900b2adbe38e","entry":"normalize_activation","repo":"densoitlab/fed3dgs","repo_kind":"official","path":"gaussian-splatting/lpipsPyTorch/modules/utils.py","file_url":"https://github.com/densoitlab/fed3dgs/blob/HEAD/gaussian-splatting/lpipsPyTorch/modules/utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"1dab900b2adbe38e"}},{"code_sha256_prefix":"56858e04e6fdb2ff","entry":"read_next_bytes","repo":"densoitlab/fed3dgs","repo_kind":"official","path":"gaussian-splatting/scene/colmap_loader.py","file_url":"https://github.com/densoitlab/fed3dgs/blob/HEAD/gaussian-splatting/scene/colmap_loader.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"56858e04e6fdb2ff"}},{"code_sha256_prefix":"4ca0f50fcb9de265","entry":"reset_opacity","repo":"densoitlab/fed3dgs","repo_kind":"official","path":"gaussian-splatting/utils/model_update_utils.py","file_url":"https://github.com/densoitlab/fed3dgs/blob/HEAD/gaussian-splatting/utils/model_update_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"4ca0f50fcb9de265"}},{"code_sha256_prefix":"07bd0da29c4dc7bb","entry":"get_network","repo":"densoitlab/fed3dgs","repo_kind":"official","path":"gaussian-splatting/lpipsPyTorch/modules/networks.py","file_url":"https://github.com/densoitlab/fed3dgs/blob/HEAD/gaussian-splatting/lpipsPyTorch/modules/networks.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"07bd0da29c4dc7bb"}},{"code_sha256_prefix":"b06f27c08cf5d0ca","entry":"get_state_dict","repo":"densoitlab/fed3dgs","repo_kind":"official","path":"gaussian-splatting/lpipsPyTorch/modules/utils.py","file_url":"https://github.com/densoitlab/fed3dgs/blob/HEAD/gaussian-splatting/lpipsPyTorch/modules/utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"b06f27c08cf5d0ca"}},{"code_sha256_prefix":"6ce64cf0fbcd6bb1","entry":"qvec2rotmat","repo":"densoitlab/fed3dgs","repo_kind":"official","path":"gaussian-splatting/scene/colmap_loader.py","file_url":"https://github.com/densoitlab/fed3dgs/blob/HEAD/gaussian-splatting/scene/colmap_loader.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6ce64cf0fbcd6bb1"}},{"code_sha256_prefix":"659bc4e7e63ed8f9","entry":"rotmat2qvec","repo":"densoitlab/fed3dgs","repo_kind":"official","path":"gaussian-splatting/scene/colmap_loader.py","file_url":"https://github.com/densoitlab/fed3dgs/blob/HEAD/gaussian-splatting/scene/colmap_loader.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"659bc4e7e63ed8f9"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}