{"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/decomposing-nerf-for-editing-via-feature","title":"Decomposing NeRF for Editing via Feature Field Distillation","arxiv_id":"2205.15585","date":"2022-05-31","proceeding":null,"authors":["Sosuke Kobayashi","Eiichi Matsumoto","Vincent Sitzmann"],"abstract":"Emerging neural radiance fields (NeRF) are a promising scene representation for computer graphics, enabling high-quality 3D reconstruction and novel view synthesis from image observations. However, editing a scene represented by a NeRF is challenging, as the underlying connectionist representations such as MLPs or voxel grids are not object-centric or compositional. In particular, it has been difficult to selectively edit specific regions or objects. In this work, we tackle the problem of semantic scene decomposition of NeRFs to enable query-based local editing of the represented 3D scenes. We propose to distill the knowledge of off-the-shelf, self-supervised 2D image feature extractors such as CLIP-LSeg or DINO into a 3D feature field optimized in parallel to the radiance field. Given a user-specified query of various modalities such as text, an image patch, or a point-and-click selection, 3D feature fields semantically decompose 3D space without the need for re-training and enable us to semantically select and edit regions in the radiance field. Our experiments validate that the distilled feature fields (DFFs) can transfer recent progress in 2D vision and language foundation models to 3D scene representations, enabling convincing 3D segmentation and selective editing of emerging neural graphics representations.","url_abs":"https://arxiv.org/abs/2205.15585v2","url_pdf":"https://arxiv.org/pdf/2205.15585v2.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":"decomposing-nerf-for-editing-via-feature","repo_url":"https://github.com/pfnet-research/distilled-feature-fields","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"3d-reconstruction","task_name":"3D Reconstruction"},{"task_slug":"nerf","task_name":"NeRF"},{"task_slug":"novel-view-synthesis","task_name":"Novel View Synthesis"}],"methods":[{"method_slug":"attention","method_name":"Attention"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"layer-normalization","method_name":"Layer Normalization"},{"method_slug":"linear-layer","method_name":"Linear Layer"},{"method_slug":"multi-head-attention","method_name":"Multi-Head Attention"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"softmax","method_name":"Softmax"},{"method_slug":"vision-transformer","method_name":"Vision Transformer"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2205.15585","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2205.15585"}},"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":"deterministic:regex_extraction","url":"https://github.com/kwea123/ngp_pl","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/pfnet-research/distilled-feature-fields","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":1,"ran_honours":1,"unverified":8},"by_repo_kind":{"found_in_text":{"samples":10,"ran":2,"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":"8a38e306ff4c5b42","entry":"read_cameras_text","repo":"kwea123/ngp_pl","repo_kind":"found_in_text","path":"datasets/colmap_utils.py","file_url":"https://github.com/kwea123/ngp_pl/blob/HEAD/datasets/colmap_utils.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8a38e306ff4c5b42"}},{"code_sha256_prefix":"56858e04e6fdb2ff","entry":"read_next_bytes","repo":"kwea123/ngp_pl","repo_kind":"found_in_text","path":"datasets/colmap_utils.py","file_url":"https://github.com/kwea123/ngp_pl/blob/HEAD/datasets/colmap_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":"56858e04e6fdb2ff"}},{"code_sha256_prefix":"71d7e1a38cfef0f4","entry":"extract_model_state_dict","repo":"kwea123/ngp_pl","repo_kind":"found_in_text","path":"utils.py","file_url":"https://github.com/kwea123/ngp_pl/blob/HEAD/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":"71d7e1a38cfef0f4"}},{"code_sha256_prefix":"fe8b73b01e9a52fe","entry":"linear_to_srgb","repo":"kwea123/ngp_pl","repo_kind":"found_in_text","path":"datasets/color_utils.py","file_url":"https://github.com/kwea123/ngp_pl/blob/HEAD/datasets/color_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":"fe8b73b01e9a52fe"}},{"code_sha256_prefix":"c832923b546e9fb3","entry":"mse","repo":"kwea123/ngp_pl","repo_kind":"found_in_text","path":"metrics.py","file_url":"https://github.com/kwea123/ngp_pl/blob/HEAD/metrics.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":"c832923b546e9fb3"}},{"code_sha256_prefix":"a9fc9719da0dea43","entry":"psnr","repo":"kwea123/ngp_pl","repo_kind":"found_in_text","path":"metrics.py","file_url":"https://github.com/kwea123/ngp_pl/blob/HEAD/metrics.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":"a9fc9719da0dea43"}},{"code_sha256_prefix":"3d7e294ff8567d46","entry":"read_cameras_binary","repo":"kwea123/ngp_pl","repo_kind":"found_in_text","path":"datasets/colmap_utils.py","file_url":"https://github.com/kwea123/ngp_pl/blob/HEAD/datasets/colmap_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":"3d7e294ff8567d46"}},{"code_sha256_prefix":"ceaf232bde4b9414","entry":"read_image","repo":"kwea123/ngp_pl","repo_kind":"found_in_text","path":"datasets/color_utils.py","file_url":"https://github.com/kwea123/ngp_pl/blob/HEAD/datasets/color_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":"ceaf232bde4b9414"}},{"code_sha256_prefix":"e25e7be07be74fbd","entry":"slim_ckpt","repo":"kwea123/ngp_pl","repo_kind":"found_in_text","path":"utils.py","file_url":"https://github.com/kwea123/ngp_pl/blob/HEAD/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":"e25e7be07be74fbd"}},{"code_sha256_prefix":"6774863ebce3d3f4","entry":"srgb_to_linear","repo":"kwea123/ngp_pl","repo_kind":"found_in_text","path":"datasets/color_utils.py","file_url":"https://github.com/kwea123/ngp_pl/blob/HEAD/datasets/color_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":"6774863ebce3d3f4"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}