{"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/changemamba-remote-sensing-change-detection","title":"ChangeMamba: Remote Sensing Change Detection With Spatiotemporal State Space Model","arxiv_id":"2404.03425","date":"2024-04-04","proceeding":null,"authors":["Hongruixuan Chen","Jian Song","Chengxi Han","Junshi Xia","Naoto Yokoya"],"abstract":"Convolutional neural networks (CNN) and Transformers have made impressive progress in the field of remote sensing change detection (CD). However, both architectures have inherent shortcomings: CNN are constrained by a limited receptive field that may hinder their ability to capture broader spatial contexts, while Transformers are computationally intensive, making them costly to train and deploy on large datasets. Recently, the Mamba architecture, based on state space models, has shown remarkable performance in a series of natural language processing tasks, which can effectively compensate for the shortcomings of the above two architectures. In this paper, we explore for the first time the potential of the Mamba architecture for remote sensing CD tasks. We tailor the corresponding frameworks, called MambaBCD, MambaSCD, and MambaBDA, for binary change detection (BCD), semantic change detection (SCD), and building damage assessment (BDA), respectively. All three frameworks adopt the cutting-edge Visual Mamba architecture as the encoder, which allows full learning of global spatial contextual information from the input images. For the change decoder, which is available in all three architectures, we propose three spatio-temporal relationship modeling mechanisms, which can be naturally combined with the Mamba architecture and fully utilize its attribute to achieve spatio-temporal interaction of multi-temporal features, thereby obtaining accurate change information. On five benchmark datasets, our proposed frameworks outperform current CNN- and Transformer-based approaches without using any complex training strategies or tricks, fully demonstrating the potential of the Mamba architecture in CD tasks. Further experiments show that our architecture is quite robust to degraded data. The source code will be available in https://github.com/ChenHongruixuan/MambaCD","url_abs":"https://arxiv.org/abs/2404.03425v7","url_pdf":"https://arxiv.org/pdf/2404.03425v7.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":"changemamba-remote-sensing-change-detection","repo_url":"https://github.com/chenhongruixuan/mambacd","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"2d-semantic-segmentation","task_name":"2D Semantic Segmentation"},{"task_slug":"attribute","task_name":"Attribute"},{"task_slug":"building-damage-assessment","task_name":"Building Damage Assessment"},{"task_slug":"change-detection","task_name":"Change Detection"},{"task_slug":"mamba","task_name":"Mamba"},{"task_slug":"state-space-models","task_name":"State Space Models"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/2d-semantic-segmentation-on-xbd","task":"2D Semantic Segmentation","dataset":"xBD","model":"MambaBDA-Base","rank_in_archive_order":1,"of":5,"metrics":{"Classification F1-score":"0.7884","Localization F1-score":"0.8141","Weighted Average F1-score":"0.8141"},"uses_additional_data":false},{"leaderboard":"/sota/change-detection-on-levir","task":"Change Detection","dataset":"LEVIR+","model":"ChangeMamba","rank_in_archive_order":1,"of":9,"metrics":{"F1":"88.39","IoU":"79.20","KC":"87.91","OA":"99.06","Prcision":"89.24","Recall":"87.57"},"uses_additional_data":false},{"leaderboard":"/sota/change-detection-on-second","task":"Change Detection","dataset":"SECOND","model":"ChangeMamba","rank_in_archive_order":1,"of":2,"metrics":{"Fscd":"64.03","SeK":"24.11","mIoU":"73.68"},"uses_additional_data":false},{"leaderboard":"/sota/change-detection-on-sysu-cd","task":"Change Detection","dataset":"SYSU-CD","model":"ChangeMamba","rank_in_archive_order":3,"of":12,"metrics":{"F1":"83.11","IoU":"71.10","KC":"78.13","OA":"92.30","Precision":"86.11","Recall":"80.31"},"uses_additional_data":false},{"leaderboard":"/sota/change-detection-on-whu-cd","task":"Change Detection","dataset":"WHU-CD","model":"ChangeMamba","rank_in_archive_order":4,"of":22,"metrics":{"F1":"94.19","IoU":"89.02","KC":"93.98","Overall Accuracy":"99.58","Precision":"96.18","Recall":"92.23"},"uses_additional_data":false}],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2404.03425","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2404.03425"}},"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/chenhongruixuan/mambacd","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":5,"unverified":4},"by_repo_kind":{"official":{"samples":9,"ran":5,"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":"e9c3ba9cd1c348a6","entry":"build_head","repo":"chenhongruixuan/mambacd","repo_kind":"official","path":"changedetection/models/builders.py","file_url":"https://github.com/chenhongruixuan/mambacd/blob/HEAD/changedetection/models/builders.py","link_basis":"first_harvest_node","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":"e9c3ba9cd1c348a6"}},{"code_sha256_prefix":"21a17e068ab68253","entry":"extract_model_state_dict","repo":"chenhongruixuan/mambacd","repo_kind":"official","path":"changedetection/checkpoints.py","file_url":"https://github.com/chenhongruixuan/mambacd/blob/HEAD/changedetection/checkpoints.py","link_basis":"first_harvest_node","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":"21a17e068ab68253"}},{"code_sha256_prefix":"900d316c3b86d875","entry":"format_log_block","repo":"chenhongruixuan/mambacd","repo_kind":"official","path":"changedetection/logging_utils.py","file_url":"https://github.com/chenhongruixuan/mambacd/blob/HEAD/changedetection/logging_utils.py","link_basis":"first_harvest_node","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":"900d316c3b86d875"}},{"code_sha256_prefix":"38727dde2f236d95","entry":"format_value","repo":"chenhongruixuan/mambacd","repo_kind":"official","path":"changedetection/logging_utils.py","file_url":"https://github.com/chenhongruixuan/mambacd/blob/HEAD/changedetection/logging_utils.py","link_basis":"first_harvest_node","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":"38727dde2f236d95"}},{"code_sha256_prefix":"e3e2bdd7e980f0f2","entry":"is_interactive_stream","repo":"chenhongruixuan/mambacd","repo_kind":"official","path":"changedetection/logging_utils.py","file_url":"https://github.com/chenhongruixuan/mambacd/blob/HEAD/changedetection/logging_utils.py","link_basis":"first_harvest_node","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":"e3e2bdd7e980f0f2"}},{"code_sha256_prefix":"f7fca94a333f0a3d","entry":"build_backbone","repo":"chenhongruixuan/mambacd","repo_kind":"official","path":"changedetection/models/builders.py","file_url":"https://github.com/chenhongruixuan/mambacd/blob/HEAD/changedetection/models/builders.py","link_basis":"first_harvest_node","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":"f7fca94a333f0a3d"}},{"code_sha256_prefix":"81509265e2e1fda9","entry":"load_encoder_pretrained_weights","repo":"chenhongruixuan/mambacd","repo_kind":"official","path":"changedetection/checkpoints.py","file_url":"https://github.com/chenhongruixuan/mambacd/blob/HEAD/changedetection/checkpoints.py","link_basis":"first_harvest_node","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":"81509265e2e1fda9"}},{"code_sha256_prefix":"c10476d7e491f533","entry":"load_model_weights","repo":"chenhongruixuan/mambacd","repo_kind":"official","path":"changedetection/checkpoints.py","file_url":"https://github.com/chenhongruixuan/mambacd/blob/HEAD/changedetection/checkpoints.py","link_basis":"first_harvest_node","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":"c10476d7e491f533"}},{"code_sha256_prefix":"c1a13c7ad7c5f1a9","entry":"resolve_decoder_components","repo":"chenhongruixuan/mambacd","repo_kind":"official","path":"changedetection/models/builders.py","file_url":"https://github.com/chenhongruixuan/mambacd/blob/HEAD/changedetection/models/builders.py","link_basis":"first_harvest_node","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":"c1a13c7ad7c5f1a9"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}