{"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/neural-rgb-d-surface-reconstruction","title":"Neural RGB-D Surface Reconstruction","arxiv_id":"2104.04532","date":"2021-04-09","proceeding":"CVPR 2022 1","authors":["Dejan Azinović","Ricardo Martin-Brualla","Dan B Goldman","Matthias Nießner","Justus Thies"],"abstract":"Obtaining high-quality 3D reconstructions of room-scale scenes is of paramount importance for upcoming applications in AR or VR. These range from mixed reality applications for teleconferencing, virtual measuring, virtual room planing, to robotic applications. While current volume-based view synthesis methods that use neural radiance fields (NeRFs) show promising results in reproducing the appearance of an object or scene, they do not reconstruct an actual surface. The volumetric representation of the surface based on densities leads to artifacts when a surface is extracted using Marching Cubes, since during optimization, densities are accumulated along the ray and are not used at a single sample point in isolation. Instead of this volumetric representation of the surface, we propose to represent the surface using an implicit function (truncated signed distance function). We show how to incorporate this representation in the NeRF framework, and extend it to use depth measurements from a commodity RGB-D sensor, such as a Kinect. In addition, we propose a pose and camera refinement technique which improves the overall reconstruction quality. In contrast to concurrent work on integrating depth priors in NeRF which concentrates on novel view synthesis, our approach is able to reconstruct high-quality, metrical 3D reconstructions.","url_abs":"https://arxiv.org/abs/2104.04532v3","url_pdf":"https://arxiv.org/pdf/2104.04532v3.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":"neural-rgb-d-surface-reconstruction","repo_url":"https://github.com/dazinovic/neural-rgbd-surface-reconstruction","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"tf","reach":null},{"paper_slug":"neural-rgb-d-surface-reconstruction","repo_url":"https://github.com/HengyiWang/neural-rgbd-torch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"image-generation","task_name":"Image Generation"},{"task_slug":"mixed-reality","task_name":"Mixed Reality"},{"task_slug":"nerf","task_name":"NeRF"},{"task_slug":"novel-view-synthesis","task_name":"Novel View Synthesis"},{"task_slug":"surface-reconstruction","task_name":"Surface Reconstruction"}],"methods":[],"datasets_introduced":[{"slug":"neuralrgbd","name":"NeuralRGBD","full_name":""}],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2104.04532","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2104.04532"}},"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/dazinovic/neural-rgbd-surface-reconstruction","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/HengyiWang/neural-rgbd-torch","reach":null}],"summary":{"ran_draft_wrong":2,"unverified":4},"by_repo_kind":{"official":{"samples":3,"ran":1,"repositories":1},"listed":{"samples":3,"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":3,"samples":[{"code_sha256_prefix":"11f60106fe3fe6b6","entry":"batchify","repo":"dazinovic/neural-rgbd-surface-reconstruction","repo_kind":"official","path":"optimize.py","file_url":"https://github.com/dazinovic/neural-rgbd-surface-reconstruction/blob/HEAD/optimize.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"11f60106fe3fe6b6"}},{"code_sha256_prefix":"e90e16ef8f5ca4a5","entry":"batchify","repo":"HengyiWang/neural-rgbd-torch","repo_kind":"listed","path":"optimize.py","file_url":"https://github.com/HengyiWang/neural-rgbd-torch/blob/HEAD/optimize.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e90e16ef8f5ca4a5"}},{"code_sha256_prefix":"9345f48b8f3e1ede","entry":"render_rays","repo":"dazinovic/neural-rgbd-surface-reconstruction","repo_kind":"official","path":"optimize.py","file_url":"https://github.com/dazinovic/neural-rgbd-surface-reconstruction/blob/HEAD/optimize.py","link_basis":"first_harvest_node","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":"9345f48b8f3e1ede"}},{"code_sha256_prefix":"e0e8f714ac434152","entry":"render_rays","repo":"HengyiWang/neural-rgbd-torch","repo_kind":"listed","path":"optimize.py","file_url":"https://github.com/HengyiWang/neural-rgbd-torch/blob/HEAD/optimize.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e0e8f714ac434152"}},{"code_sha256_prefix":"b3964e10c2d6129a","entry":"run_network","repo":"dazinovic/neural-rgbd-surface-reconstruction","repo_kind":"official","path":"optimize.py","file_url":"https://github.com/dazinovic/neural-rgbd-surface-reconstruction/blob/HEAD/optimize.py","link_basis":"first_harvest_node","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":"b3964e10c2d6129a"}},{"code_sha256_prefix":"b331235168684564","entry":"run_network","repo":"HengyiWang/neural-rgbd-torch","repo_kind":"listed","path":"optimize.py","file_url":"https://github.com/HengyiWang/neural-rgbd-torch/blob/HEAD/optimize.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b331235168684564"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}