{"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/atlas-end-to-end-3d-scene-reconstruction-from","title":"Atlas: End-to-End 3D Scene Reconstruction from Posed Images","arxiv_id":"2003.10432","date":"2020-03-23","proceeding":"ECCV 2020 8","authors":["Zak Murez","Tarrence van As","James Bartolozzi","Ayan Sinha","Vijay Badrinarayanan","Andrew Rabinovich"],"abstract":"We present an end-to-end 3D reconstruction method for a scene by directly regressing a truncated signed distance function (TSDF) from a set of posed RGB images. Traditional approaches to 3D reconstruction rely on an intermediate representation of depth maps prior to estimating a full 3D model of a scene. We hypothesize that a direct regression to 3D is more effective. A 2D CNN extracts features from each image independently which are then back-projected and accumulated into a voxel volume using the camera intrinsics and extrinsics. After accumulation, a 3D CNN refines the accumulated features and predicts the TSDF values. Additionally, semantic segmentation of the 3D model is obtained without significant computation. This approach is evaluated on the Scannet dataset where we significantly outperform state-of-the-art baselines (deep multiview stereo followed by traditional TSDF fusion) both quantitatively and qualitatively. We compare our 3D semantic segmentation to prior methods that use a depth sensor since no previous work attempts the problem with only RGB input.","url_abs":"https://arxiv.org/abs/2003.10432v3","url_pdf":"https://arxiv.org/pdf/2003.10432v3.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":"atlas-end-to-end-3d-scene-reconstruction-from","repo_url":"https://github.com/magicleap/Atlas","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"3d-reconstruction","task_name":"3D Reconstruction"},{"task_slug":"3d-scene-reconstruction","task_name":"3D Scene Reconstruction"},{"task_slug":"3d-semantic-segmentation","task_name":"3D Semantic Segmentation"},{"task_slug":"depth-estimation","task_name":"Depth Estimation"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/3d-reconstruction-on-scannet","task":"3D Reconstruction","dataset":"ScanNet","model":"Atlas (finetuned)","rank_in_archive_order":1,"of":1,"metrics":{"3DIoU":"89.4","Chamfer Distance":"37.2","L1":"21.1"},"uses_additional_data":false},{"leaderboard":"/sota/depth-estimation-on-scannet","task":"Depth Estimation","dataset":"ScanNet","model":"Atlas (plain)","rank_in_archive_order":1,"of":2,"metrics":{"RMSE":"0.165"},"uses_additional_data":false},{"leaderboard":"/sota/depth-estimation-on-scannet","task":"Depth Estimation","dataset":"ScanNet","model":"Atlas (finetuned)","rank_in_archive_order":2,"of":2,"metrics":{"RMSE":"0.174","absolute relative error":"0.089"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2003.10432","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2003.10432"}},"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/magicleap/Atlas","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":1,"unverified":11},"by_repo_kind":{"listed":{"samples":12,"ran":1,"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":0,"samples":[{"code_sha256_prefix":"930cb92f559f5607","entry":"pad_scannet","repo":"magicleap/Atlas","repo_kind":"listed","path":"atlas/transforms.py","file_url":"https://github.com/magicleap/Atlas/blob/HEAD/atlas/transforms.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"930cb92f559f5607"}},{"code_sha256_prefix":"871844ec996c4499","entry":"conv1x1x1","repo":"magicleap/Atlas","repo_kind":"listed","path":"atlas/backbone3d.py","file_url":"https://github.com/magicleap/Atlas/blob/HEAD/atlas/backbone3d.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"871844ec996c4499"}},{"code_sha256_prefix":"345667d343bb0d99","entry":"conv3x3x3","repo":"magicleap/Atlas","repo_kind":"listed","path":"atlas/backbone3d.py","file_url":"https://github.com/magicleap/Atlas/blob/HEAD/atlas/backbone3d.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"345667d343bb0d99"}},{"code_sha256_prefix":"880183f37459c9c0","entry":"coordinates","repo":"magicleap/Atlas","repo_kind":"listed","path":"atlas/tsdf.py","file_url":"https://github.com/magicleap/Atlas/blob/HEAD/atlas/tsdf.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"880183f37459c9c0"}},{"code_sha256_prefix":"d673fe1180f63a4c","entry":"depth_to_world","repo":"magicleap/Atlas","repo_kind":"listed","path":"atlas/tsdf.py","file_url":"https://github.com/magicleap/Atlas/blob/HEAD/atlas/tsdf.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d673fe1180f63a4c"}},{"code_sha256_prefix":"10e977bbee5162f4","entry":"get_norm_3d","repo":"magicleap/Atlas","repo_kind":"listed","path":"atlas/backbone3d.py","file_url":"https://github.com/magicleap/Atlas/blob/HEAD/atlas/backbone3d.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"10e977bbee5162f4"}},{"code_sha256_prefix":"60530e4179d62619","entry":"l1","repo":"magicleap/Atlas","repo_kind":"listed","path":"atlas/evaluation.py","file_url":"https://github.com/magicleap/Atlas/blob/HEAD/atlas/evaluation.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"60530e4179d62619"}},{"code_sha256_prefix":"e0258b4df51c5013","entry":"load_info_json","repo":"magicleap/Atlas","repo_kind":"listed","path":"atlas/data.py","file_url":"https://github.com/magicleap/Atlas/blob/HEAD/atlas/data.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"e0258b4df51c5013"}},{"code_sha256_prefix":"963283e33428e65d","entry":"load_scannet_label_mapping","repo":"magicleap/Atlas","repo_kind":"listed","path":"atlas/datasets/scannet.py","file_url":"https://github.com/magicleap/Atlas/blob/HEAD/atlas/datasets/scannet.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"963283e33428e65d"}},{"code_sha256_prefix":"cc965a768c8eb8cb","entry":"log_transform","repo":"magicleap/Atlas","repo_kind":"listed","path":"atlas/heads3d.py","file_url":"https://github.com/magicleap/Atlas/blob/HEAD/atlas/heads3d.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"cc965a768c8eb8cb"}},{"code_sha256_prefix":"cd19ec43da6ecc6e","entry":"map_frame","repo":"magicleap/Atlas","repo_kind":"listed","path":"atlas/data.py","file_url":"https://github.com/magicleap/Atlas/blob/HEAD/atlas/data.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"cd19ec43da6ecc6e"}},{"code_sha256_prefix":"41439e78eb397c28","entry":"transform_space","repo":"magicleap/Atlas","repo_kind":"listed","path":"atlas/transforms.py","file_url":"https://github.com/magicleap/Atlas/blob/HEAD/atlas/transforms.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"41439e78eb397c28"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}