{"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/sharp-nerf-grid-based-fast-deblurring-neural","title":"Sharp-NeRF: Grid-based Fast Deblurring Neural Radiance Fields Using Sharpness Prior","arxiv_id":"2401.00825","date":"2024-01-01","proceeding":null,"authors":["Byeonghyeon Lee","Howoong Lee","Usman Ali","Eunbyung Park"],"abstract":"Neural Radiance Fields (NeRF) have shown remarkable performance in neural rendering-based novel view synthesis. However, NeRF suffers from severe visual quality degradation when the input images have been captured under imperfect conditions, such as poor illumination, defocus blurring, and lens aberrations. Especially, defocus blur is quite common in the images when they are normally captured using cameras. Although few recent studies have proposed to render sharp images of considerably high-quality, yet they still face many key challenges. In particular, those methods have employed a Multi-Layer Perceptron (MLP) based NeRF, which requires tremendous computational time. To overcome these shortcomings, this paper proposes a novel technique Sharp-NeRF -- a grid-based NeRF that renders clean and sharp images from the input blurry images within half an hour of training. To do so, we used several grid-based kernels to accurately model the sharpness/blurriness of the scene. The sharpness level of the pixels is computed to learn the spatially varying blur kernels. We have conducted experiments on the benchmarks consisting of blurry images and have evaluated full-reference and non-reference metrics. The qualitative and quantitative results have revealed that our approach renders the sharp novel views with vivid colors and fine details, and it has considerably faster training time than the previous works. Our project page is available at https://benhenryl.github.io/SharpNeRF/","url_abs":"https://arxiv.org/abs/2401.00825v1","url_pdf":"https://arxiv.org/pdf/2401.00825v1.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":"sharp-nerf-grid-based-fast-deblurring-neural","repo_url":"https://github.com/benhenryl/sharpnerf","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"deblurring","task_name":"Deblurring"},{"task_slug":"nerf","task_name":"NeRF"},{"task_slug":"neural-rendering","task_name":"Neural Rendering"},{"task_slug":"novel-view-synthesis","task_name":"Novel View Synthesis"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2401.00825","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2401.00825"}},"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/benhenryl/sharpnerf","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":14,"ran_draft_wrong":1,"unverified":4},"by_repo_kind":{"official":{"samples":19,"ran":15,"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":"bea9184350158a40","entry":"OctreeRender_trilinear_fast","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"renderer.py","file_url":"https://github.com/benhenryl/sharpnerf/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":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bea9184350158a40"}},{"code_sha256_prefix":"d2587896327123d9","entry":"UpSampling2dLayer_","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"preprocess_focus.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/preprocess_focus.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":"d2587896327123d9"}},{"code_sha256_prefix":"311310d09b78c64c","entry":"average_poses","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"dataLoader/llff.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/dataLoader/llff.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":"311310d09b78c64c"}},{"code_sha256_prefix":"9da28ba9306c62af","entry":"center_poses","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"dataLoader/llff.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/dataLoader/llff.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":"9da28ba9306c62af"}},{"code_sha256_prefix":"90ce0d8859ca0692","entry":"depth2dist","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"dataLoader/ray_utils.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/dataLoader/ray_utils.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":"90ce0d8859ca0692"}},{"code_sha256_prefix":"a0259dc7df1d0f7a","entry":"get_gaussian","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"utils.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/utils.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":"a0259dc7df1d0f7a"}},{"code_sha256_prefix":"030ec2dc7de84718","entry":"get_size","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"models/tensorBase.py","file_url":"https://github.com/benhenryl/sharpnerf/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":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"030ec2dc7de84718"}},{"code_sha256_prefix":"9251b1037c26cc83","entry":"lrelu","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"preprocess_focus.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/preprocess_focus.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":"9251b1037c26cc83"}},{"code_sha256_prefix":"54ed7d1680c5c5cb","entry":"ndc2dist","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"dataLoader/ray_utils.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/dataLoader/ray_utils.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":"54ed7d1680c5c5cb"}},{"code_sha256_prefix":"ebd26060d3ab53e9","entry":"normalize","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"models/tensoRF.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/models/tensoRF.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":"ebd26060d3ab53e9"}},{"code_sha256_prefix":"aa33e7122eb26d8b","entry":"normalize","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"dataLoader/llff.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/dataLoader/llff.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":"aa33e7122eb26d8b"}},{"code_sha256_prefix":"11a10efa60767162","entry":"positional_encoding","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"models/tensorBase.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/models/tensorBase.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"11a10efa60767162"}},{"code_sha256_prefix":"c1acffa981204fee","entry":"raw2alpha","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"models/tensorBase.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/models/tensorBase.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":"c1acffa981204fee"}},{"code_sha256_prefix":"3a47b5cabba2c155","entry":"read_pfm","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"preprocess_depth.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/preprocess_depth.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":"3a47b5cabba2c155"}},{"code_sha256_prefix":"c775698c33cfa2de","entry":"visualize_depth_numpy","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"utils.py","file_url":"https://github.com/benhenryl/sharpnerf/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":"ffd38ad6603c0f92","entry":"SML_torch","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"utils.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/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":"ffd38ad6603c0f92"}},{"code_sha256_prefix":"8e11cbdeef08d1b1","entry":"evaluation","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"renderer.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/renderer.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":"8e11cbdeef08d1b1"}},{"code_sha256_prefix":"16bb9d0fa275f0f7","entry":"get_gaussian","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"models/tensoRF.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/models/tensoRF.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":"16bb9d0fa275f0f7"}},{"code_sha256_prefix":"b154fd5e548dc90b","entry":"get_ray_directions","repo":"benhenryl/sharpnerf","repo_kind":"official","path":"dataLoader/ray_utils.py","file_url":"https://github.com/benhenryl/sharpnerf/blob/HEAD/dataLoader/ray_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":"b154fd5e548dc90b"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}