{"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/lighting-every-darkness-in-two-pairs-a","title":"Make Explicit Calibration Implicit: Calibrate Denoiser Instead of the Noise Model","arxiv_id":"2308.03448","date":"2023-08-07","proceeding":"ICCV 2023 1","authors":["Xin Jin","Jia-Wen Xiao","Ling-Hao Han","Chunle Guo","Xialei Liu","Chongyi Li","Ming-Ming Cheng"],"abstract":"Explicit calibration-based methods have dominated RAW image denoising under extremely low-light environments. However, these methods are impeded by several critical limitations: a) the explicit calibration process is both labor- and time-intensive, b) challenge exists in transferring denoisers across different camera models, and c) the disparity between synthetic and real noise is exacerbated by digital gain. To address these issues, we introduce a groundbreaking pipeline named Lighting Every Darkness (LED), which is effective regardless of the digital gain or the camera sensor. LED eliminates the need for explicit noise model calibration, instead utilizing an implicit fine-tuning process that allows quick deployment and requires minimal data. Structural modifications are also included to reduce the discrepancy between synthetic and real noise without extra computational demands. Our method surpasses existing methods in various camera models, including new ones not in public datasets, with just a few pairs per digital gain and only 0.5% of the typical iterations. Furthermore, LED also allows researchers to focus more on deep learning advancements while still utilizing sensor engineering benefits. Code and related materials can be found in https://srameo.github.io/projects/led-iccv23/ .","url_abs":"https://arxiv.org/abs/2308.03448v2","url_pdf":"https://arxiv.org/pdf/2308.03448v2.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":"lighting-every-darkness-in-two-pairs-a","repo_url":"https://github.com/srameo/led","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}}],"tasks":[{"task_slug":"denoising","task_name":"Denoising"},{"task_slug":"image-denoising","task_name":"Image Denoising"}],"methods":[{"method_slug":"focus","method_name":"Focus"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/image-denoising-on-sid-sonya7s2-x100","task":"Image Denoising","dataset":"SID SonyA7S2 x100","model":"LED","rank_in_archive_order":3,"of":5,"metrics":{"PSNR (Raw)":"41.98","SSIM (Raw)":"0.954"},"uses_additional_data":false},{"leaderboard":"/sota/image-denoising-on-sid-sonya7s2-x250","task":"Image Denoising","dataset":"SID SonyA7S2 x250","model":"LED","rank_in_archive_order":7,"of":10,"metrics":{"PSNR (Raw)":"39.34","SSIM (Raw)":"0.932"},"uses_additional_data":false},{"leaderboard":"/sota/image-denoising-on-sid-sonya7s2-x300","task":"Image Denoising","dataset":"SID SonyA7S2 x300","model":"LED","rank_in_archive_order":1,"of":2,"metrics":{"PSNR (Raw)":"36.67","SSIM (Raw)":"0.915"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2308.03448","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2308.03448"}},"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/srameo/led","reach":{"status":"ok","spdx":"NOASSERTION"}}],"summary":{"ran":4,"unverified":7},"by_repo_kind":{"official":{"samples":11,"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":11,"samples":[{"code_sha256_prefix":"209f448dfe9fb7dd","entry":"gamma_correct","repo":"srameo/led","repo_kind":"official","path":"led/models/raw_denoising_model.py","file_url":"https://github.com/srameo/led/blob/HEAD/led/models/raw_denoising_model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"209f448dfe9fb7dd"}},{"code_sha256_prefix":"8203ed9500723a9b","entry":"gamma_expansion","repo":"srameo/led","repo_kind":"official","path":"led/models/raw_denoising_model.py","file_url":"https://github.com/srameo/led/blob/HEAD/led/models/raw_denoising_model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"8203ed9500723a9b"}},{"code_sha256_prefix":"cd569444547de84f","entry":"get_position_from_periods","repo":"srameo/led","repo_kind":"official","path":"led/models/lr_scheduler.py","file_url":"https://github.com/srameo/led/blob/HEAD/led/models/lr_scheduler.py","link_basis":"harvester_set","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":"cd569444547de84f"}},{"code_sha256_prefix":"457851ad6b90a723","entry":"sum_img_and_noise","repo":"srameo/led","repo_kind":"official","path":"led/models/raw_denoising_model.py","file_url":"https://github.com/srameo/led/blob/HEAD/led/models/raw_denoising_model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"457851ad6b90a723"}},{"code_sha256_prefix":"fe05416387de89c6","entry":"g_path_regularize","repo":"srameo/led","repo_kind":"official","path":"led/losses/gan_loss.py","file_url":"https://github.com/srameo/led/blob/HEAD/led/losses/gan_loss.py","link_basis":"harvester_set","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":"fe05416387de89c6"}},{"code_sha256_prefix":"81eb425a41a7c2a1","entry":"gradient_penalty_loss","repo":"srameo/led","repo_kind":"official","path":"led/losses/gan_loss.py","file_url":"https://github.com/srameo/led/blob/HEAD/led/losses/gan_loss.py","link_basis":"harvester_set","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":"81eb425a41a7c2a1"}},{"code_sha256_prefix":"c7cba9053f3cadb5","entry":"r1_penalty","repo":"srameo/led","repo_kind":"official","path":"led/losses/gan_loss.py","file_url":"https://github.com/srameo/led/blob/HEAD/led/losses/gan_loss.py","link_basis":"harvester_set","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":"c7cba9053f3cadb5"}},{"code_sha256_prefix":"a648a03a952822c0","entry":"reduce_loss","repo":"srameo/led","repo_kind":"official","path":"led/losses/loss_util.py","file_url":"https://github.com/srameo/led/blob/HEAD/led/losses/loss_util.py","link_basis":"harvester_set","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":"a648a03a952822c0"}},{"code_sha256_prefix":"1ba39317ea81871a","entry":"weight_reduce_loss","repo":"srameo/led","repo_kind":"official","path":"led/losses/loss_util.py","file_url":"https://github.com/srameo/led/blob/HEAD/led/losses/loss_util.py","link_basis":"harvester_set","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":"1ba39317ea81871a"}},{"code_sha256_prefix":"cf63f8afc13f62a7","entry":"weighted_loss","repo":"srameo/led","repo_kind":"official","path":"led/losses/loss_util.py","file_url":"https://github.com/srameo/led/blob/HEAD/led/losses/loss_util.py","link_basis":"harvester_set","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":"cf63f8afc13f62a7"}},{"code_sha256_prefix":"da94debb8019ad46","entry":"zero_module","repo":"srameo/led","repo_kind":"official","path":"led/archs/cunet_arch.py","file_url":"https://github.com/srameo/led/blob/HEAD/led/archs/cunet_arch.py","link_basis":"harvester_set","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":"da94debb8019ad46"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}