{"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/can-generative-geospatial-diffusion-models","title":"Can Generative Geospatial Diffusion Models Excel as Discriminative Geospatial Foundation Models?","arxiv_id":"2503.07890","date":"2025-03-10","proceeding":null,"authors":["Yuru Jia","Valerio Marsocci","Ziyang Gong","Xue Yang","Maarten Vergauwen","Andrea Nascetti"],"abstract":"Self-supervised learning (SSL) has revolutionized representation learning in Remote Sensing (RS), advancing Geospatial Foundation Models (GFMs) to leverage vast unlabeled satellite imagery for diverse downstream tasks. Currently, GFMs primarily focus on discriminative objectives, such as contrastive learning or masked image modeling, owing to their proven success in learning transferable representations. However, generative diffusion models--which demonstrate the potential to capture multi-grained semantics essential for RS tasks during image generation--remain underexplored for discriminative applications. This prompts the question: can generative diffusion models also excel and serve as GFMs with sufficient discriminative power? In this work, we answer this question with SatDiFuser, a framework that transforms a diffusion-based generative geospatial foundation model into a powerful pretraining tool for discriminative RS. By systematically analyzing multi-stage, noise-dependent diffusion features, we develop three fusion strategies to effectively leverage these diverse representations. Extensive experiments on remote sensing benchmarks show that SatDiFuser outperforms state-of-the-art GFMs, achieving gains of up to +5.7% mIoU in semantic segmentation and +7.9% F1-score in classification, demonstrating the capacity of diffusion-based generative foundation models to rival or exceed discriminative GFMs. Code will be released.","url_abs":"https://arxiv.org/abs/2503.07890v1","url_pdf":"https://arxiv.org/pdf/2503.07890v1.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":"contrastive-learning","task_name":"Contrastive Learning"},{"task_slug":"image-generation","task_name":"Image Generation"},{"task_slug":"representation-learning","task_name":"Representation Learning"},{"task_slug":"self-supervised-learning","task_name":"Self-Supervised Learning"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"}],"methods":[{"method_slug":"contrastive-learning","method_name":"Contrastive Learning"},{"method_slug":"diffusion","method_name":"Diffusion"},{"method_slug":"focus","method_name":"Focus"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2503.07890","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2503.07890"}},"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/yurujaja/SatDiFuser","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":1,"unverified":5},"by_repo_kind":{"found_in_text":{"samples":6,"ran":1,"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":"56e01a00f6319825","entry":"get_norm","repo":"yurujaja/SatDiFuser","repo_kind":"found_in_text","path":"archs/detectron2/resnet.py","file_url":"https://github.com/yurujaja/SatDiFuser/blob/HEAD/archs/detectron2/resnet.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"56e01a00f6319825"}},{"code_sha256_prefix":"f8a38c7742f140a1","entry":"get_dataset_class","repo":"yurujaja/SatDiFuser","repo_kind":"found_in_text","path":"datasets/utils.py","file_url":"https://github.com/yurujaja/SatDiFuser/blob/HEAD/datasets/utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"f8a38c7742f140a1"}},{"code_sha256_prefix":"5b44e5acce4c8e5c","entry":"get_datasets","repo":"yurujaja/SatDiFuser","repo_kind":"found_in_text","path":"datasets/utils.py","file_url":"https://github.com/yurujaja/SatDiFuser/blob/HEAD/datasets/utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"5b44e5acce4c8e5c"}},{"code_sha256_prefix":"616857aa9ad58210","entry":"get_named_modules_with_suffix","repo":"yurujaja/SatDiFuser","repo_kind":"found_in_text","path":"archs/ldm_extractor.py","file_url":"https://github.com/yurujaja/SatDiFuser/blob/HEAD/archs/ldm_extractor.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"616857aa9ad58210"}},{"code_sha256_prefix":"c30bf7b59ab2a4c7","entry":"get_tokens_embedding","repo":"yurujaja/SatDiFuser","repo_kind":"found_in_text","path":"archs/ldm_extractor.py","file_url":"https://github.com/yurujaja/SatDiFuser/blob/HEAD/archs/ldm_extractor.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"c30bf7b59ab2a4c7"}},{"code_sha256_prefix":"944c9c79ccf549e4","entry":"get_xt_next","repo":"yurujaja/SatDiFuser","repo_kind":"found_in_text","path":"archs/ldm_extractor.py","file_url":"https://github.com/yurujaja/SatDiFuser/blob/HEAD/archs/ldm_extractor.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"944c9c79ccf549e4"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}