FOSS4G 2023 workshops

eo-learn and eo-grow: from prototype to production in Earth Observation data science
06-27, 14:00–18:00 (Europe/Tirane), UBT C / N111 - Second Floor

A workshop about open-source Python frameworks eo-learn and eo-grow for developing solutions with satellite data will show how these frameworks can be used to build a simple prototype and then scale it to an end-to-end product.


With the wide availability of satellite and other geospatial data the potential for developing innovative Earth Observation (EO) solutions with a real-world impact has never been higher. However, the road from an idea to a fully-functional product is long and full of challenges. Most of them arise due to the sheer size of EO data required to extract valuable information.

In the workshop, we will present two open-spource packages developed and maintained by the EO research team from Sinergise. The combination of eo-learn and eo-grow introduces a well-structured way of working with EO data, is fully customizable, and streamlines the way large-scale products can be developed. The workshop will be a hands-on session, where we will start with a simple prototype use-case and gradually upgrade it to an end-to-end product.

In the first part, we'll look at eo-learn, a library designed to bridge EO data and the data science ecosystem in Python. The library has already established itself in the EO community over the past years but has recently got a larger upgrade. We'll work with its main building blocks EOPatch, EOTask, and EOWorkflow, and explore how these can be used to build our prototype code.

In the second part, we'll continue with a new contribution to open-source: eo-grow, built on top of eo-learn. It introduces concepts of data-processing pipelines, management of large areas of interest, user-defined storage structure, and detailed logging, all customizable with configuration files. Finally, we will look at its powerful and easy-to-use scalability based on the Ray framework. This will enable us to run our entire use case on a cluster of servers efficiently and in a production-ready manner.

Requirements for the Attendees
  • Install Docker (https://docs.docker.com/get-docker/)
  • Pull the docker image (docker pull sentinelhub/foss4g-2023-tutorial:latest-with-backup)
  • Start a docker container (docker run --shm-size=8.00gb -p 8888:8888 -p 8265:8265 sentinelhub/foss4g-2023-tutorial:latest-with-backup)
  • Click on the Jupyter server link and start :)
Some other links for convenience
See also:

A data scientist at Sinergise, Slovenia. Formal education: PhD from particle physics.

This speaker also appears in: