OpenGeoHub EO-council Summer School 2025
Plenary introduction Plenary introduction Plenary introduction Plenary introduction Plenary introduction Plenary introduction
Training points (ground observations and measurements of environmental variables) that are referenced in space and time, and are available for longer periods, can be used to build spatiotemporal Machine Learning models (stmlm). Such stmlm's can then be used to generate time-series of predictions, which can then be used to run time-series analysis. Spatiotemporal modeling is different from purely spatial mapping is in the following three aspects: (1) points and covariate layers are matched in spacetime (usually a day or month-year period of ground observations or at least the year of ground observations); (2) covariate layers are based on time-series of usually EO-based images (spatiotemporal data cubes) and include also accumulative indices (e.g. cumulative rainfall, cumulative snow cover, cumulative cropping fraction, and similar) and derivatives; (3) during model training and validation, points are subset in both spacetime to avoid overfitting and bias in predictions. This talk will address 15 practical lessons from running stml including how to organize monitoring networks, how to prevent overfitting, how to derive prediction errors in spacetime, how to use time-series of predictions to detect changes and similar.
Global Pasture Watch (GPW) initiative addresses the critical need for monitoring grasslands and pastures, which cover 40% of Earth's surface and are vital for carbon sequestration, food, biodiversity, and cultural heritage.
This practical workshop will introduce participants to the basics of acquiring and processing satellite data using the R programming language, with a focus on the popular terra and rstac packages.
The workshop is designed for beginners with some very basic R knowledge who want to incorporate remote sensing data into their research. Participants will learn how to search, access, and download satellite imagery from various providers through the SpatioTemporal Asset Catalog (STAC) using the rstac package and how to handle spatial data using the terra package, including reading and writing data, raster processing and visualization techniques.
Through hands-on exercises, participants will gain experience working with real satellite datasets and creating efficient and reproducible workflows. Ultimately, the knowledge and skills learned during the workshop will help use these data and processing methods for own research or projects.
As vector data size increases, the demand of cloud computing is also getting more attention. This lecture aims to tackle the big vector data problem and how to tackle it in the cloud environment. The introduction of cloud-native vector formats such as Flatgeobuf, GeoParquet and PMtile. We will have the hand-on visualization and process the big vector dataset such as ICESat-2 and GEDI. The introduction and hand-on will combine with explanation of Vector
Tile and Lazy Loading theories behind.
The first half is the lecture about the theory and algorithm behind the cloud-native format and spatial indexing. The duration is about 30 minutes. The second half is hands-on using DuckDB, Polars, and other python packages to work with cloud-native format. In addition, we also will go through the parallel processing for big vector data, including parallelization using semaphore for writing in a single big file and partitioning big data into smaller chunks in parallel.
Other links:
https://docs.google.com/presentation/d/1B-Z7PPErQfGBqlhqdBn1tJ0CRov9e2XJWHi_Bio1QwA/edit?usp=drive_link
Project, Mapset, Region. Types of modules and their documentation. Pipeline programming
Hackathon workshops Hackathon workshops Hackathon workshops Hackathon workshops Hackathon workshops Hackathon workshops
Social event Social event Social event Social event Social event Social event
The volume of unlabeled Earth observation (EO) data is huge. To interpret this vast amount of data, efficient modelling approaches are needed that can generalize to large geographic areas and are robust to inherent noise. Data-driven approaches promise great potential for interpreting and combining data from different space missions. In this talk, I will present our work on global canopy height mapping (https://langnico.github.io/globalcanopyheight/) with optical satellite images and sparse spaceborne lidar data and discuss a recent project called MMEarth (https://vishalned.github.io/mmearth/) that explored multi-modal pretext tasks for learning representations that are suitable for a range of downstream tasks with limited training data.
The lecture will address how we analyse Earth Observation data
Today, local or cloud-based, and how we ended up in the current
situation. It will also address to which extent cloud platforms
are built on open source software, and how the Earth Observation
community can continue working towards a scientific practice that
is sustainable, FAIR, and that complies to open science requirements.
In this lecture, an overview of the different types of passive optical instruments for earth observation is given. Their limitations are outlined, and possible future development paths of such instruments are discussed.
Together we will investigate what “high resolution” means by working through the specifications of a “truly” hyperspectral satellite.
This tutorial introduces the Google Earth Engine (GEE) API. Participants will learn to filter, process, and export images, extract insights from temporal data, and export results using the API.
This tutorial introduces sits, an R package for Land use and land cover (LULC) classification using satellite image time series.
The workshop will repeat some theory about what multidimensional
arrays are in computer science as well as in R and Python, and
discuss how they can be used for solving Earth Observations problems.
In particular it will discuss the use of arrays for time series
data, for spatial data (raster maps, stacks of raster maps), for
spatiotemporal data (time series of raster maps or stacks), and for
time series of feature (point or polygon) data (vector data cubes).
All will be illustrated by examples in R and Python, in parallel.
Examples will be (mostly) reproducible by participants.
Scripting with GRASS: Bash, R, Python, Julia (?), matching students’ preferences and EO theme
Digital Elevation Model provides knowledge of topography, hydrology, geomorphology. Geomorphometry is a domain to extract the land surface parameters from DEMs. This tutorial introduces leveraging the state-of-art geo-processing softwares to create spatial information from DEMs.
The tutorial will guide participants on effectively monitoring and benchmarking their analysis workflows in a reliable and reproducible way, enabling them to identify performance bottlenecks and explore potential solutions.
Other links:
https://doi.org/10.5281/zenodo.17036542
https://data.crib.utwente.nl/geobench/demo.zip
Hackathon Consultation Hackathon Consultation Hackathon Consultation Hackathon Consultation Hackathon Consultation Hackathon Consultation
Overview of earth observation activities in the Netherlands, focusing on solid earth and deformation
To be provided To be provided To be provided To be provided To be provided To be provided To be provided To be provided To be provided To be provided
To be provided To be provided To be provided To be provided To be provided To be provided To be provided To be provided To be provided To be provided
This lecture discusses the use of models and data processing methods for efficient use of large volumes of satellite data, with application to atmospheric remote sensing. The lecture will come with exercises to gain hands-on experience using some of the techniques that are discussed.
This introduction talk will introduce advantages, technical challenges and currently available softwares.
This summer school session will introduce participants to a Python/Dask-based ecosystem, familiarizing them with the use of the Remote Sensing Deployable Analysis environmenT (RS-DAT) framework to scale EO and RS data analysis using HTC/HPC systems and associated storage resources. The session will cover the tools for data access, retrieval and storage, and demonstrate the scaling up of processing and analysis workflows focused on EO data-sets.
This tutorial lets you dive into the world of data from PACE, NASA's Plankton, Aerosol, Clouds and ocean Ecosystem mission using Python notebooks with a focus on SPEXone.
This tutorial will offer a practical, step-by-step guide on accessing and using Landsat ARCO data for space-time mapping. Participants will work with real data to generate 30-meter resolution maps of the Netherlands from 2000 to 2024. The session will cover the entire workflow, including data acquisition, preprocessing, spatial and temporal analysis, and visualization. All code will be based on the Scikit-map library.
The workshop is designed to be interactive, with participants using either Google Colab or Docker containers to follow along. Key topics will include retrieving Landsat ARCO data, handling large-scale remote sensing datasets, applying spatial and temporal filters, and analyzing changes in land cover over time. The focus will be on implementing a reproducible workflow that can be adapted for similar projects.
This session is intended for participants with some experience in remote sensing or geospatial analysis. Prior knowledge of Python and GIS tools will be useful but not strictly required. Throughout the session, there will be opportunities for discussion and troubleshooting. By the end of the workshop, participants will have a working pipeline for generating and interpreting time-series maps from Landsat ARCO data. All provided input data will also be openly available at global scale for large scale applications.
Social event Social event Social event Social event Social event Social event
Traditionally way to process Earth Observation (EO) data could be complex and time-consuming, requiring users to discover, download, and pre-process large datasets locally.
Clearly, climate change produces more extreme weather and associated ocean anomalies, hence calling for 1) improved weather advisories in the future for loss reduction and 2) for climate projections for adaptation. A better understanding of earth system dynamics may provide benefits in both areas. Earth-orbiting satellites have this century been proven indispensible for monitoring the earth system, both for tracking the weather and for understanding earth system processes. The value of satellite observations is being further exploited by novel future satellite missions. An overview of needs and EO systems will be provided. Winds determine weather, hurricanes, waves and surges, energy production, ocean forcing, heat and carbon budgets, sea ice decline, climate change, andsoforth. Hence, satellite winds are extensively used by marine forecasters, in NWP, by oceanographers, wind engineers, off-shore industry, safety authorities and climate scientists alike. More dynamical information is becoming available due to new and extending virtual constellations of satellite wind-sensing instruments. This new information is hence beneficial for above-mentioned applications. However, it is clear that a remaining gap in the understanding of earth system dynamics remains in the intricate coupling between the atmosphere and the ocean and in the presentation this aspect will also be further elaborated. As an example of the interplay between different professional disicplines, a furthermore interesting and related topic is how to measure and monitor winds in hurricanes?
Discussion panel: How to build an open decentralized EO fediverse? Discussion panel: How to build an open decentralized EO fediverse?
An introduction lecture to Julia, focused on the installation, usage and other first steps. Useful if you plan on following subsequent lectures/tutorials on Julia and have no previous experience.
Introduces the xcube core libraries and associated software components, and presents recent developments in integrating OGC Earth Observation Application Packages into the xcube ecosystem.
In the Earth Observation (EO) domain, data analysis ranges from simple image processing tasks like dilation to complex workflows involving Machine Learning (ML) and Deep Learning (DL). While openEO provides numerous features and functions for data analysis, but given the broad scope of the field, not all potential needs are covered out of the box. To address this, openEO supports User-Defined Functions (UDFs). These UDFs are implemented as standard Python scripts using libraries such as Xarray or Numpy. They allow users to implement custom workflows tailored to specific research requirements.
Thus, in this course, we offer a high-level introduction to openEO with a focus on UDFs and include an example of an advanced EO workflow that applies this concept in practice.
In this tutorial, an AutoML framework (EvalML) will be used for modeling livestock density at polygon level (areal regression) and produce spatial predictions at pixel level.
Lecture on geomorphometry and elevation modelling, alternated by hands-on exercises in Julia on downloading, visualizing and analyzing elevation models.
Discrete Global Grid Systems (DGGS) have emerged as a transformative approach to minimizing spatial distortions in geospatial data processing. Unlike traditional methods that merely name locations, DGGS offer a highly efficient data structure capable of reducing storage requirements by up to 33% compared to the current Sentinel-2 UTM tiling grid. The performance of operations on DGGS native data cubes is intrinsically linked to the cell index, which plays a crucial role in data management and retrieval.
Most DGGS implementations utilize a hierarchical one-dimensional index to name and sort cells, optimizing them for parent-child queries. This structure is particularly beneficial for operations such as upscaling and downscaling, which are essential for integrating data with varying spatial resolutions. However, many real-world applications, such as visualization, fluid dynamics, and convolutions, require efficient handling of distant neighbor queries based on spatial distances. These applications often rely on bounding boxes or moving windows, which are not optimally supported by traditional DGGS implementations.
In response to these challenges, we introduce DGGS.jl, a Julia package specifically developed to create and utilize DGGS native data cubes optimized for distant neighbor queries. Our package employs the DGGRID Q2DI index to store data on a hexagonal ISEA4H grid, enabling compact and efficient data cube arrays. We have implemented methods to seamlessly convert raster data between geographic and Q2DI coordinates, access neighbor disks around a given cell, and visualize these data on a global scale.
To demonstrate the practical application of DGGS.jl, we present a hands-on workshop of our Julia package DGGS.jl to convert traditional geographical data cubes into DGGS native data cubes. Furthermore, we show how to process those data cubes and how to access neighbors and regions around given coordinates.
Hackathon Consultation Hackathon Consultation Hackathon Consultation Hackathon Consultation Hackathon Consultation Hackathon Consultation Hackathon Consultation
Machine learning has become an important toolbox for analyzing complex Earth observation data to derive information from the raw data. In particular, supervised deep learning has achieved great success in solving EO tasks where the relationship between input and output is not clearly understood. However, applications with limited reference data cannot directly benefit from advances in supervised deep learning. This lecture will first introduce the concepts of supervised deep learning and then provide an overview of research in the field of self-supervised learning (SSL), which aims to learn transferable representations (i.e., features) from unlabeled data.
Spaceborne Synthetic Aperture Radar systems are an important component of our Earth Observation space infrastructure. This tutorial will guide the students through the main parameters that define a SAR system (antenna dimensions, available average power, etc.) and link them to the key performance indicators (radiometric sensitivity, spatial resolution, ambiguities, etc).
Radiative Transfer Theory provides a robust framework for understanding how matter interacts with light, enabling us to interpret radiometric observations of planetary atmospheres. This theory allows us to explore photochemical processes and calculate heating rates in atmospheres, both of which are crucial for studying atmospheric chemistry and modeling the climate.
The absorption of telluric greenhouse gases in the Earth's atmosphere and the
methodology for determining the concentrations of CO 2 and CH 4 through satellite
observations are the focal points of this tutorial. For this tutorial, relevant aspects are
discussed in the lecture on Radiative Transfer. The tutorial will guide participants in
simulating the solar spectrum that is reflected by the Earth's atmosphere and
subsequently measured by satellites. Emphasis will be placed on the 1.6 µm spectral
range that encompasses the absorption bands of CO 2 , CH 4 , and water vapor. It is
used by several satellite missions to infer greenhouse gas abundances from
radiometric observations. The model that we will use will incorporate fundamental
instrument characteristics such as spectral resolution and sampling, facilitating a
comparison between our simulation and actual observations obtained from the
GOSAT satellite. By adjusting the input parameters of the model, we strive to
enhance the concordance between the model's predictions and observed data,
thereby allowing us to ascertain the total quantities of CO 2 and CH 4 present in the
monitored atmosphere.
This tutorial session is designed for Cryosphere applications, focusing on the processing and analysis of satellite remote sensing data over ice sheets and sea ice regions. The session will introduce key satellite missions, including Sentinel-1 SAR, CryoSat-2 radar altimetry, and ICESat-2 laser altimetry, with hands-on exercises in Python.
Participants will gain experience in:
Synthetic Aperture Radar (SAR) processing using Sentinel-1 data for ice type classification.
Radar altimetry (CryoSat-2) data analysis, including elevation and freeboard estimation.
Laser altimetry (ICESat-2) data processing, focusing on surface elevation change detection, and sea ice thickness estimation.
The tutorial will cover Python-based tools and libraries, including rasterio, xarray, h5py, and geopandas, to facilitate the analysis of large-scale remote sensing datasets. By the end of the session, participants will be able to apply these techniques to monitor ice sheet dynamics, track sea ice changes, and assess the impact of climate variability on the cryosphere.
Terra package in R (developed by Robert Hijmans; https://rspatial.github.io/terra/) is one of the finest libraries in R for processing gridded/raster data. It is an evolved version of the raster package and is fit for use with large rasters including time-series of raster images / EO images. The tutorial will demonstrate some processing steps used to aggregate time-series of images in parallel, run space-time overlay, combine interpolation functions on raster images and do more complex raster algebra. More examples are available also via: https://opengeohub.github.io/spatial-prediction-eml/
Closing and announcement of hackathon winners Closing and announcement of hackathon winners Closing and announcement of hackathon winners