{"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/enabling-country-scale-land-cover-mapping","title":"Enabling Country-Scale Land Cover Mapping with Meter-Resolution Satellite Imagery","arxiv_id":"2209.00727","date":"2022-09-01","proceeding":null,"authors":["Xin-Yi Tong","Gui-Song Xia","Xiao Xiang Zhu"],"abstract":"High-resolution satellite images can provide abundant, detailed spatial information for land cover classification, which is particularly important for studying the complicated built environment. However, due to the complex land cover patterns, the costly training sample collections, and the severe distribution shifts of satellite imageries, few studies have applied high-resolution images to land cover mapping in detailed categories at large scale. To fill this gap, we present a large-scale land cover dataset, Five-Billion-Pixels. It contains more than 5 billion labeled pixels of 150 high-resolution Gaofen-2 (4 m) satellite images, annotated in a 24-category system covering artificial-constructed, agricultural, and natural classes. In addition, we propose a deep-learning-based unsupervised domain adaptation approach that can transfer classification models trained on labeled dataset (referred to as the source domain) to unlabeled data (referred to as the target domain) for large-scale land cover mapping. Specifically, we introduce an end-to-end Siamese network employing dynamic pseudo-label assignment and class balancing strategy to perform adaptive domain joint learning. To validate the generalizability of our dataset and the proposed approach across different sensors and different geographical regions, we carry out land cover mapping on five megacities in China and six cities in other five Asian countries severally using: PlanetScope (3 m), Gaofen-1 (8 m), and Sentinel-2 (10 m) satellite images. Over a total study area of 60,000 square kilometers, the experiments show promising results even though the input images are entirely unlabeled. The proposed approach, trained with the Five-Billion-Pixels dataset, enables high-quality and detailed land cover mapping across the whole country of China and some other Asian countries at meter-resolution.","url_abs":"https://arxiv.org/abs/2209.00727v2","url_pdf":"https://arxiv.org/pdf/2209.00727v2.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":"enabling-country-scale-land-cover-mapping","repo_url":"https://github.com/x-ytong/DPA","is_official":1,"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":"land-cover-classification","task_name":"Land Cover Classification"},{"task_slug":"pseudo-label","task_name":"Pseudo Label"},{"task_slug":"segmentation-of-remote-sensing-imagery","task_name":"Segmentation Of Remote Sensing Imagery"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"},{"task_slug":"the-semantic-segmentation-of-remote-sensing","task_name":"The Semantic Segmentation Of Remote Sensing Imagery"},{"task_slug":"transfer-learning","task_name":"Transfer Learning"},{"task_slug":"unsupervised-domain-adaptation","task_name":"Unsupervised Domain Adaptation"}],"methods":[{"method_slug":"siamese-network","method_name":"Siamese Network"}],"datasets_introduced":[{"slug":"five-billion-pixels","name":"Five-Billion-Pixels","full_name":""}],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2209.00727","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2209.00727"}},"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/x-ytong/DPA","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":7},"by_repo_kind":{"official":{"samples":7,"ran":0,"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":"8aaf83dc58bc7e12","entry":"cm_generation","repo":"x-ytong/DPA","repo_kind":"official","path":"evaluate.py","file_url":"https://github.com/x-ytong/DPA/blob/HEAD/evaluate.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":"8aaf83dc58bc7e12"}},{"code_sha256_prefix":"2467c0ea7024fdd9","entry":"decode_seg_map_sequence","repo":"x-ytong/DPA","repo_kind":"official","path":"dataloaders/utils.py","file_url":"https://github.com/x-ytong/DPA/blob/HEAD/dataloaders/utils.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":"2467c0ea7024fdd9"}},{"code_sha256_prefix":"5a56c8c731a2aa84","entry":"decode_segmap","repo":"x-ytong/DPA","repo_kind":"official","path":"dataloaders/utils.py","file_url":"https://github.com/x-ytong/DPA/blob/HEAD/dataloaders/utils.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":"5a56c8c731a2aa84"}},{"code_sha256_prefix":"9fc511d02a0ce156","entry":"encode_annotation","repo":"x-ytong/DPA","repo_kind":"official","path":"evaluate.py","file_url":"https://github.com/x-ytong/DPA/blob/HEAD/evaluate.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":"9fc511d02a0ce156"}},{"code_sha256_prefix":"0f6ac842ca9b0b42","entry":"encode_segmap","repo":"x-ytong/DPA","repo_kind":"official","path":"dataloaders/utils.py","file_url":"https://github.com/x-ytong/DPA/blob/HEAD/dataloaders/utils.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":"0f6ac842ca9b0b42"}},{"code_sha256_prefix":"489005b6899612c7","entry":"kappa_coefficient","repo":"x-ytong/DPA","repo_kind":"official","path":"evaluate.py","file_url":"https://github.com/x-ytong/DPA/blob/HEAD/evaluate.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":"489005b6899612c7"}},{"code_sha256_prefix":"21a06b7950d8c874","entry":"pseudolabel","repo":"x-ytong/DPA","repo_kind":"official","path":"utils/pseudo_label.py","file_url":"https://github.com/x-ytong/DPA/blob/HEAD/utils/pseudo_label.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":"21a06b7950d8c874"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}