{"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/compressible-composable-nerf-via-rank","title":"Compressible-composable NeRF via Rank-residual Decomposition","arxiv_id":"2205.14870","date":"2022-05-30","proceeding":null,"authors":["Jiaxiang Tang","Xiaokang Chen","Jingbo Wang","Gang Zeng"],"abstract":"Neural Radiance Field (NeRF) has emerged as a compelling method to represent 3D objects and scenes for photo-realistic rendering. However, its implicit representation causes difficulty in manipulating the models like the explicit mesh representation. Several recent advances in NeRF manipulation are usually restricted by a shared renderer network, or suffer from large model size. To circumvent the hurdle, in this paper, we present an explicit neural field representation that enables efficient and convenient manipulation of models. To achieve this goal, we learn a hybrid tensor rank decomposition of the scene without neural networks. Motivated by the low-rank approximation property of the SVD algorithm, we propose a rank-residual learning strategy to encourage the preservation of primary information in lower ranks. The model size can then be dynamically adjusted by rank truncation to control the levels of detail, achieving near-optimal compression without extra optimization. Furthermore, different models can be arbitrarily transformed and composed into one scene by concatenating along the rank dimension. The growth of storage cost can also be mitigated by compressing the unimportant objects in the composed scene. We demonstrate that our method is able to achieve comparable rendering quality to state-of-the-art methods, while enabling extra capability of compression and composition. Code will be made available at \\url{https://github.com/ashawkey/CCNeRF}.","url_abs":"https://arxiv.org/abs/2205.14870v2","url_pdf":"https://arxiv.org/pdf/2205.14870v2.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":"compressible-composable-nerf-via-rank","repo_url":"https://github.com/ashawkey/ccnerf","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"compressible-composable-nerf-via-rank","repo_url":"https://github.com/ashawkey/torch-ngp","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"nerf","task_name":"NeRF"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2205.14870","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2205.14870"}},"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/ashawkey/CCNeRF","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ashawkey/ccnerf","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ashawkey/torch-ngp","reach":null}],"summary":{"ran":11,"ran_draft_wrong":2,"unverified":8},"by_repo_kind":{"official":{"samples":14,"ran":9,"repositories":1},"listed":{"samples":7,"ran":4,"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":"d05b685a617a757f","entry":"FreqEncoder","repo":"ashawkey/torch-ngp","repo_kind":"listed","path":"tensoRF/network_cc.py","file_url":"https://github.com/ashawkey/torch-ngp/blob/HEAD/tensoRF/network_cc.py","link_basis":"first_harvest_node","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":"d05b685a617a757f"}},{"code_sha256_prefix":"db08b3c2e755f8df","entry":"NeRFRenderer","repo":"ashawkey/torch-ngp","repo_kind":"listed","path":"tensoRF/network_cc.py","file_url":"https://github.com/ashawkey/torch-ngp/blob/HEAD/tensoRF/network_cc.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":"db08b3c2e755f8df"}},{"code_sha256_prefix":"c14579c253a6bea3","entry":"_trunc_exp","repo":"ashawkey/torch-ngp","repo_kind":"listed","path":"tensoRF/network_cc.py","file_url":"https://github.com/ashawkey/torch-ngp/blob/HEAD/tensoRF/network_cc.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":"c14579c253a6bea3"}},{"code_sha256_prefix":"311310d09b78c64c","entry":"average_poses","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"dataLoader/llff.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/dataLoader/llff.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":"311310d09b78c64c"}},{"code_sha256_prefix":"9da28ba9306c62af","entry":"center_poses","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"dataLoader/llff.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/dataLoader/llff.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":"9da28ba9306c62af"}},{"code_sha256_prefix":"dc510fe4f2261490","entry":"init_log","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"utils.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/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":"dc510fe4f2261490"}},{"code_sha256_prefix":"aa33e7122eb26d8b","entry":"normalize","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"dataLoader/llff.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/dataLoader/llff.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":"aa33e7122eb26d8b"}},{"code_sha256_prefix":"d5e9d3045cbf7799","entry":"positional_encoding","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"models/tensorBase.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/models/tensorBase.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"d5e9d3045cbf7799"}},{"code_sha256_prefix":"8ed7b9fc7f33d1dd","entry":"sample_pdf","repo":"ashawkey/torch-ngp","repo_kind":"listed","path":"tensoRF/network_cc.py","file_url":"https://github.com/ashawkey/torch-ngp/blob/HEAD/tensoRF/network_cc.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8ed7b9fc7f33d1dd"}},{"code_sha256_prefix":"521893f959a2ef80","entry":"sharpness","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"dataLoader/colmap2nerf.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/dataLoader/colmap2nerf.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":"521893f959a2ef80"}},{"code_sha256_prefix":"6ccb6c10eee60ba1","entry":"variance_of_laplacian","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"dataLoader/colmap2nerf.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/dataLoader/colmap2nerf.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":"6ccb6c10eee60ba1"}},{"code_sha256_prefix":"5346431312bff754","entry":"visualize_depth","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"utils.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/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":"5346431312bff754"}},{"code_sha256_prefix":"c775698c33cfa2de","entry":"visualize_depth_numpy","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"utils.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/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":"c775698c33cfa2de"}},{"code_sha256_prefix":"82e6cf89996728aa","entry":"NeRFNetwork","repo":"ashawkey/torch-ngp","repo_kind":"listed","path":"tensoRF/network_cc.py","file_url":"https://github.com/ashawkey/torch-ngp/blob/HEAD/tensoRF/network_cc.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":"82e6cf89996728aa"}},{"code_sha256_prefix":"23a0313caf30ffd1","entry":"OctreeRender_trilinear_fast","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"renderer.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/renderer.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":"23a0313caf30ffd1"}},{"code_sha256_prefix":"5c1cff2ef1b2da39","entry":"custom_meshgrid","repo":"ashawkey/torch-ngp","repo_kind":"listed","path":"tensoRF/network_cc.py","file_url":"https://github.com/ashawkey/torch-ngp/blob/HEAD/tensoRF/network_cc.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":"5c1cff2ef1b2da39"}},{"code_sha256_prefix":"e0fb44e80a373df5","entry":"evaluation","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"renderer.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/renderer.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":"e0fb44e80a373df5"}},{"code_sha256_prefix":"524cb67e717d865a","entry":"get_encoder","repo":"ashawkey/torch-ngp","repo_kind":"listed","path":"tensoRF/network_cc.py","file_url":"https://github.com/ashawkey/torch-ngp/blob/HEAD/tensoRF/network_cc.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":"524cb67e717d865a"}},{"code_sha256_prefix":"a29c7ba57ef44899","entry":"pose_spherical","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"dataLoader/nsvf.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/dataLoader/nsvf.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":"a29c7ba57ef44899"}},{"code_sha256_prefix":"6ce64cf0fbcd6bb1","entry":"qvec2rotmat","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"dataLoader/colmap2nerf.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/dataLoader/colmap2nerf.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":"6ce64cf0fbcd6bb1"}},{"code_sha256_prefix":"9dfcc59fb854edf4","entry":"raw2alpha","repo":"ashawkey/CCNeRF","repo_kind":"official","path":"models/tensorBase.py","file_url":"https://github.com/ashawkey/CCNeRF/blob/HEAD/models/tensorBase.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":"9dfcc59fb854edf4"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}