{"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/uncertainty-guided-multi-scale-residual-1","title":"Uncertainty Guided Multi-Scale Residual Learning-using a Cycle Spinning CNN for Single Image De-Raining","arxiv_id":"1906.11129","date":"2019-06-12","proceeding":"CVPR 2019 6","authors":["Rajeev Yasarla","Vishal M. Patel"],"abstract":"Single image de-raining is an extremely challenging problem since the rainy image may contain rain streaks which may vary in size, direction and density. Previous approaches have attempted to address this problem by leveraging some prior information to remove rain streaks from a single image. One of the major limitations of these approaches is that they do not consider the location information of rain drops in the image. The proposed Uncertainty guided Multi-scale Residual Learning (UMRL) network attempts to address this issue by learning the rain content at different scales and using them to estimate the final de-rained output. In addition, we introduce a technique which guides the network to learn the network weights based on the confidence measure about the estimate. Furthermore, we introduce a new training and testing procedure based on the notion of cycle spinning to improve the final de-raining performance. Extensive experiments on synthetic and real datasets to demonstrate that the proposed method achieves significant improvements over the recent state-of-the-art methods. Code is available at: https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning","url_abs":"https://arxiv.org/abs/1906.11129v1","url_pdf":"https://arxiv.org/pdf/1906.11129v1.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":"uncertainty-guided-multi-scale-residual-1","repo_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"single-image-deraining","task_name":"Single Image Deraining"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/single-image-deraining-on-rain100h","task":"Single Image Deraining","dataset":"Rain100H","model":"UMRL","rank_in_archive_order":17,"of":19,"metrics":{"SSIM":"0.832"},"uses_additional_data":false},{"leaderboard":"/sota/single-image-deraining-on-rain100l","task":"Single Image Deraining","dataset":"Rain100L","model":"UMRL","rank_in_archive_order":16,"of":19,"metrics":{"SSIM":"0.923"},"uses_additional_data":false},{"leaderboard":"/sota/single-image-deraining-on-test100","task":"Single Image Deraining","dataset":"Test100","model":"UMRL","rank_in_archive_order":10,"of":12,"metrics":{"SSIM":"0.829"},"uses_additional_data":false},{"leaderboard":"/sota/single-image-deraining-on-test1200","task":"Single Image Deraining","dataset":"Test1200","model":"UMRL","rank_in_archive_order":11,"of":14,"metrics":{"SSIM":"0.910"},"uses_additional_data":false},{"leaderboard":"/sota/single-image-deraining-on-test2800","task":"Single Image Deraining","dataset":"Test2800","model":"UMRL","rank_in_archive_order":8,"of":12,"metrics":{"PSNR":"29.97","SSIM":"0.905"},"uses_additional_data":false}],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=1906.11129","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1906.11129"}},"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/rajeevyasarla/UMRL--using-Cycle-Spinning","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":1,"ran_fixture":1,"ran_draft_wrong":1,"ran_violates":1,"unverified":13},"by_repo_kind":{"official":{"samples":17,"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":"ac269a0e4b8d946e","entry":"default_loader","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"datasets/classification.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/datasets/classification.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":"ac269a0e4b8d946e"}},{"code_sha256_prefix":"70302ac45c91f1c0","entry":"gradient","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"umrl_cycspn_train.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/umrl_cycspn_train.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"70302ac45c91f1c0"}},{"code_sha256_prefix":"430c582cd8bbb1df","entry":"gram_matrix","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"myutils/utils.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/myutils/utils.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":"430c582cd8bbb1df"}},{"code_sha256_prefix":"ab4109634b75ef8b","entry":"is_image_file","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"datasets/classification.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/datasets/classification.py","link_basis":"harvester_set","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ab4109634b75ef8b"}},{"code_sha256_prefix":"3819e334fdd1a5bf","entry":"array2ntpl","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"datasets/util.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/datasets/util.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":"3819e334fdd1a5bf"}},{"code_sha256_prefix":"85a3ff2bf90e5a11","entry":"blockUNet1","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"models/derain_mulcmp.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/models/derain_mulcmp.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":"85a3ff2bf90e5a11"}},{"code_sha256_prefix":"0da6b359cfe07ea0","entry":"conv_block","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"models/derain_mulcmp.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/models/derain_mulcmp.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":"0da6b359cfe07ea0"}},{"code_sha256_prefix":"0f4f2ea321c31cdb","entry":"create_exp_dir","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"misc.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/misc.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":"0f4f2ea321c31cdb"}},{"code_sha256_prefix":"ef2aa4e1449995ca","entry":"deconv_block","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"models/derain_mulcmp.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/models/derain_mulcmp.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":"ef2aa4e1449995ca"}},{"code_sha256_prefix":"5e62950b4e5ad9d6","entry":"getLoader","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"misc.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/misc.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":"5e62950b4e5ad9d6"}},{"code_sha256_prefix":"9c8620ddd189a741","entry":"is_image_file","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"datasets/pix2pix.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/datasets/pix2pix.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":"9c8620ddd189a741"}},{"code_sha256_prefix":"afd8d34f939d3de2","entry":"make_dataset","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"datasets/classification.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/datasets/classification.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":"afd8d34f939d3de2"}},{"code_sha256_prefix":"c2b1125a7ec818a5","entry":"make_dataset","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"datasets/pix2pix.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/datasets/pix2pix.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":"c2b1125a7ec818a5"}},{"code_sha256_prefix":"f0b5f99e7f243446","entry":"ntpl2array","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"datasets/util.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/datasets/util.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":"f0b5f99e7f243446"}},{"code_sha256_prefix":"e1a6917dbeb17928","entry":"subtract_imagenet_mean_batch","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"myutils/utils.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/myutils/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":"e1a6917dbeb17928"}},{"code_sha256_prefix":"78fe823d313a3349","entry":"tensor_load_rgbimage","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"myutils/utils.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/myutils/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":"78fe823d313a3349"}},{"code_sha256_prefix":"0c1d1c82a2060a88","entry":"transpose_ntpl_list","repo":"rajeevyasarla/UMRL--using-Cycle-Spinning","repo_kind":"official","path":"datasets/util.py","file_url":"https://github.com/rajeevyasarla/UMRL--using-Cycle-Spinning/blob/HEAD/datasets/util.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":"0c1d1c82a2060a88"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}