In this repository, we provide a implementation of a quality map-associated attention network (QA-Net) for a multi-image super-resolution of a satellite images. The satellite images are often occluded by atmospheric disturbances such as clouds, and the position of the disturbances varies by the images. Many radiometric and geometric approaches are proposed to detect atmospheric disturbances. Still, the utilization of detection results, i.e., quality maps in deep learning was limited to pre-processing or computation of loss. So we present an architecture that fully incorporates QMs into a deep learning scheme for the first time.
- Clone this repository.
git clone https://github.com/haewonc/QA-Net.git
- Match the dependencies.
conda env create -f requirements.txt
- Download the pretrained model here and place it inside results/saved_models/.
- Download cropped, splitted, and preprocessed dataset by TR-MISR. Google Drive
- Place the dataset outside the qa-net directory.
- Process the validation and test set to select 9 low-resolution images.
cd utils
python preprocess.py
Or you can just download our preprocessed dataset. Google Drive
- Quantitative results
python valid.py
- Qualitative results (TBU)
The ground-truth high-resolution images for test-set is not accessible. But you can generate submission file and submit it to the post-mortem leaderboard of the competition.
python predict.py
- You can train QA-Net model with command below. The training with default configuration file should work on a machine with NVIDIA RTX 3080Ti (Memory: 12GB).
python train.py
- Check saved images during training in results/train_imgs and results/val_imgs.
- You can change the data directory, number of modules, batch size, and total number of epochs by editing the
config.py
.