{"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/learning-to-adapt-structured-output-space-for","title":"Learning to Adapt Structured Output Space for Semantic Segmentation","arxiv_id":"1802.10349","date":"2018-02-28","proceeding":"CVPR 2018 6","authors":["Yi-Hsuan Tsai","Wei-Chih Hung","Samuel Schulter","Kihyuk Sohn","Ming-Hsuan Yang","Manmohan Chandraker"],"abstract":"Convolutional neural network-based approaches for semantic segmentation rely on supervision with pixel-level ground truth, but may not generalize well to unseen image domains. As the labeling process is tedious and labor intensive, developing algorithms that can adapt source ground truth labels to the target domain is of great interest. In this paper, we propose an adversarial learning method for domain adaptation in the context of semantic segmentation. Considering semantic segmentations as structured outputs that contain spatial similarities between the source and target domains, we adopt adversarial learning in the output space. To further enhance the adapted model, we construct a multi-level adversarial network to effectively perform output space domain adaptation at different feature levels. Extensive experiments and ablation study are conducted under various domain adaptation settings, including synthetic-to-real and cross-city scenarios. We show that the proposed method performs favorably against the state-of-the-art methods in terms of accuracy and visual quality.","url_abs":"https://arxiv.org/abs/1802.10349v3","url_pdf":"https://arxiv.org/pdf/1802.10349v3.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":"learning-to-adapt-structured-output-space-for","repo_url":"https://github.com/wasidennis/AdaptSegNet","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"learning-to-adapt-structured-output-space-for","repo_url":"https://github.com/KookHoiKim/AdaptSegNet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"learning-to-adapt-structured-output-space-for","repo_url":"https://github.com/NiteshBharadwaj/adaptsegnet-materials","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"learning-to-adapt-structured-output-space-for","repo_url":"https://github.com/Sshanu/AdaptSegNet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}},{"paper_slug":"learning-to-adapt-structured-output-space-for","repo_url":"https://github.com/buriedms/AdaptSegNet-Paddle","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"paddle","reach":{"status":"ok"}},{"paper_slug":"learning-to-adapt-structured-output-space-for","repo_url":"https://github.com/jizongFox/ReproduceAdaptSegNet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"learning-to-adapt-structured-output-space-for","repo_url":"https://github.com/lym29/DASeg","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"learning-to-adapt-structured-output-space-for","repo_url":"https://github.com/stu92054/Domain-adaptation-on-segmentation","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"learning-to-adapt-structured-output-space-for","repo_url":"https://github.com/tanpinquan/EE5934_2","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"learning-to-adapt-structured-output-space-for","repo_url":"https://github.com/xiaowillow/AdaptSegNet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"learning-to-adapt-structured-output-space-for","repo_url":"https://github.com/xiaowillow/AdaptSegNet1","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"learning-to-adapt-structured-output-space-for","repo_url":"https://github.com/zqwhu/SegDAwithBoundary","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"domain-adaptation","task_name":"Domain Adaptation"},{"task_slug":"image-to-image-translation","task_name":"Image-to-Image Translation"},{"task_slug":"segmentation","task_name":"Segmentation"},{"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":"AdaptSegNet","rank_in_archive_order":3,"of":3,"metrics":{"mIoU":"52.7"},"uses_additional_data":false},{"leaderboard":"/sota/image-to-image-translation-on-synthia-to","task":"Image-to-Image Translation","dataset":"SYNTHIA-to-Cityscapes","model":"Multi-level Adaptation","rank_in_archive_order":21,"of":28,"metrics":{"mIoU (13 classes)":"46.7"},"uses_additional_data":false},{"leaderboard":"/sota/image-to-image-translation-on-synthia-to","task":"Image-to-Image Translation","dataset":"SYNTHIA-to-Cityscapes","model":"Single-level Adaptation","rank_in_archive_order":23,"of":28,"metrics":{"mIoU (13 classes)":"45.9"},"uses_additional_data":false},{"leaderboard":"/sota/synthetic-to-real-translation-on-gtav-to","task":"Synthetic-to-Real Translation","dataset":"GTAV-to-Cityscapes Labels","model":"AdaptSegNet(multi-level)","rank_in_archive_order":64,"of":73,"metrics":{"mIoU":"42.4"},"uses_additional_data":false},{"leaderboard":"/sota/synthetic-to-real-translation-on-synthia-to-1","task":"Synthetic-to-Real Translation","dataset":"SYNTHIA-to-Cityscapes","model":"AdaptSegNet(Multi-level)","rank_in_archive_order":38,"of":38,"metrics":{"MIoU (13 classes)":"46.7"},"uses_additional_data":false}],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=1802.10349","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1802.10349"}},"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/buriedms/AdaptSegNet-Paddle","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/KookHoiKim/AdaptSegNet","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/lym29/DASeg","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/xiaowillow/AdaptSegNet","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/wasidennis/AdaptSegNet","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/xiaowillow/AdaptSegNet1","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/NiteshBharadwaj/adaptsegnet-materials","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/zqwhu/SegDAwithBoundary","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/jizongFox/ReproduceAdaptSegNet","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/tanpinquan/EE5934_2","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/stu92054/Domain-adaptation-on-segmentation","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Sshanu/AdaptSegNet","reach":{"status":"ok","spdx":"NOASSERTION"}}],"summary":{"ran_honours":3,"ran_draft_wrong":3,"unverified":1},"by_repo_kind":{"listed":{"samples":6,"ran":5,"repositories":2}},"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":7,"samples":[{"code_sha256_prefix":"21ac171a17099011","entry":"colorize_mask","repo":"lym29/DASeg","repo_kind":"listed","path":"evaluate_cityscapes.py","file_url":"https://github.com/lym29/DASeg/blob/HEAD/evaluate_cityscapes.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"21ac171a17099011"}},{"code_sha256_prefix":"fac5364e2f53c6db","entry":"conv3x3","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"fac5364e2f53c6db"}},{"code_sha256_prefix":"0e1dfebc19d73e54","entry":"get_feature","repo":"lym29/DASeg","repo_kind":"listed","path":"train_gta2cityscapes_multi.py","file_url":"https://github.com/lym29/DASeg/blob/HEAD/train_gta2cityscapes_multi.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"0e1dfebc19d73e54"}},{"code_sha256_prefix":"b3b7c1c716f4ca66","entry":"lr_poly","repo":"lym29/DASeg","repo_kind":"listed","path":"train_gta2cityscapes_multi.py","file_url":"https://github.com/lym29/DASeg/blob/HEAD/train_gta2cityscapes_multi.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"b3b7c1c716f4ca66"}},{"code_sha256_prefix":"ebaa2a398dee9113","entry":"normalize","repo":"lym29/DASeg","repo_kind":"listed","path":"train_gta2cityscapes_multi.py","file_url":"https://github.com/lym29/DASeg/blob/HEAD/train_gta2cityscapes_multi.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ebaa2a398dee9113"}},{"code_sha256_prefix":"27504cbeb5811ea6","entry":"outS","repo":"stu92054/Domain-adaptation-on-segmentation","repo_kind":"listed","path":"Adapt_Structured_Output/model/deeplab_multi.py","file_url":"https://github.com/stu92054/Domain-adaptation-on-segmentation/blob/HEAD/Adapt_Structured_Output/model/deeplab_multi.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"27504cbeb5811ea6"}},{"code_sha256_prefix":"3e46b6e38c6e89ea","entry":"Res_Deeplab","repo":"stu92054/Domain-adaptation-on-segmentation","repo_kind":"listed","path":"Adapt_Structured_Output/model/deeplab_multi.py","file_url":"https://github.com/stu92054/Domain-adaptation-on-segmentation/blob/HEAD/Adapt_Structured_Output/model/deeplab_multi.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":"3e46b6e38c6e89ea"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}