Companion Codebase
The ml-eo-maps-codebase repository accompanies this book with runnable notebooks. Each one demonstrates a concrete claim or pitfall from a chapter, which links to it in a Try it box. Method notebooks run offline on synthetic data, so the true answer is known; data-access notebooks query real catalogs and need no account.
git clone https://github.com/ghjuliasialelli/ml-eo-maps-codebase.git
cd ml-eo-maps-codebase
uv sync && uv run jupyter lab| Part | Notebook | What it shows |
|---|---|---|
| EO data landscape | compare_eo_providers | The same Sentinel-2 granule across cloud catalogs: offset metadata, platform-specific processing, effect on NDVI (Accessing EO data) |
| s1_global_coverage | Global Sentinel-1 acquisition density (Appendix: Sentinel-1 data gaps) | |
| Data selection | s2_orbits | Orbits needed to cover each Sentinel-2 tile (Data selection) |
| s2_artifacts | Least-cloudy full-coverage acquisition per month (Appendix: Sentinel-2 tiling artifacts) | |
| pixel_deduplication | Duplicated observations in tile overlaps and a one-owner rule (Data selection) | |
| cloud_masks | SCL vs. cloud probability, scene metadata, effect on composites (Data preprocessing) | |
| s1_burst | Choosing a Sentinel-1 viewing geometry (Appendix: SAR viewing geometry) | |
| ML dataset & training | spatial_block_cv | Random vs. block vs. buffered cross-validation (Dataset splits) |
| grid_comparison | Grid distortion, sampling bias, Sentinel-2 tile overlap and split leakage (Spatial gridding) | |
| Uncertainty | calibration_diagnostics | Calibration diagnostics per stratum and post-hoc fixes (Assessing calibration) |
| uq_methods_spatial | Ensembles, quantile regression and (localized) conformal on spatial data (UQ methods) | |
| area_of_applicability | Qualifying a model before inference (Assessing calibration) | |
| aggregate_uncertainty | Uncertainty of regional means with correlated errors (Spatial structure of uncertainty) | |
| Map production | patch_inference | Tiling strategies, seams and variance merging (Map generation) |
| stac_and_compression | Compression, native-CRS COGs and a STAC catalog (Sharing) | |
| Validation | design_based_accuracy | Stratified sampling, accuracy and area estimation (Design-based accuracy assessment) |
The repository also holds written companions to the book (data sharing, helpful packages, training and inference efficiency) and a small Python package, mleo, with the reusable code behind the notebooks. Contributions are welcome via issues and pull requests.