Satellite imagery provides insight into where and how Earth’s surface changes, particularly in remote areas where in situ measurements are generally lacking. With the large volumes of data produced by satellites, we need streamlined computational pipelines for optimized processing capabilities. Although a multitude of platforms exists to process satellite data, these often have expensive license requirements that price out much of the geospatial community. Moreover, many of these platforms are propriety, but transparency is key when developing geospatial processing workflows. Open-source programming is critical to the creation of efficient imagery processing pipelines.

Python-based open-source programming has become a key tool in remote sensing-based science. Python is a high-level object-oriented language designed to be easily readable, and therefore accessible. A number of python libraries or packages are available to process bulk data and develop new datasets or results that can be disseminated to a general audience. The Geospatial Data Abstraction Library (GDAL), for example, is a translator library for raster data that supports a large number of raster formats and underpins almost all proprietary and open-source software. Rasterio is a popular geospatial library built on top of GDAL, which users can leverage to read and process data and create raster files as exports using in-built tools. Even greater accessibility is provided by the Remote Sensing and GIS Library (RSGISLib) which contains over 850 functions across 21 modules for processing geospatial data including both raster (for example, imagery) and vector (for example, shapefile) datasets. With more functions provided, users can perform specialized tasks with more ease. Processing of vector datasets is also achieved through GeoPandas (based on the Pandas library), which builds upon GDAL to provide easy-to-use access to read, manipulate and export vector data.

Credit: Landsat-9 data courtesy of the U.S. Geological Survey

Using open-source software in Python has given the scientific community the ability to develop fast and efficient pipelines for processing satellite and GIS data and disseminating results. For example, in my own work, I have used open-source software to quantify rates of change in mangrove health through NDVI analysis over the past 20 years. By processing 20 years of satellite data using efficient open-source tools, I am able to reduce the amount of time it would normally take to perform this analysis and have a reproducible method. Although using open-source tools is becoming increasingly popular, there is a continued need for developers and maintainers within the community to support these python libraries (Supplementary Information).