{"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/ov-nerf-open-vocabulary-neural-radiance","title":"OV-NeRF: Open-vocabulary Neural Radiance Fields with Vision and Language Foundation Models for 3D Semantic Understanding","arxiv_id":"2402.04648","date":"2024-02-07","proceeding":null,"authors":["Guibiao Liao","Kaichen Zhou","Zhenyu Bao","Kanglin Liu","Qing Li"],"abstract":"The development of Neural Radiance Fields (NeRFs) has provided a potent representation for encapsulating the geometric and appearance characteristics of 3D scenes. Enhancing the capabilities of NeRFs in open-vocabulary 3D semantic perception tasks has been a recent focus. However, current methods that extract semantics directly from Contrastive Language-Image Pretraining (CLIP) for semantic field learning encounter difficulties due to noisy and view-inconsistent semantics provided by CLIP. To tackle these limitations, we propose OV-NeRF, which exploits the potential of pre-trained vision and language foundation models to enhance semantic field learning through proposed single-view and cross-view strategies. First, from the single-view perspective, we introduce Region Semantic Ranking (RSR) regularization by leveraging 2D mask proposals derived from Segment Anything (SAM) to rectify the noisy semantics of each training view, facilitating accurate semantic field learning. Second, from the cross-view perspective, we propose a Cross-view Self-enhancement (CSE) strategy to address the challenge raised by view-inconsistent semantics. Rather than invariably utilizing the 2D inconsistent semantics from CLIP, CSE leverages the 3D consistent semantics generated from the well-trained semantic field itself for semantic field training, aiming to reduce ambiguity and enhance overall semantic consistency across different views. Extensive experiments validate our OV-NeRF outperforms current state-of-the-art methods, achieving a significant improvement of 20.31% and 18.42% in mIoU metric on Replica and ScanNet, respectively. Furthermore, our approach exhibits consistent superior results across various CLIP configurations, further verifying its robustness. Project page: https://github.com/pcl3dv/OV-NeRF.","url_abs":"https://arxiv.org/abs/2402.04648v2","url_pdf":"https://arxiv.org/pdf/2402.04648v2.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":"ov-nerf-open-vocabulary-neural-radiance","repo_url":"https://github.com/pcl3dv/ov-nerf","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"nerf","task_name":"NeRF"}],"methods":[{"method_slug":"clip","method_name":"CLIP"},{"method_slug":"sam","method_name":"SAM"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2402.04648","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2402.04648"}},"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/pcl3dv/ov-nerf","reach":{"status":"ok"}}],"summary":{"ran":10,"ran_fixture":1,"ran_draft_wrong":1,"unverified":1},"by_repo_kind":{"official":{"samples":13,"ran":12,"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":13,"samples":[{"code_sha256_prefix":"945933374c5e3cbf","entry":"OctreeRender_trilinear_fast","repo":"pcl3dv/ov-nerf","repo_kind":"official","path":"renderer.py","file_url":"https://github.com/pcl3dv/ov-nerf/blob/HEAD/renderer.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"945933374c5e3cbf"}},{"code_sha256_prefix":"eae018b803b70a00","entry":"OctreeRender_trilinear_fast_depth","repo":"pcl3dv/ov-nerf","repo_kind":"official","path":"renderer.py","file_url":"https://github.com/pcl3dv/ov-nerf/blob/HEAD/renderer.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"eae018b803b70a00"}},{"code_sha256_prefix":"da07cd5065ff06f6","entry":"circle","repo":"pcl3dv/ov-nerf","repo_kind":"official","path":"dataLoader/scannet.py","file_url":"https://github.com/pcl3dv/ov-nerf/blob/HEAD/dataLoader/scannet.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"da07cd5065ff06f6"}},{"code_sha256_prefix":"bc9608bb992f2402","entry":"cross","repo":"pcl3dv/ov-nerf","repo_kind":"official","path":"dataLoader/scannet.py","file_url":"https://github.com/pcl3dv/ov-nerf/blob/HEAD/dataLoader/scannet.py","link_basis":"first_harvest_node","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":"bc9608bb992f2402"}},{"code_sha256_prefix":"db95ecdf5d4abe6b","entry":"eval_sh","repo":"pcl3dv/ov-nerf","repo_kind":"official","path":"models/sh.py","file_url":"https://github.com/pcl3dv/ov-nerf/blob/HEAD/models/sh.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"db95ecdf5d4abe6b"}},{"code_sha256_prefix":"caa9e209a9083a0f","entry":"eval_sh_bases","repo":"pcl3dv/ov-nerf","repo_kind":"official","path":"models/sh.py","file_url":"https://github.com/pcl3dv/ov-nerf/blob/HEAD/models/sh.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"caa9e209a9083a0f"}},{"code_sha256_prefix":"ee7f22f35fc91bae","entry":"get_json_content","repo":"pcl3dv/ov-nerf","repo_kind":"official","path":"dataLoader/scannet.py","file_url":"https://github.com/pcl3dv/ov-nerf/blob/HEAD/dataLoader/scannet.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ee7f22f35fc91bae"}},{"code_sha256_prefix":"dc510fe4f2261490","entry":"init_log","repo":"pcl3dv/ov-nerf","repo_kind":"official","path":"funcs.py","file_url":"https://github.com/pcl3dv/ov-nerf/blob/HEAD/funcs.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"dc510fe4f2261490"}},{"code_sha256_prefix":"11a10efa60767162","entry":"positional_encoding","repo":"pcl3dv/ov-nerf","repo_kind":"official","path":"models/tensorBase.py","file_url":"https://github.com/pcl3dv/ov-nerf/blob/HEAD/models/tensorBase.py","link_basis":"plan_row","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"11a10efa60767162"}},{"code_sha256_prefix":"c1acffa981204fee","entry":"raw2alpha","repo":"pcl3dv/ov-nerf","repo_kind":"official","path":"models/tensorBase.py","file_url":"https://github.com/pcl3dv/ov-nerf/blob/HEAD/models/tensorBase.py","link_basis":"first_harvest_node","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":"c1acffa981204fee"}},{"code_sha256_prefix":"5346431312bff754","entry":"visualize_depth","repo":"pcl3dv/ov-nerf","repo_kind":"official","path":"funcs.py","file_url":"https://github.com/pcl3dv/ov-nerf/blob/HEAD/funcs.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5346431312bff754"}},{"code_sha256_prefix":"c775698c33cfa2de","entry":"visualize_depth_numpy","repo":"pcl3dv/ov-nerf","repo_kind":"official","path":"funcs.py","file_url":"https://github.com/pcl3dv/ov-nerf/blob/HEAD/funcs.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c775698c33cfa2de"}},{"code_sha256_prefix":"3a530f556e40d9c0","entry":"SHRender","repo":"pcl3dv/ov-nerf","repo_kind":"official","path":"models/tensorBase.py","file_url":"https://github.com/pcl3dv/ov-nerf/blob/HEAD/models/tensorBase.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":"3a530f556e40d9c0"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}