{"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/depth-information-assisted-collaborative","title":"Depth Information Assisted Collaborative Mutual Promotion Network for Single Image Dehazing","arxiv_id":"2403.01105","date":"2024-03-02","proceeding":"CVPR 2024 1","authors":["Yafei Zhang","Shen Zhou","Huafeng Li"],"abstract":"Recovering a clear image from a single hazy image is an open inverse problem. Although significant research progress has been made, most existing methods ignore the effect that downstream tasks play in promoting upstream dehazing. From the perspective of the haze generation mechanism, there is a potential relationship between the depth information of the scene and the hazy image. Based on this, we propose a dual-task collaborative mutual promotion framework to achieve the dehazing of a single image. This framework integrates depth estimation and dehazing by a dual-task interaction mechanism and achieves mutual enhancement of their performance. To realize the joint optimization of the two tasks, an alternative implementation mechanism with the difference perception is developed. On the one hand, the difference perception between the depth maps of the dehazing result and the ideal image is proposed to promote the dehazing network to pay attention to the non-ideal areas of the dehazing. On the other hand, by improving the depth estimation performance in the difficult-to-recover areas of the hazy image, the dehazing network can explicitly use the depth information of the hazy image to assist the clear image recovery. To promote the depth estimation, we propose to use the difference between the dehazed image and the ground truth to guide the depth estimation network to focus on the dehazed unideal areas. It allows dehazing and depth estimation to leverage their strengths in a mutually reinforcing manner. Experimental results show that the proposed method can achieve better performance than that of the state-of-the-art approaches.","url_abs":"https://arxiv.org/abs/2403.01105v2","url_pdf":"https://arxiv.org/pdf/2403.01105v2.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":"depth-information-assisted-collaborative","repo_url":"https://github.com/zhoushen1/dcmpnet","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"depth-estimation","task_name":"Depth Estimation"},{"task_slug":"image-dehazing","task_name":"Image Dehazing"},{"task_slug":"single-image-dehazing","task_name":"Single Image Dehazing"}],"methods":[{"method_slug":"focus","method_name":"Focus"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2403.01105","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2403.01105"}},"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/zhoushen1/dcmpnet","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/zhoushen1/DCMPNet","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":11,"ran_honours":1,"ran_fixture":1,"ran_draft_wrong":1,"unverified":13},"by_repo_kind":{"official":{"samples":27,"ran":14,"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":"b0dcd995030abc5b","entry":"DRDB","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.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":"b0dcd995030abc5b"}},{"code_sha256_prefix":"0d0d45169aa1a103","entry":"DoubleConv","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.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":"0d0d45169aa1a103"}},{"code_sha256_prefix":"55954452ecc12fd8","entry":"Down","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.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":"55954452ecc12fd8"}},{"code_sha256_prefix":"267713eaeae79b45","entry":"LayNormal","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"267713eaeae79b45"}},{"code_sha256_prefix":"224bc3934ecfe86e","entry":"MFM","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.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":"224bc3934ecfe86e"}},{"code_sha256_prefix":"77b034476886713d","entry":"Mlp","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.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":"77b034476886713d"}},{"code_sha256_prefix":"3132e8be72a417a6","entry":"UP","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.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":"3132e8be72a417a6"}},{"code_sha256_prefix":"3473ae78bcc3dcbc","entry":"Up","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.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":"3473ae78bcc3dcbc"}},{"code_sha256_prefix":"5f3a17664b3159bb","entry":"WATT","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.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":"5f3a17664b3159bb"}},{"code_sha256_prefix":"3d1084cb97ab35dc","entry":"align","repo":"zhoushen1/dcmpnet","repo_kind":"official","path":"datasets/loader.py","file_url":"https://github.com/zhoushen1/dcmpnet/blob/HEAD/datasets/loader.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":"3d1084cb97ab35dc"}},{"code_sha256_prefix":"69467681d00a88d8","entry":"augment","repo":"zhoushen1/dcmpnet","repo_kind":"official","path":"datasets/loader.py","file_url":"https://github.com/zhoushen1/dcmpnet/blob/HEAD/datasets/loader.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":"69467681d00a88d8"}},{"code_sha256_prefix":"2a53db1b6432ab8c","entry":"get_relative_positions","repo":"zhoushen1/dcmpnet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/dcmpnet/blob/HEAD/models/DIACMPN.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2a53db1b6432ab8c"}},{"code_sha256_prefix":"751569c78a842e44","entry":"window_partition","repo":"zhoushen1/dcmpnet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/dcmpnet/blob/HEAD/models/DIACMPN.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"751569c78a842e44"}},{"code_sha256_prefix":"7b0d02f75bf6b439","entry":"window_reverse","repo":"zhoushen1/dcmpnet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/dcmpnet/blob/HEAD/models/DIACMPN.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7b0d02f75bf6b439"}},{"code_sha256_prefix":"3c87f1fe380a1d6c","entry":"Att","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.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":"3c87f1fe380a1d6c"}},{"code_sha256_prefix":"d0d146851a4ae1b7","entry":"DIACMPN","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.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":"d0d146851a4ae1b7"}},{"code_sha256_prefix":"1a8ea485f8f664f9","entry":"LEGM","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.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":"1a8ea485f8f664f9"}},{"code_sha256_prefix":"3e60f82697d63378","entry":"TB","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.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":"3e60f82697d63378"}},{"code_sha256_prefix":"f210a1ee6dfd893c","entry":"UNet","repo":"zhoushen1/DCMPNet","repo_kind":"official","path":"models/DIACMPN.py","file_url":"https://github.com/zhoushen1/DCMPNet/blob/HEAD/models/DIACMPN.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":"f210a1ee6dfd893c"}},{"code_sha256_prefix":"e4b2196560e07093","entry":"chw_to_hwc","repo":"zhoushen1/dcmpnet","repo_kind":"official","path":"utils/common.py","file_url":"https://github.com/zhoushen1/dcmpnet/blob/HEAD/utils/common.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":"e4b2196560e07093"}},{"code_sha256_prefix":"8e6dfffd626f0962","entry":"create_window","repo":"zhoushen1/dcmpnet","repo_kind":"official","path":"utils/metrics.py","file_url":"https://github.com/zhoushen1/dcmpnet/blob/HEAD/utils/metrics.py","link_basis":"harvester_set","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":"8e6dfffd626f0962"}},{"code_sha256_prefix":"e2424ce033ba3a0f","entry":"gaussian","repo":"zhoushen1/dcmpnet","repo_kind":"official","path":"utils/metrics.py","file_url":"https://github.com/zhoushen1/dcmpnet/blob/HEAD/utils/metrics.py","link_basis":"harvester_set","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":"e2424ce033ba3a0f"}},{"code_sha256_prefix":"81db6e556c7e4498","entry":"hwc_to_chw","repo":"zhoushen1/dcmpnet","repo_kind":"official","path":"utils/common.py","file_url":"https://github.com/zhoushen1/dcmpnet/blob/HEAD/utils/common.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":"81db6e556c7e4498"}},{"code_sha256_prefix":"22d056c672f87531","entry":"read_img","repo":"zhoushen1/dcmpnet","repo_kind":"official","path":"utils/common.py","file_url":"https://github.com/zhoushen1/dcmpnet/blob/HEAD/utils/common.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":"22d056c672f87531"}},{"code_sha256_prefix":"750d4b7871bdab54","entry":"scatter","repo":"zhoushen1/dcmpnet","repo_kind":"official","path":"utils/data_parallel.py","file_url":"https://github.com/zhoushen1/dcmpnet/blob/HEAD/utils/data_parallel.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":"750d4b7871bdab54"}},{"code_sha256_prefix":"4d884799472e12a5","entry":"scatter_kwargs","repo":"zhoushen1/dcmpnet","repo_kind":"official","path":"utils/data_parallel.py","file_url":"https://github.com/zhoushen1/dcmpnet/blob/HEAD/utils/data_parallel.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":"4d884799472e12a5"}},{"code_sha256_prefix":"45f7c22382b7ff2f","entry":"ssim","repo":"zhoushen1/dcmpnet","repo_kind":"official","path":"utils/metrics.py","file_url":"https://github.com/zhoushen1/dcmpnet/blob/HEAD/utils/metrics.py","link_basis":"harvester_set","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":"45f7c22382b7ff2f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}