{"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/blind-universal-bayesian-image-denoising-with","title":"Blind Universal Bayesian Image Denoising with Gaussian Noise Level Learning","arxiv_id":"1907.03029","date":"2019-07-05","proceeding":null,"authors":["Majed El Helou","Sabine Süsstrunk"],"abstract":"Blind and universal image denoising consists of using a unique model that denoises images with any level of noise. It is especially practical as noise levels do not need to be known when the model is developed or at test time. We propose a theoretically-grounded blind and universal deep learning image denoiser for additive Gaussian noise removal. Our network is based on an optimal denoising solution, which we call fusion denoising. It is derived theoretically with a Gaussian image prior assumption. Synthetic experiments show our network's generalization strength to unseen additive noise levels. We also adapt the fusion denoising network architecture for image denoising on real images. Our approach improves real-world grayscale additive image denoising PSNR results for training noise levels and further on noise levels not seen during training. It also improves state-of-the-art color image denoising performance on every single noise level, by an average of 0.1dB, whether trained on or not.","url_abs":"https://arxiv.org/abs/1907.03029v2","url_pdf":"https://arxiv.org/pdf/1907.03029v2.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":"blind-universal-bayesian-image-denoising-with","repo_url":"https://github.com/IVRL/BUIFD","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"blind-universal-bayesian-image-denoising-with","repo_url":"https://github.com/majedelhelou/BUIFD","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"color-image-denoising","task_name":"Color Image Denoising"},{"task_slug":"denoising","task_name":"Denoising"},{"task_slug":"image-denoising","task_name":"Image Denoising"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma10","task":"Color Image Denoising","dataset":"CBSD68 sigma10","model":"CBUIFD75","rank_in_archive_order":1,"of":2,"metrics":{"PSNR":"35.98"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma15","task":"Color Image Denoising","dataset":"CBSD68 sigma15","model":"CBUIFD75","rank_in_archive_order":9,"of":10,"metrics":{"PSNR":"33.66"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma20","task":"Color Image Denoising","dataset":"CBSD68 sigma20","model":"CBUIFD75","rank_in_archive_order":1,"of":1,"metrics":{"PSNR":"32.02"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma25","task":"Color Image Denoising","dataset":"CBSD68 sigma25","model":"CBUIFD75","rank_in_archive_order":9,"of":9,"metrics":{"PSNR":"30.76"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma30","task":"Color Image Denoising","dataset":"CBSD68 sigma30","model":"CBUIFD75","rank_in_archive_order":1,"of":1,"metrics":{"PSNR":"29.71"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma35","task":"Color Image Denoising","dataset":"CBSD68 sigma35","model":"CBUIFD75","rank_in_archive_order":5,"of":6,"metrics":{"PSNR":"28.81"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma40","task":"Color Image Denoising","dataset":"CBSD68 sigma40","model":"CBUIFD75","rank_in_archive_order":1,"of":1,"metrics":{"PSNR":"28.01"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma45","task":"Color Image Denoising","dataset":"CBSD68 sigma45","model":"CBUIFD75","rank_in_archive_order":2,"of":2,"metrics":{"PSNR":"27.28"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma5","task":"Color Image Denoising","dataset":"CBSD68 sigma5","model":"CBUIFD75","rank_in_archive_order":1,"of":3,"metrics":{"PSNR":"40.05"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma50","task":"Color Image Denoising","dataset":"CBSD68 sigma50","model":"CBUIFD75","rank_in_archive_order":17,"of":18,"metrics":{"PSNR":"26.60"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma55","task":"Color Image Denoising","dataset":"CBSD68 sigma55","model":"CBUIFD75","rank_in_archive_order":2,"of":2,"metrics":{"PSNR":"25.95"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma60","task":"Color Image Denoising","dataset":"CBSD68 sigma60","model":"CBUIFD75","rank_in_archive_order":1,"of":1,"metrics":{"PSNR":"25.34"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma65","task":"Color Image Denoising","dataset":"CBSD68 sigma65","model":"CBUIFD75","rank_in_archive_order":2,"of":2,"metrics":{"PSNR":"24.75"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma70","task":"Color Image Denoising","dataset":"CBSD68 sigma70","model":"CBUIFD75","rank_in_archive_order":1,"of":1,"metrics":{"PSNR":"24.18"},"uses_additional_data":false},{"leaderboard":"/sota/color-image-denoising-on-cbsd68-sigma75","task":"Color Image Denoising","dataset":"CBSD68 sigma75","model":"CBUIFD75","rank_in_archive_order":4,"of":4,"metrics":{"PSNR":"23.63"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma10","task":"Grayscale Image Denoising","dataset":"BSD68 sigma10","model":"BUIFD75 (blind)","rank_in_archive_order":2,"of":2,"metrics":{"PSNR":"33.47"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma15","task":"Grayscale Image Denoising","dataset":"BSD68 sigma15","model":"BUIFD75 (blind)","rank_in_archive_order":14,"of":16,"metrics":{"PSNR":"31.35"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma20","task":"Grayscale Image Denoising","dataset":"BSD68 sigma20","model":"BUIFD75 (blind)","rank_in_archive_order":1,"of":1,"metrics":{"PSNR":"29.88"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma25","task":"Grayscale Image Denoising","dataset":"BSD68 sigma25","model":"BUIFD75 (blind)","rank_in_archive_order":16,"of":16,"metrics":{"PSNR":"28.75"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma30","task":"Grayscale Image Denoising","dataset":"BSD68 sigma30","model":"BUIFD75 (blind)","rank_in_archive_order":2,"of":2,"metrics":{"PSNR":"27.82"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma35","task":"Grayscale Image Denoising","dataset":"BSD68 sigma35","model":"BUIFD75 (blind)","rank_in_archive_order":2,"of":2,"metrics":{"PSNR":"27.03"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma40","task":"Grayscale Image Denoising","dataset":"BSD68 sigma40","model":"BUIFD75 (blind)","rank_in_archive_order":1,"of":1,"metrics":{"PSNR":"26.31"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma45","task":"Grayscale Image Denoising","dataset":"BSD68 sigma45","model":"BUIFD75 (blind)","rank_in_archive_order":1,"of":1,"metrics":{"PSNR":"25.67"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma5","task":"Grayscale Image Denoising","dataset":"BSD68 sigma5","model":"BUIFD75 (blind)","rank_in_archive_order":1,"of":1,"metrics":{"PSNR":"37.25"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma50","task":"Grayscale Image Denoising","dataset":"BSD68 sigma50","model":"BUIFD75 (blind)","rank_in_archive_order":15,"of":15,"metrics":{"PSNR":"25.1"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma55","task":"Grayscale Image Denoising","dataset":"BSD68 sigma55","model":"BUIFD75 (blind)","rank_in_archive_order":1,"of":1,"metrics":{"PSNR":"24.55"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma60","task":"Grayscale Image Denoising","dataset":"BSD68 sigma60","model":"BUIFD75 (blind)","rank_in_archive_order":1,"of":1,"metrics":{"PSNR":"24.05"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma65","task":"Grayscale Image Denoising","dataset":"BSD68 sigma65","model":"BUIFD75 (blind)","rank_in_archive_order":1,"of":1,"metrics":{"PSNR":"23.56"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma70","task":"Grayscale Image Denoising","dataset":"BSD68 sigma70","model":"BUIFD75 (blind)","rank_in_archive_order":3,"of":3,"metrics":{"PSNR":"23.1"},"uses_additional_data":false},{"leaderboard":"/sota/grayscale-image-denoising-on-bsd68-sigma75","task":"Grayscale Image Denoising","dataset":"BSD68 sigma75","model":"BUIFD75 (blind)","rank_in_archive_order":2,"of":2,"metrics":{"PSNR":"22.67"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1907.03029","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1907.03029"}},"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/majedelhelou/BUIFD","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/IVRL/BUIFD","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":1,"unverified":2},"by_repo_kind":{"official":{"samples":3,"ran":1,"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":"5dfad570b582b1ea","entry":"normalize","repo":"IVRL/BUIFD","repo_kind":"official","path":"Training/dataset.py","file_url":"https://github.com/IVRL/BUIFD/blob/HEAD/Training/dataset.py","link_basis":"plan_row","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":"5dfad570b582b1ea"}},{"code_sha256_prefix":"2af2ba98f984835a","entry":"Im2Patch","repo":"IVRL/BUIFD","repo_kind":"official","path":"Training/dataset.py","file_url":"https://github.com/IVRL/BUIFD/blob/HEAD/Training/dataset.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":"2af2ba98f984835a"}},{"code_sha256_prefix":"0b71fac5a3384432","entry":"data_augmentation","repo":"IVRL/BUIFD","repo_kind":"official","path":"Inference_Pretrained/utils.py","file_url":"https://github.com/IVRL/BUIFD/blob/HEAD/Inference_Pretrained/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":"0b71fac5a3384432"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}