Skip to content

Hybrid-Scale Self-Similarity Exploitation for Remote Sensing Image Super-Resolution (accepted by TGRS)

Notifications You must be signed in to change notification settings

weizhiliang0520/HSENet

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

HSENet for remote sensing image super-resolution

Official Pytorch implementation of the paper "Hybrid-Scale Self-Similarity Exploitation for Remote Sensing Image Super-Resolution" accepted by IEEE TGRS.

We propose a novel hybrid-scale self-similarity exploitation network (HSENet) for remote sensing image super-resolution.The HSENet effectively leverages the internal recurrence of information both in single- and cross-scale within the images. We introduce a single-scale self-similarity exploitation module (SSEM) to mine the feature correlation within the same scale image. Meanwhile, we design a cross-scale connection structure (CCS) to capture the recurrences across different scales. By combining SSEM and CCS, we further develop a hybrid-scale self-similarity exploitation module (HSEM) to construct the final HSENet. The ablation studies demonstrate the effectiveness of the main components of the HSENet. Our method obtains better super-resolved results on UCMerced data set than several state-of-the-art approaches in terms of both accuracy and visual performance. Moreover, experiments on real-world satellite data (GF-1 and GF-2) verify the robustness of HSENet, and the experiments on NWPU data set show that the details of ground targets recovered by our method can contribute to more accurate classification when given low-resolution inputs.

Requirements

  • Python 3.6+
  • Pytorch>=1.6
  • torchvision>=0.7.0
  • matplotlib
  • opencv-python
  • scipy
  • tqdm
  • scikit-image

Installation

Clone or download this code and install aforementioned requirements

cd codes

Train

Download the UCMerced dataset and split it into train/val/test data, where the original images would be taken as the HR references and the corresponding LR images are generated by bicubic down-sample.

# x4
python demo_train.py --model=HSENET --dataset=UCMerced --scale=4 --patch_size=192 --ext=img --save=HSENETx4_UCMerced
# x3
python demo_train.py --model=HSENET --dataset=UCMerced --scale=3 --patch_size=144 --ext=img --save=HSENETx4_UCMerced
# x2
python demo_train.py --model=HSENET --dataset=UCMerced --scale=2 --patch_size=96 --ext=img --save=HSENETx4_UCMerced

The train/val data pathes are set in data/init.py

Test

The test data path and the save path can be edited in demo_deploy.py

# x4
python demo_deploy.py --model=HSENET --scale=4
# x3
python demo_deploy.py --model=HSENET --scale=3
# x2
python demo_deploy.py --model=HSENET --scale=2

Evaluation

Compute the evaluated results in term of PSNR and SSIM, where the SR/HR paths can be edited in calculate_PSNR_SSIM.py

cd metric_scripts 
python calculate_PSNR_SSIM.py

Citation

If you find this code useful for your research, please cite our paper:

@article{lei2021hybrid,
  title={Hybrid-Scale Self-Similarity Exploitation for Remote Sensing Image Super-Resolution},
  author={Lei, Sen and Shi, Zhenwei},
  journal={IEEE Transactions on Geoscience and Remote Sensing},
  year={2021},
  publisher={IEEE}
}

Acknowledgements

This code is built on RCAN (Pytorch) and EDSR (Pytorch). We thank the authors for sharing the codes.

About

Hybrid-Scale Self-Similarity Exploitation for Remote Sensing Image Super-Resolution (accepted by TGRS)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 90.6%
  • MATLAB 9.4%