Skip to content

Buddhi19/MambaFCS

Repository files navigation

🚀 Mamba-FCS

Joint Spatio-Frequency Feature Fusion with Change-Guided Attention and SeK Loss

🏆 Current Best-Performing Algorithm for Remote Sensing Semantic Change Detection 🏆

IEEE JSTARS Published Paper arXiv Preprint Hugging Face Model Weights MIT License Citations

Visual State Space backbone fused with explicit spatio–frequency cues, bidirectional change guidance, and class-imbalance-aware loss—delivering robust, precise semantic change detection under tough illumination/seasonal shifts and severe long-tail labels.


🔥🔥 Updates

  • Mar 2026 - Notebook Released For an interactive workflow, use the notebook ✨✨annotations/MambaFCS.ipynb✨✨.
  • Mar 2026 - Weights + Notebook Released — Official Mamba-FCS checkpoints are now available on 🤗🤗Hugging Face🤗🤗.
  • Feb 2026 - Paper Published — IEEE JSTARS (Official DOI: https://doi.org/10.1109/JSTARS.2026.3663066)
  • Jan 2026 - Accepted — IEEE JSTARS (Camera-ready version submitted)
  • Jan 2026 - Code Released — Full training pipeline with structured YAML configurations is now available
  • Aug 2025 - Preprint Released — Preprint available on arXiv: https://arxiv.org/abs/2508.08232

Ready to push the boundaries of change detection? Let's go.


🔭 Overview

Semantic Change Detection in remote sensing is tough: seasonal shifts, lighting variations, and severe class imbalance constantly trip up traditional methods.

Mamba-FCS changes the game:

  • VMamba backbone → linear-time long-range modeling (no more transformer VRAM nightmares)
  • Joint spatio–frequency fusion → injects FFT log-amplitude cues into spatial features for appearance invariance + sharper boundaries
  • CGA module → change probabilities actively guide semantic refinement (and vice versa)
  • SeK Loss → finally treats rare classes with the respect they deserve

Outcome: cleaner maps, stronger rare-class recall, and real-world resilience.

Mamba-FCS Architecture
Spatial power + frequency smarts + change-guided attention = next-level SCD


✨ Why Spatio–Frequency Matters

The frequency domain is known to reveal latent structures in signals that remain obscure in the spatial domain.

Building on this premise, we explore whether Fourier transformation of latent representations can expose similarly discriminative hidden features.

This spatio–frequency, change-guided design is a key factor underlying improved rare-class performance and sharper semantic boundary delineation.


🧠 Method in ~30 Seconds

Feed in bi-temporal images T1 and T2:

  1. VMamba encoder extracts rich multi-scale features from both timestamps
  2. JSF injects frequency-domain log-amplitude (FFT) into spatial features → stronger invariance to illumination/seasonal shifts
  3. CGA leverages change cues to tighten BCD ↔ SCD synergy
  4. Lightweight decoder predicts the final semantic change map
  5. SeK Loss drives balanced optimization, even when changed pixels are scarce

Simple. Smart. Superior.


⚡ Quick Start

1. Download Released Mamba-FCS Weights

Pretrained Mamba-FCS checkpoints are now hosted on Hugging Face: buddhi19/MambaFCS.

Use these weights directly for inference and evaluation, or keep them alongside your experiment checkpoints for quick benchmarking.

2. Grab Pre-trained VMamba Weights

Model Links
VMamba-Tiny ZenodoGDriveBaiduYun
VMamba-Small ZenodoGDriveBaiduYun
VMamba-Base ZenodoGDriveBaiduYun

Set pretrained_weight_path in your YAML to the downloaded .pth.

3. Install

git clone https://github.com/Buddhi19/MambaFCS.git
cd MambaFCS

conda create -n mambafcs python=3.10 -y
conda activate mambafcs

pip install --upgrade pip
pip install -r requirements.txt
pip install pyyaml

4. Build Selective Scan Kernel (Critical Step)

cd kernels/selective_scan
pip install .
cd ../../..

(Pro tip: match your torch CUDA version with nvcc/GCC if you hit issues.)


🗂 Data Preparation

Plug-and-play support for SECOND and Landsat-SCD.

SECOND Layout

/path/to/SECOND/
├── train/
│   ├── A/          # T1 images
│   ├── B/          # T2 images
│   ├── labelA/     # T1 class IDs (single-channel)
│   └── labelB/     # T2 class IDs
├── test/
│   ├── A/
│   ├── B/
│   ├── labelA/
│   └── labelB/
├── train.txt
└── test.txt

Landsat-SCD

Same idea, with train_list.txt, val_list.txt, test_list.txt.

Must-do: Use integer class maps (not RGB). Convert palettes first.


🚀 Train & Evaluation

YAML-driven — clean and flexible.

  1. Edit paths in configs/train_LANDSAT.yaml or configs/train_SECOND.yaml

  2. Fire it up:

# Landsat-SCD
python train.py --config configs/train_LANDSAT.yaml

# SECOND
python train.py --config configs/train_SECOND.yaml

Checkpoints + TensorBoard logs land in saved_models/<your_name>/.

Resume runs? Just flip resume: true and point to optimizer/scheduler states.


🧪 Interactive Evaluation & Annotation

For an interactive workflow, use the notebook annotations/MambaFCS.ipynb.

It is set up for users who want to:

  • run evaluations interactively
  • inspect predictions and qualitative outputs
  • perform annotation and review in a notebook-driven workflow

Pair it with the released checkpoints on Hugging Face for fast experimentation without retraining.


📊 Results

Straight from the paper — reproducible out of the box:

Method Dataset OA (%) FSCD (%) mIoU (%) SeK (%)
SCanNet SECOND 87.86 63.66 73.42 23.94
ChangeMamba SECOND 88.12 64.03 73.68 24.11
Mamba-FCS SECOND 88.62 65.78 74.07 25.50
SCanNet Landsat-SCD 96.04 85.62 86.37 52.63
ChangeMamba Landsat-SCD 96.08 86.61 86.91 53.66
Mamba-FCS Landsat-SCD 96.25 89.27 88.81 60.26
Visuals speak louder: expect dramatically cleaner boundaries and far better rare-class detection.

🙏 Acknowledgements

This work is strongly influenced by prior advances in state-space vision backbones and Mamba-based change detection. In particular, we acknowledge:


📜 Citation

If Mamba-FCS fuels your research, please cite:

@ARTICLE{mambafcs,
  author={Wijenayake, Buddhi and Ratnayake, Athulya and Sumanasekara, Praveen and Godaliyadda, Roshan and Ekanayake, Parakrama and Herath, Vijitha and Wasalathilaka, Nichula},
  journal={IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing}, 
  title={Mamba-FCS: Joint Spatio-Frequency Feature Fusion, Change-Guided Attention, and SeK Inspired Loss for Enhanced Semantic Change Detection in Remote Sensing}, 
  year={2026},
  volume={19},
  number={},
  pages={7680-7698},
  keywords={Semantics;Feature extraction;Transformers;Remote sensing;Frequency-domain analysis;Decoding;Computational modeling;Computer architecture;Context modeling;Lighting;Remote sensing imagery;semantic change detection (CD);separated Kappa (SeK);spatial–frequency fusion;state-space models (SSMs)},
  doi={10.1109/JSTARS.2026.3663066}}

You might consider citing:

@INPROCEEDINGS{11450773,
  author={Wijenayake, W.M.B.S.K. and Ratnayake, R.M.A.M.B. and Sumanasekara, D.M.U.P. and Wasalathilaka, N.S. and Piratheepan, M. and Godaliyadda, G.M.R.I. and Ekanayake, M.P.B. and Herath, H.M.V.R.},
  booktitle={2025 IEEE 19th International Conference on Industrial and Information Systems (ICIIS)}, 
  title={Precision Spatio-Temporal Feature Fusion for Robust Remote Sensing Change Detection}, 
  year={2026},
  volume={19},
  number={},
  pages={557-562},
  keywords={Accuracy;Computational modeling;Pipelines;Feature extraction;Transformers;Decoding;Remote sensing;Optimization;Monitoring;Context modeling;Remote Sensing;Binary Change Detection;State Space Models;Mamba},
  doi={10.1109/ICIIS69028.2026.11450773}}
@INPROCEEDINGS{11217111,
  author={Ratnayake, R.M.A.M.B. and Wijenayake, W.M.B.S.K. and Sumanasekara, D.M.U.P. and Godaliyadda, G.M.R.I. and Herath, H.M.V.R. and Ekanayake, M.P.B.},
  booktitle={2025 Moratuwa Engineering Research Conference (MERCon)}, 
  title={Enhanced SCanNet with CBAM and Dice Loss for Semantic Change Detection}, 
  year={2025},
  volume={},
  number={},
  pages={84-89},
  keywords={Training;Accuracy;Attention mechanisms;Sensitivity;Semantics;Refining;Feature extraction;Transformers;Power capacitors;Remote sensing},
  doi={10.1109/MERCon67903.2025.11217111}}

🌍🛰️ Got inspired? Give us a STAR🌟🌟

🧾 Citing Works

  1. Shen, H., et al. (2026)
    Foundation Model-Driven Semantic Change Detection in Remote Sensing Imagery
    📄 arXiv:2602.13780