methods
To test this technique, I needed an ocean dataset where there is detailed structure. I chose chlorophyll a concentrations, and sea surface temperatures as measured by the Aqua/MODIS satellite.
For context, chlorophyll a concentration is a proxy for the amount of phytoplankton in the ocean. For biological oceanography, phytoplankton concentrations are one of the most important features to monitor as it forms the base of the oceanic food chain.
The MODIS spectrometer aboard the Aqua satellite was launched in 2002. It images the earth every 1-2 days. I used level 3 preprocessed monthly composite images found here in order to fill in many of the gaps in coverage due to cloud cover, while still maintaining the spatial structure that is present in the chlorphyll and temperature distribution.
Because the sensing data is grayscale and the super resolution network expects an RGB image, I mapped the intensity to common matplotlib colormaps.
Level 3 products (products with the most preprocessing) were most accessible at 4km and 9km per pixel resolutions. For this test, I used the 9km data (low res) as the images to upsample, and 4km data (high res) as the ground truth image. I also compared the super resolution images against basic bicubic upsampling.
To see and run the code, you can launch a Google colab notebook here: Ocean Super Resolution