{"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/channel-consistency-prior-and-self","title":"Channel Consistency Prior and Self-Reconstruction Strategy Based Unsupervised Image Deraining","arxiv_id":"2503.18703","date":"2025-03-24","proceeding":"CVPR 2025 1","authors":["Guanglu Dong","Tianheng Zheng","Yuanzhouhan Cao","Linbo Qing","Chao Ren"],"abstract":"Recently, deep image deraining models based on paired datasets have made a series of remarkable progress. However, they cannot be well applied in real-world applications due to the difficulty of obtaining real paired datasets and the poor generalization performance. In this paper, we propose a novel Channel Consistency Prior and Self-Reconstruction Strategy Based Unsupervised Image Deraining framework, CSUD, to tackle the aforementioned challenges. During training with unpaired data, CSUD is capable of generating high-quality pseudo clean and rainy image pairs which are used to enhance the performance of deraining network. Specifically, to preserve more image background details while transferring rain streaks from rainy images to the unpaired clean images, we propose a novel Channel Consistency Loss (CCLoss) by introducing the Channel Consistency Prior (CCP) of rain streaks into training process, thereby ensuring that the generated pseudo rainy images closely resemble the real ones. Furthermore, we propose a novel Self-Reconstruction (SR) strategy to alleviate the redundant information transfer problem of the generator, further improving the deraining performance and the generalization capability of our method. Extensive experiments on multiple synthetic and real-world datasets demonstrate that the deraining performance of CSUD surpasses other state-of-the-art unsupervised methods and CSUD exhibits superior generalization capability.","url_abs":"https://arxiv.org/abs/2503.18703v1","url_pdf":"https://arxiv.org/pdf/2503.18703v1.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":"channel-consistency-prior-and-self","repo_url":"https://github.com/GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"rain-removal","task_name":"Rain Removal"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2503.18703","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2503.18703"}},"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/GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025","reach":null},{"provenance":"deterministic:regex_extraction","url":"https://github.com/GuangluDong0728/CSUD","reach":{"status":"gone","observed_at":"2026-09-16","how":"tree_404+repo_404"}}],"summary":{"ran":6},"by_repo_kind":{"official":{"samples":6,"ran":6,"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":6,"samples":[{"code_sha256_prefix":"704f1adafa5b1dc0","entry":"BasicConv","repo":"GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025","repo_kind":"official","path":"basicsr/archs/unsupervised_arch.py","file_url":"https://github.com/GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025/blob/HEAD/basicsr/archs/unsupervised_arch.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"704f1adafa5b1dc0"}},{"code_sha256_prefix":"0802c53335f5c2fc","entry":"CALayer","repo":"GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025","repo_kind":"official","path":"basicsr/archs/unsupervised_arch.py","file_url":"https://github.com/GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025/blob/HEAD/basicsr/archs/unsupervised_arch.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"0802c53335f5c2fc"}},{"code_sha256_prefix":"074e6a8195d73bb7","entry":"ChannelPool","repo":"GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025","repo_kind":"official","path":"basicsr/archs/unsupervised_arch.py","file_url":"https://github.com/GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025/blob/HEAD/basicsr/archs/unsupervised_arch.py","link_basis":"first_harvest_node","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":"074e6a8195d73bb7"}},{"code_sha256_prefix":"437ef95f1a77636d","entry":"_NetG_DOWN_init","repo":"GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025","repo_kind":"official","path":"basicsr/archs/unsupervised_arch.py","file_url":"https://github.com/GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025/blob/HEAD/basicsr/archs/unsupervised_arch.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"437ef95f1a77636d"}},{"code_sha256_prefix":"35a4676e6029a8a1","entry":"_Residual_Block","repo":"GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025","repo_kind":"official","path":"basicsr/archs/unsupervised_arch.py","file_url":"https://github.com/GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025/blob/HEAD/basicsr/archs/unsupervised_arch.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"35a4676e6029a8a1"}},{"code_sha256_prefix":"352d576fe9a50184","entry":"spatial_attn_layer","repo":"GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025","repo_kind":"official","path":"basicsr/archs/unsupervised_arch.py","file_url":"https://github.com/GuangluDong0728/CSUD-Unsupervised-Deraining-CVPR2025/blob/HEAD/basicsr/archs/unsupervised_arch.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"352d576fe9a50184"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}