This repo is the implementation of HDiff-HIR: Hierarchically Conditional Diffusion Model for Hyperspectral Image Reconstruction (TCSVT2025).
The performance are reported on 10 scenes of the KAIST dataset. The test size of FLOPS is 256 x 256.
| Method | Params (M) | FLOPS (G) | PSNR | SSIM |
|---|---|---|---|---|
| TSA-Net | 44.25 | 110.06 | 31.46 | 0.894 |
| HDNet | 2.37 | 154.76 | 34.97 | 0.943 |
| MST | 2.03 | 28.15 | 35.18 | 0.948 |
| CST | 3.00 | 40.10 | 36.12 | 0.957 |
| HDiff-HIR (ours) | 13.80 | 74.48 | 36.88 | 0.966 |
Download results of HDiff-HIR (Google Drive).
Download cave_1024_28 (Baidu Disk, code: fo0q | One Drive), CAVE_512_28 (Baidu Disk, code: ixoe | One Drive), KAIST_CVPR2021 (Baidu Disk, code: 5mmn | One Drive), TSA_simu_data (Baidu Disk, code: efu8 | One Drive), TSA_real_data (Baidu Disk, code: eaqe | One Drive), and then put them into the corresponding folders of datasets/ and recollect them as the following form:
|--HDiff-HIR
|--real
|-- dataset.py
|-- option.py
|-- train.py
|-- sample.py
|--simulation
|-- dataset.py
|-- option.py
|-- train.py
|-- sample.py
|--datasets
|--cave_1024_28
|--scene1.mat
:
|--CAVE_512_28
|--scene1.mat
:
|--KAIST_CVPR2021
|--1.mat
:
|--TSA_simu_data
|--mask.mat
|--Truth
|--scene01.mat
:
|--TSA_real_data
|--mask.mat
|--Measurements
|--scene1.mat
: Following CST and DAUHST, we use the CAVE dataset (cave_1024_28) as the simulation training set. Both the CAVE (CAVE_512_28) and KAIST (KAIST_CVPR2021) datasets are used as the real training set.
cd HDiff-HIR/simulation/
python train.py --method hdiff-lThe training log, trained model, and reconstructed HSI will be saved in HDiff-HIR/simulation/exp/test/ (configurable via --outf in option.py).
cd HDiff-HIR/simulation/
python sample.py --method hdiff-lThe sampled results will be saved to the directory specified in the sample.py script.
cd HDiff-HIR/real/
python train.py --method hdiff-lThe training log, trained model, and reconstructed HSI will be saved in HDiff-HIR/real/real/diffusion/.
cd HDiff-HIR/real/
python sample.py --method hdiff-lThe sampled results will be output into the corresponding test directory inside real/.
For the visualization toolkit, please see DSMT-main.
If this code helps you, please consider citing our work:
@ARTICLE{luo2026hdiff,
author={Luo, Fulin and Chen, Xi and Fu, Chuan and Guo, Tan and Du, Bo},
journal={IEEE Transactions on Circuits and Systems for Video Technology},
title={HDiff-HIR: Hierarchically Conditional Diffusion Model for Hyperspectral Image Reconstruction},
year={2026},
volume={36},
number={1},
pages={777-791},
}