Home

Awesome

PWC License

<h1 align="center"> ~ Multi-Image Super-Resolution Task ~ </h1>

RAMS logo

Are you a Deep Learning practitioner, but you are tired of dealing with Cats and Dogs datasets? Do you want to work on a real problem with a high impact on the research community, but it is always tricky to get your hand's on the final preprocessed data? If that's the case, you are in the right place!

We created this repository for two primary reasons:

<p align="center"> <img src="media/misr_task.png" > </p>

N.B.: This repository has been inspired by the work of Francisco Dorr. He effectively adapted the WDSR solution to the multi-image super-resolution task, beating for the first time the record of the official Proba-V challenge winners. Check it out his alternative solution and let you inspired as well for new great and amazing ideas.

1.0 Getting Started with the Installation

Python3 and Tensorflow 2.x are required and should be installed on the host machine following the official guide.

  1. Clone this repository

    git clone https://github.com/EscVM/RAMS
    
  2. Install the required additional packages

    pip3 install -r requirements.txt
    

2.0 Playground Notebooks

We provide with this repository three different notebooks. The first one can be used to pre-process the Proba-V dataset and experiment with your own solutions. The other two provdies all necessary code to train, modify and test RAMS, the residual attention multi-image super-resolution network expalined in this paper.

2.1 Pre-processing notebook

Use the pre-processing notebook to process the Proba-V original dataset and obtain the training/validation/testing arrays ready to be used.

NB: Testing is the original ESA testing dataset without ground truths. Validation is the portion of the dataset we've used to test our solution and all major multi-image super-resolution methodologies. However, you can still use the testing dataset and the post-mortem ESA website to evaluate your technique.

2.2 Training notebook

Use the training notebook to re-train the original or modified version of the RAMS architecture.

2.3 Testing notebook

Use the testing notebook to test RAMS model, with pre-trained or re-trained weights, over the validation set. Moreover, you can use the final chapter of the notebook to make predictions with the original ESA testing set, create a zip file and submit it to the post-mortem website. The following table gives you a reference with results achieved by the RAMS architecture and all literature major solutions over the validation set.

<p align="center"> <img src="media/probav_results_summary.png" width="450px"> </p>

Citation

Use this bibtex if you enjoyed this repository and you want to cite it:

@article{salvetti2020multi,
  title={Multi-Image Super Resolution of Remotely Sensed Images Using Residual Attention Deep Neural Networks},
  author={Salvetti, Francesco and Mazzia, Vittorio and Khaliq, Aleem and Chiaberge, Marcello},
  journal={Remote Sensing},
  volume={12},
  number={14},
  year={2020},
  publisher={Multidisciplinary Digital Publishing Institute}
}