{"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/nddepth-normal-distance-assisted-monocular-1","title":"NDDepth: Normal-Distance Assisted Monocular Depth Estimation and Completion","arxiv_id":"2311.07166","date":"2023-11-13","proceeding":null,"authors":["Shuwei Shao","Zhongcai Pei","Weihai Chen","Peter C. Y. Chen","Zhengguo Li"],"abstract":"Over the past few years, monocular depth estimation and completion have been paid more and more attention from the computer vision community because of their widespread applications. In this paper, we introduce novel physics (geometry)-driven deep learning frameworks for these two tasks by assuming that 3D scenes are constituted with piece-wise planes. Instead of directly estimating the depth map or completing the sparse depth map, we propose to estimate the surface normal and plane-to-origin distance maps or complete the sparse surface normal and distance maps as intermediate outputs. To this end, we develop a normal-distance head that outputs pixel-level surface normal and distance. Meanwhile, the surface normal and distance maps are regularized by a developed plane-aware consistency constraint, which are then transformed into depth maps. Furthermore, we integrate an additional depth head to strengthen the robustness of the proposed frameworks. Extensive experiments on the NYU-Depth-v2, KITTI and SUN RGB-D datasets demonstrate that our method exceeds in performance prior state-of-the-art monocular depth estimation and completion competitors. The source code will be available at https://github.com/ShuweiShao/NDDepth.","url_abs":"https://arxiv.org/abs/2311.07166v1","url_pdf":"https://arxiv.org/pdf/2311.07166v1.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":"nddepth-normal-distance-assisted-monocular-1","repo_url":"https://github.com/ShuweiShao/NDDepth","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"depth-estimation","task_name":"Depth Estimation"},{"task_slug":"monocular-depth-estimation","task_name":"Monocular Depth Estimation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2311.07166","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2311.07166"}},"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/ShuweiShao/NDDepth","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_fixture":1,"ran_honours":1,"ran":2,"ran_draft_wrong":1,"unverified":4},"by_repo_kind":{"official":{"samples":9,"ran":5,"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":"144d10b49baeb8a6","entry":"window_partition","repo":"ShuweiShao/NDDepth","repo_kind":"official","path":"Estimation/nddepth/networks/newcrf_layers.py","file_url":"https://github.com/ShuweiShao/NDDepth/blob/HEAD/Estimation/nddepth/networks/newcrf_layers.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":2,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"144d10b49baeb8a6"}},{"code_sha256_prefix":"050c56fb7282eb88","entry":"get_num_lines","repo":"ShuweiShao/NDDepth","repo_kind":"official","path":"Estimation/nddepth/utils.py","file_url":"https://github.com/ShuweiShao/NDDepth/blob/HEAD/Estimation/nddepth/utils.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"050c56fb7282eb88"}},{"code_sha256_prefix":"8a05ea4d5e917bf4","entry":"normalize_result","repo":"ShuweiShao/NDDepth","repo_kind":"official","path":"Estimation/nddepth/utils.py","file_url":"https://github.com/ShuweiShao/NDDepth/blob/HEAD/Estimation/nddepth/utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8a05ea4d5e917bf4"}},{"code_sha256_prefix":"35e6bae6a3fe0669","entry":"upsample","repo":"ShuweiShao/NDDepth","repo_kind":"official","path":"Estimation/nddepth/networks/NewCRFDepth.py","file_url":"https://github.com/ShuweiShao/NDDepth/blob/HEAD/Estimation/nddepth/networks/NewCRFDepth.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"35e6bae6a3fe0669"}},{"code_sha256_prefix":"61bf152e6a42a184","entry":"window_reverse","repo":"ShuweiShao/NDDepth","repo_kind":"official","path":"Estimation/nddepth/networks/newcrf_layers.py","file_url":"https://github.com/ShuweiShao/NDDepth/blob/HEAD/Estimation/nddepth/networks/newcrf_layers.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"61bf152e6a42a184"}},{"code_sha256_prefix":"9999af2cf9c1b6bb","entry":"colorize","repo":"ShuweiShao/NDDepth","repo_kind":"official","path":"Estimation/nddepth/utils.py","file_url":"https://github.com/ShuweiShao/NDDepth/blob/HEAD/Estimation/nddepth/utils.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":"9999af2cf9c1b6bb"}},{"code_sha256_prefix":"9b9dd29ad0d626a0","entry":"is_module_wrapper","repo":"ShuweiShao/NDDepth","repo_kind":"official","path":"Estimation/nddepth/networks/newcrf_utils.py","file_url":"https://github.com/ShuweiShao/NDDepth/blob/HEAD/Estimation/nddepth/networks/newcrf_utils.py","link_basis":"harvester_set","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":"9b9dd29ad0d626a0"}},{"code_sha256_prefix":"92dad73ee855852f","entry":"load_url_dist","repo":"ShuweiShao/NDDepth","repo_kind":"official","path":"Estimation/nddepth/networks/newcrf_utils.py","file_url":"https://github.com/ShuweiShao/NDDepth/blob/HEAD/Estimation/nddepth/networks/newcrf_utils.py","link_basis":"harvester_set","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":"92dad73ee855852f"}},{"code_sha256_prefix":"9012d3fdd4cbaea1","entry":"resize","repo":"ShuweiShao/NDDepth","repo_kind":"official","path":"Estimation/nddepth/networks/newcrf_utils.py","file_url":"https://github.com/ShuweiShao/NDDepth/blob/HEAD/Estimation/nddepth/networks/newcrf_utils.py","link_basis":"harvester_set","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":"9012d3fdd4cbaea1"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}