🤖 AI Summary
This work addresses the unique challenges in Earth observation machine learning—such as georeferenced imagery, heterogeneous labels, and spatially aware sampling—and the lack of standardized tools that seamlessly integrate with mainstream deep learning frameworks. Building upon the TorchGeo library, this study presents the first systematic integration of geospatial data processing within the PyTorch ecosystem, offering an end-to-end, reproducible development paradigm. The methodology is demonstrated through a semantic segmentation case study on water bodies using Sentinel-2 imagery, showcasing a cohesive workflow that combines unified coordinate transformations, spatially aware samplers, pretrained models, and interactive Jupyter Notebook tutorials. The pipeline directly produces GeoTIFF prediction outputs suitable for downstream geospatial analysis. All code and tutorials are publicly released.
📝 Abstract
Earth observation machine learning pipelines differ fundamentally from standard computer vision workflows. Imagery is typically delivered as large, georeferenced scenes, labels may be raster masks or vector geometries in distinct coordinate reference systems, and both training and evaluation often require spatially aware sampling and splitting strategies. TorchGeo is a PyTorch-based domain library that provides datasets, samplers, transforms and pre-trained models with the goal of making it easy to use geospatial data in machine learning pipelines. In this paper, we introduce a tutorial that demonstrates 1.) the core TorchGeo abstractions through code examples, and 2.) an end-to-end case study on multispectral water segmentation from Sentinel-2 imagery using the Earth Surface Water dataset. This demonstrates how to train a semantic segmentation model using TorchGeo datasets, apply the model to a Sentinel-2 scene over Rio de Janeiro, Brazil, and save the resulting predictions as a GeoTIFF for further geospatial analysis. The tutorial code itself is distributed as two Python notebooks: https://torchgeo.readthedocs.io/en/stable/tutorials/torchgeo.html and https://torchgeo.readthedocs.io/en/stable/tutorials/earth_surface_water.html.