🌟 This paper was accepted in AAAI(2026)!

February 10, 2026 · View on GitHub

MFmamba

This repository contains the official implementation of the paper "MFmamba: A Multi-function Network for Panchromatic Image Resolution Restoration Based on State-Space Model".

🌟 MFmamba: A Multi-function Network for Panchromatic Image Resolution Restoration Based on State-Space Model


📸 Overview

We designed a novel multi-function model MFmamba to realize the tasks of SR, spectral recovery, joint SR and spectral recovery through three different inputs.

💡 MFmamba utilizes UNet++ as the backbone, and a Mamba Upsample Block (MUB) is combined with UNet++. Secondly, a Dual Pool Attention (DPA) is designed to replace the skip connection in UNet++. Finally, a Multi-scale Hybrid Cross Block (MHCB) is proposed for initial feature extraction.

Framework Overview


📸 Environment and Dependencies

First, download the code of the MambaIR paper to your local machine. The link is: MambaIR.
Second

cd ./MambaIR
conda env create -f environment.yaml
conda activate wangqianqian_23_mambair

Third

conda install packaging

Fourth

pip install causal_conv1d==1.0.0
pip install mamba_ssm==1.0.1

Install other packages as needed, such as:

pip install opencv-python
pip install pytorch-msssim
pip install tensorboard
pip install basicsr
pip install timm
pip install matplotlib
pip install openpyxl

📸 Data preparation

Taking the Potsdam dataset as an example Potsdam
>>--train
>>--val
>>--test
The dataset used in the experiment will be organized into corresponding download links for download later.

📸 train

2.Train Put the training/val/test data into the corresponding path in train.py.

For Super-Resolution and Colorization task:

python train.py --task colorx2 --img_train_path ../../../../data/Potsdam_Original/train/label/ --img_test_path ../../../../data/Potsdam_Original/test/label/

For Super-Resolution task:

python train.py --task srx2 --img_train_path ../../../../data/Potsdam_Original/train/label/ --img_test_path ../../../../data/Potsdam_Original/test/label/

For Colorization task:

python train.py --task color --img_train_path ../../../../data/Potsdam_Original/train/label/ --img_test_path ../../../../data/Potsdam_Original/test/label/

📸 test

3.Test Put the training/val/test data into the corresponding path in test.py.

The pre trained model generated during the training process follows the ./log_1/pkl/best.

For Super-Resolution and Colorization task:

python test.py --task colorx2 --best_pkl_path ./log/pkl/best/best.pkl

For Super-Resolution and Colorization task:

python test.py --task srx2 --best_pkl_path ./log/pkl/best/best.pkl

For Super-Resolution and Colorization task:


python test.py --task color --best_pkl_path ./log/pkl/best/best.pkl

The Pre-Train model can get here. pre-train model Extract code: 12SR

📸 Overview

We designed a novel multi-function model MFmamba to realize the tasks of SR, spectral recovery, joint SR and spectral recovery through three different inputs.

📸 Result of Joint SR and Spectral Recovery

Result Overview

📸 Result of Super-Resolution

SR Overview

📸 Result of Spectral Recovery

Color Overview

---