{"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/a-universal-degradation-based-bridging","title":"A Universal Degradation-based Bridging Technique for Domain Adaptive Semantic Segmentation","arxiv_id":"2412.10339","date":"2024-12-13","proceeding":null,"authors":["Wangkai Li","Rui Sun","Tianzhu Zhang"],"abstract":"Semantic segmentation often suffers from significant performance degradation when the trained network is applied to a different domain. To address this issue, unsupervised domain adaptation (UDA) has been extensively studied. Existing methods introduce the domain bridging techniques to mitigate substantial domain gap, which construct intermediate domains to facilitate the gradual transfer of knowledge across different domains. However, these strategies often require dataset-specific designs and may generate unnatural intermediate distributions that lead to semantic shift. In this paper, we propose DiDA, a universal degradation-based bridging technique formalized as a diffusion forward process. DiDA consists of two key modules: (1) Degradation-based Intermediate Domain Construction, which creates continuous intermediate domains through simple image degradation operations to encourage learning domain-invariant features as domain differences gradually diminish; (2) Semantic Shift Compensation, which leverages a diffusion encoder to encode and compensate for semantic shift information with degraded time-steps, preserving discriminative representations in the intermediate domains. As a plug-and-play solution, DiDA supports various degradation operations and seamlessly integrates with existing UDA methods. Extensive experiments on prevalent synthetic-to-real semantic segmentation benchmarks demonstrate that DiDA consistently improves performance across different settings and achieves new state-of-the-art results when combined with existing methods.","url_abs":"https://arxiv.org/abs/2412.10339v1","url_pdf":"https://arxiv.org/pdf/2412.10339v1.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":[],"tasks":[{"task_slug":"domain-adaptation","task_name":"Domain Adaptation"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"},{"task_slug":"unsupervised-domain-adaptation","task_name":"Unsupervised Domain Adaptation"}],"methods":[{"method_slug":"diffusion","method_name":"Diffusion"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2412.10339","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2412.10339"}},"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":"deterministic:regex_extraction","url":"https://github.com/Woof6/DiDA","reach":{"status":"ok"}}],"summary":{"ran_honours":2,"ran_violates":3,"ran_draft_wrong":3,"unverified":2},"by_repo_kind":{"found_in_text":{"samples":10,"ran":8,"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":10,"samples":[{"code_sha256_prefix":"7f1040f5e3991d5e","entry":"identity","repo":"Woof6/DiDA","repo_kind":"found_in_text","path":"diffusion/mydataset.py","file_url":"https://github.com/Woof6/DiDA/blob/HEAD/diffusion/mydataset.py","link_basis":"plan_row","language":"python","status":"ran_honours","verification_level":2,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"7f1040f5e3991d5e"}},{"code_sha256_prefix":"d1ef6b8cb9a28a53","entry":"default","repo":"Woof6/DiDA","repo_kind":"found_in_text","path":"demo/diff_demo.py","file_url":"https://github.com/Woof6/DiDA/blob/HEAD/demo/diff_demo.py","link_basis":"harvester_set","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d1ef6b8cb9a28a53"}},{"code_sha256_prefix":"aa5486a3650902d8","entry":"exists","repo":"Woof6/DiDA","repo_kind":"found_in_text","path":"diffusion/mysimple.py","file_url":"https://github.com/Woof6/DiDA/blob/HEAD/diffusion/mysimple.py","link_basis":"harvester_set","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"aa5486a3650902d8"}},{"code_sha256_prefix":"608e364a9d2376a3","entry":"exists","repo":"Woof6/DiDA","repo_kind":"found_in_text","path":"demo/diff_demo.py","file_url":"https://github.com/Woof6/DiDA/blob/HEAD/demo/diff_demo.py","link_basis":"harvester_set","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"608e364a9d2376a3"}},{"code_sha256_prefix":"903b0922a749302e","entry":"get_backbone_cfg","repo":"Woof6/DiDA","repo_kind":"found_in_text","path":"experiments.py","file_url":"https://github.com/Woof6/DiDA/blob/HEAD/experiments.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"903b0922a749302e"}},{"code_sha256_prefix":"3578196ac2abaecf","entry":"get_model_base","repo":"Woof6/DiDA","repo_kind":"found_in_text","path":"experiments.py","file_url":"https://github.com/Woof6/DiDA/blob/HEAD/experiments.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"3578196ac2abaecf"}},{"code_sha256_prefix":"7063030b369b4ce1","entry":"get_pretraining_file","repo":"Woof6/DiDA","repo_kind":"found_in_text","path":"experiments.py","file_url":"https://github.com/Woof6/DiDA/blob/HEAD/experiments.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"7063030b369b4ce1"}},{"code_sha256_prefix":"f3232418205f7cbd","entry":"identity","repo":"Woof6/DiDA","repo_kind":"found_in_text","path":"diffusion/mysimple.py","file_url":"https://github.com/Woof6/DiDA/blob/HEAD/diffusion/mysimple.py","link_basis":"plan_row","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"f3232418205f7cbd"}},{"code_sha256_prefix":"09c8479d9a5b3e06","entry":"extract","repo":"Woof6/DiDA","repo_kind":"found_in_text","path":"demo/diff_demo.py","file_url":"https://github.com/Woof6/DiDA/blob/HEAD/demo/diff_demo.py","link_basis":"plan_row","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":"09c8479d9a5b3e06"}},{"code_sha256_prefix":"c68d3478b77240b4","entry":"is_lambda","repo":"Woof6/DiDA","repo_kind":"found_in_text","path":"diffusion/mysimple.py","file_url":"https://github.com/Woof6/DiDA/blob/HEAD/diffusion/mysimple.py","link_basis":"first_harvest_node","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":"c68d3478b77240b4"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}