{"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/objectsdf-improved-object-compositional","title":"ObjectSDF++: Improved Object-Compositional Neural Implicit Surfaces","arxiv_id":"2308.07868","date":"2023-08-15","proceeding":"ICCV 2023 1","authors":["Qianyi Wu","Kaisiyuan Wang","Kejie Li","Jianmin Zheng","Jianfei Cai"],"abstract":"In recent years, neural implicit surface reconstruction has emerged as a popular paradigm for multi-view 3D reconstruction. Unlike traditional multi-view stereo approaches, the neural implicit surface-based methods leverage neural networks to represent 3D scenes as signed distance functions (SDFs). However, they tend to disregard the reconstruction of individual objects within the scene, which limits their performance and practical applications. To address this issue, previous work ObjectSDF introduced a nice framework of object-composition neural implicit surfaces, which utilizes 2D instance masks to supervise individual object SDFs. In this paper, we propose a new framework called ObjectSDF++ to overcome the limitations of ObjectSDF. First, in contrast to ObjectSDF whose performance is primarily restricted by its converted semantic field, the core component of our model is an occlusion-aware object opacity rendering formulation that directly volume-renders object opacity to be supervised with instance masks. Second, we design a novel regularization term for object distinction, which can effectively mitigate the issue that ObjectSDF may result in unexpected reconstruction in invisible regions due to the lack of constraint to prevent collisions. Our extensive experiments demonstrate that our novel framework not only produces superior object reconstruction results but also significantly improves the quality of scene reconstruction. Code and more resources can be found in \\url{https://qianyiwu.github.io/objectsdf++}","url_abs":"https://arxiv.org/abs/2308.07868v2","url_pdf":"https://arxiv.org/pdf/2308.07868v2.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":"objectsdf-improved-object-compositional","repo_url":"https://github.com/qianyiwu/objectsdf_plus","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"3d-reconstruction","task_name":"3D Reconstruction"},{"task_slug":"multi-view-3d-reconstruction","task_name":"Multi-View 3D Reconstruction"},{"task_slug":"object","task_name":"Object"},{"task_slug":"object-reconstruction","task_name":"Object Reconstruction"},{"task_slug":"surface-reconstruction","task_name":"Surface Reconstruction"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2308.07868","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2308.07868"}},"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/qianyiwu/objectsdf_plus","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":6,"ran_draft_wrong":1,"ran_violates":1,"unverified":2},"by_repo_kind":{"official":{"samples":10,"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":0,"samples":[{"code_sha256_prefix":"25ba9b5031480973","entry":"compute_scale_and_shift","repo":"qianyiwu/objectsdf_plus","repo_kind":"official","path":"code/model/loss.py","file_url":"https://github.com/qianyiwu/objectsdf_plus/blob/HEAD/code/model/loss.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":"25ba9b5031480973"}},{"code_sha256_prefix":"bb0e12df9c0d2a05","entry":"get_embedder","repo":"qianyiwu/objectsdf_plus","repo_kind":"official","path":"code/model/embedder.py","file_url":"https://github.com/qianyiwu/objectsdf_plus/blob/HEAD/code/model/embedder.py","link_basis":"harvester_set","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":"bb0e12df9c0d2a05"}},{"code_sha256_prefix":"b5dfc40a6055fa6b","entry":"load_poses","repo":"qianyiwu/objectsdf_plus","repo_kind":"official","path":"scannet_eval/evaluate.py","file_url":"https://github.com/qianyiwu/objectsdf_plus/blob/HEAD/scannet_eval/evaluate.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":"b5dfc40a6055fa6b"}},{"code_sha256_prefix":"e719b427c33b629e","entry":"make_instance_image","repo":"qianyiwu/objectsdf_plus","repo_kind":"official","path":"preprocess/scannet_to_objsdfpp.py","file_url":"https://github.com/qianyiwu/objectsdf_plus/blob/HEAD/preprocess/scannet_to_objsdfpp.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":"e719b427c33b629e"}},{"code_sha256_prefix":"1e05653ca8537bd2","entry":"map_label_image","repo":"qianyiwu/objectsdf_plus","repo_kind":"official","path":"preprocess/scannet_to_objsdfpp.py","file_url":"https://github.com/qianyiwu/objectsdf_plus/blob/HEAD/preprocess/scannet_to_objsdfpp.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":"1e05653ca8537bd2"}},{"code_sha256_prefix":"fc70092fdcd3efa2","entry":"nn_correspondance","repo":"qianyiwu/objectsdf_plus","repo_kind":"official","path":"scannet_eval/evaluate.py","file_url":"https://github.com/qianyiwu/objectsdf_plus/blob/HEAD/scannet_eval/evaluate.py","link_basis":"plan_row","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"fc70092fdcd3efa2"}},{"code_sha256_prefix":"ea30463f7de8465e","entry":"read_label_mapping","repo":"qianyiwu/objectsdf_plus","repo_kind":"official","path":"preprocess/scannet_to_objsdfpp.py","file_url":"https://github.com/qianyiwu/objectsdf_plus/blob/HEAD/preprocess/scannet_to_objsdfpp.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":"ea30463f7de8465e"}},{"code_sha256_prefix":"e8996630fe3501e1","entry":"reduction_batch_based","repo":"qianyiwu/objectsdf_plus","repo_kind":"official","path":"code/model/loss.py","file_url":"https://github.com/qianyiwu/objectsdf_plus/blob/HEAD/code/model/loss.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e8996630fe3501e1"}},{"code_sha256_prefix":"c92f0115a72bf454","entry":"reduction_image_based","repo":"qianyiwu/objectsdf_plus","repo_kind":"official","path":"code/model/loss.py","file_url":"https://github.com/qianyiwu/objectsdf_plus/blob/HEAD/code/model/loss.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":"c92f0115a72bf454"}},{"code_sha256_prefix":"41a83523cbdfeef6","entry":"standardize_depth_map","repo":"qianyiwu/objectsdf_plus","repo_kind":"official","path":"preprocess/extract_monocular_cues.py","file_url":"https://github.com/qianyiwu/objectsdf_plus/blob/HEAD/preprocess/extract_monocular_cues.py","link_basis":"plan_row","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":"41a83523cbdfeef6"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}