{"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/unsupervised-intra-domain-adaptation-for","title":"Unsupervised Intra-domain Adaptation for Semantic Segmentation through Self-Supervision","arxiv_id":"2004.07703","date":"2020-04-16","proceeding":"CVPR 2020 6","authors":["Fei Pan","Inkyu Shin","Francois Rameau","Seokju Lee","In So Kweon"],"abstract":"Convolutional neural network-based approaches have achieved remarkable progress in semantic segmentation. However, these approaches heavily rely on annotated data which are labor intensive. To cope with this limitation, automatically annotated data generated from graphic engines are used to train segmentation models. However, the models trained from synthetic data are difficult to transfer to real images. To tackle this issue, previous works have considered directly adapting models from the source data to the unlabeled target data (to reduce the inter-domain gap). Nonetheless, these techniques do not consider the large distribution gap among the target data itself (intra-domain gap). In this work, we propose a two-step self-supervised domain adaptation approach to minimize the inter-domain and intra-domain gap together. First, we conduct the inter-domain adaptation of the model; from this adaptation, we separate the target domain into an easy and hard split using an entropy-based ranking function. Finally, to decrease the intra-domain gap, we propose to employ a self-supervised adaptation technique from the easy to the hard split. Experimental results on numerous benchmark datasets highlight the effectiveness of our method against existing state-of-the-art approaches. The source code is available at https://github.com/feipan664/IntraDA.git.","url_abs":"https://arxiv.org/abs/2004.07703v4","url_pdf":"https://arxiv.org/pdf/2004.07703v4.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":"unsupervised-intra-domain-adaptation-for","repo_url":"https://github.com/feipan664/IntraDA","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"unsupervised-intra-domain-adaptation-for","repo_url":"https://github.com/feipanir/intrada","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"domain-adaptation","task_name":"Domain Adaptation"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"},{"task_slug":"synthetic-to-real-translation","task_name":"Synthetic-to-Real Translation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/domain-adaptation-on-synscapes-to-cityscapes","task":"Domain Adaptation","dataset":"Synscapes-to-Cityscapes","model":"IntraDA","rank_in_archive_order":2,"of":3,"metrics":{"mIoU":"54.2"},"uses_additional_data":false},{"leaderboard":"/sota/synthetic-to-real-translation-on-gtav-to","task":"Synthetic-to-Real Translation","dataset":"GTAV-to-Cityscapes Labels","model":"IntraDA","rank_in_archive_order":58,"of":73,"metrics":{"mIoU":"46.3"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/2004.07703","atlas_url":"https://app.syntology.ai/?focus=2004.07703","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2004.07703"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/feipanir/intrada","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/feipan664/IntraDA","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":4,"ran_draft_wrong":1,"unverified":3},"by_repo_kind":{"official":{"samples":5,"ran":3,"repositories":1},"listed":{"samples":3,"ran":2,"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":"fd2101a3c93f7216","entry":"colorize","repo":"feipan664/IntraDA","repo_kind":"official","path":"entropy_rank/entropy.py","file_url":"https://github.com/feipan664/IntraDA/blob/HEAD/entropy_rank/entropy.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":"fd2101a3c93f7216"}},{"code_sha256_prefix":"0e9a4da6df589c1b","entry":"cross_entropy_2d","repo":"feipan664/IntraDA","repo_kind":"official","path":"ADVENT/advent/utils/loss.py","file_url":"https://github.com/feipan664/IntraDA/blob/HEAD/ADVENT/advent/utils/loss.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":"0e9a4da6df589c1b"}},{"code_sha256_prefix":"360b5a2923d789bd","entry":"entropy_loss","repo":"feipanir/intrada","repo_kind":"listed","path":"ADVENT/advent/utils/loss.py","file_url":"https://github.com/feipanir/intrada/blob/HEAD/ADVENT/advent/utils/loss.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":"360b5a2923d789bd"}},{"code_sha256_prefix":"25997aa7ef845f38","entry":"find_rare_class","repo":"feipan664/IntraDA","repo_kind":"official","path":"entropy_rank/entropy.py","file_url":"https://github.com/feipan664/IntraDA/blob/HEAD/entropy_rank/entropy.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":"25997aa7ef845f38"}},{"code_sha256_prefix":"4cdbe58fbb463198","entry":"get_fc_discriminator","repo":"feipanir/intrada","repo_kind":"listed","path":"ADVENT/advent/model/discriminator.py","file_url":"https://github.com/feipanir/intrada/blob/HEAD/ADVENT/advent/model/discriminator.py","link_basis":"plan_row","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4cdbe58fbb463198"}},{"code_sha256_prefix":"99126596f4eeddef","entry":"cluster_subdomain","repo":"feipan664/IntraDA","repo_kind":"official","path":"entropy_rank/entropy.py","file_url":"https://github.com/feipan664/IntraDA/blob/HEAD/entropy_rank/entropy.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":"99126596f4eeddef"}},{"code_sha256_prefix":"91291dfac136d4a8","entry":"get_deeplab_v2","repo":"feipanir/intrada","repo_kind":"listed","path":"ADVENT/advent/model/deeplabv2.py","file_url":"https://github.com/feipanir/intrada/blob/HEAD/ADVENT/advent/model/deeplabv2.py","link_basis":"plan_row","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":"91291dfac136d4a8"}},{"code_sha256_prefix":"043a52d8f9ff0f65","entry":"to_numpy","repo":"feipan664/IntraDA","repo_kind":"official","path":"intrada/train_UDA.py","file_url":"https://github.com/feipan664/IntraDA/blob/HEAD/intrada/train_UDA.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":"043a52d8f9ff0f65"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}