Sentinel-2 is a European Space Agency (ESA) satellite observation program which provides multispectral imagery at 10-60 m resolution with a repeat time of ~5 days.
I recently needed to install a R environment with several geospatial dependencies. There were conflicts with the base operating system’s configuration of geospatial libraries, so I used the environment manager Miniconda in order to install R into a clean, completely separated environment.
GeoRaster, a Python package which hugely simplifies the process of working with geographic rasters, is now available as a stable package on conda-forge and PyPI with a GPLv3 licence. It provides high-level wrapping of the GDAL library, removing a lot of the complexity traditionally associated with importing GDAL-compatible datasets into Python. I actively maintain and develop the package, which also includes significant contributions from Amaury Dehecq.
Utilising daily satellite data, I’m interesting in counting the number of days each year where each pixel fulfills certain criteria, for instance the number of cloudy days at a pixel each year.
I wanted to compare several years of daily albedo observations to one another by plotting them on the same x (time) axis. You can do this by taking advantage of Pandas’ pivot table functionality.
A common task in the analysis of remotely-sensed datasets is to calculate rates of change over time in, for example, ice motion or melt rates. But we don’t just want to do this for a single point, instead we want to compute the trend at every single pixel inside our analysis area. Implemented inefficiently, our analysis could take several hours to run - but done right we can get results in seconds.
I gave a simple introduction to other Python users in Bristol Geography on how to use Python’s xarray package to manipulate and plot multi-dimensional datasets.
Whilst USGS EarthExplorer provides a basic ability to upload a bounding shapefile with up to 30 points, the size of some search areas such as the Greenland Ice Sheet make it simpler to download metadata of all tiles over a simple Greenland-wide rectangle first. These metadata can be easily queried using GeoPandas to find which tile footprints fall within a more detailed shapefile of your choosing.
I could not get the Anaconda version of GDAL (http://jgomezdans.github.io/new-version-of-gdal-packages-with-hdf-for-anaconda.html) to work with HDF4 datasets but need to retain the Anaconda for Python-GDAL functionality (excepting HDF4). This means that the GDAL command-line utilities which are on the PATH by default don’t work with GDAL. However, the version of GDAL already installed in the virtual machine has the HDF4 bindings enabled: