Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update narrative of the course #175

Open
wants to merge 111 commits into
base: main
Choose a base branch
from

Conversation

fnattino
Copy link
Contributor

@fnattino fnattino commented Oct 2, 2024

As promised during discussions offline, here is the PR that updates the material to include the changes that we have introduced in our fork of the lesson (for reference, that version of the material is deployed here).

More in the specific, this PR introduces the following changes:

  • We have updated the narrative of the course, focusing on the detection of wildfires and changing the area of interest from the Netherlands to Rhodes, Greece. This is to make the lesson more engaging. All episodes now are working towards the ultimate goal of detecting wildfires and estimating damages.
  • As vector data, we are now using infrastructure data from Open Street Map and administrative boundaries from GADM. The Dutch governmental data that we had previously introduced was too Netherlands-specific (and headers were in Dutch!).
  • We found that starting with the STAC data-access episode was not always ideal. Some of the participants we had in our workshops were interested in using Python to work with raster datasets, but not necessarily with satellite images. Also, we saw that working with APIs was too advanced for some of them. So we decided to make the chapter optional and make it possible to teach it as an overview/demo episode at the end of the workshop. We have thus included the raster datasets to the lesson figshare repository and updated the material accordingly, so that the default now is to work with raster data downloaded locally (and not streamed from AWS).
  • We have added the first version of a final episode on using ODC-STAC to create and work with data cubes (also optional and to be taught with “advanced” participants - thus in principle also addressing Stackstac episode #82 and consider teaching odc-stac for wide problems #105).

@rbavery very sorry for the huge PR, I have tried to split it in smaller chunks by cherry-picking updates on individual episodes. However, various commits seems to have covered multiple files, so it is really not possible to create episode-specific branches at this stage. Of course feel free to submit reviews in parts, if it helps, and please let me/us know if we can do anything else to simplify the review process..

Also cc'ing @Morrizzzzz and @rogerkuou

fnattino and others added 18 commits June 25, 2024 11:13
Co-authored-by: Maurice de Kleijn <[email protected]>
Co-authored-by: Maurice de Kleijn <[email protected]>
Co-authored-by: Maurice de Kleijn <[email protected]>
Co-authored-by: Maurice de Kleijn <[email protected]>
Co-authored-by: Maurice de Kleijn <[email protected]>
Co-authored-by: Maurice de Kleijn <[email protected]>
Co-authored-by: Maurice de Kleijn <[email protected]>
Co-authored-by: Maurice de Kleijn <[email protected]>
Co-authored-by: Maurice de Kleijn <[email protected]>
Co-authored-by: Maurice de Kleijn <[email protected]>
…2024

Updating the material to the new narrative
…pring_2024

minor updates in epi 7, 8 and 10. Also exercise added in epi 8
…on_epi5_intro

added intro text about placement epi 5
@fnattino fnattino requested a review from rbavery October 2, 2024 20:57
Copy link

github-actions bot commented Oct 2, 2024

⚠️ WARNING ⚠️

This pull request contains a mix of workflow files and regular files. This could be malicious. No preview will be created.

regular files:

  • .gitignore
  • episodes/01-intro-raster-data.md
  • episodes/02-intro-vector-data.md
  • episodes/03-crs.md
  • episodes/04-geo-landscape.md
  • episodes/05-access-data.md
  • episodes/06-raster-intro.md
  • episodes/07-vector-data-in-python.md
  • episodes/08-crop-raster-data.md
  • episodes/09-raster-calculations.md
  • episodes/10-zonal-statistics.md
  • episodes/11-parallel-raster-computations.md
  • episodes/12-data-cube.md
  • episodes/fig/E05/STAC-s2-preview-after.jpg
  • episodes/fig/E05/STAC-s2-preview-before.jpg
  • episodes/fig/E05/STAC-s2-preview.jpg
  • episodes/fig/E06/overview-plot-B09-robust-with-nan.png
  • episodes/fig/E06/overview-plot-B09-robust.png
  • episodes/fig/E06/overview-plot-B09.png
  • episodes/fig/E06/overview-plot-true-color-aspect-equal.png
  • episodes/fig/E06/overview-plot-true-color.png
  • episodes/fig/E06/rhodes_multiband_80.png
  • episodes/fig/E06/rhodes_multiband_80_equal_aspect.png
  • episodes/fig/E06/rhodes_red_80_B04.png
  • episodes/fig/E06/rhodes_red_80_B04_robust.png
  • episodes/fig/E06/rhodes_red_80_B04_robust_nan.png
  • episodes/fig/E06/rhodes_red_80_B04_vmin100_vmax2000.png
  • episodes/fig/E06/rhodes_red_B04.png
  • episodes/fig/E07/fields-buffer.png

workflow files:

  • .github/workflows/sandpaper-main.yaml

github-actions bot pushed a commit that referenced this pull request Oct 2, 2024
@rbavery
Copy link
Collaborator

rbavery commented Oct 3, 2024

@fnattino All good! I'll go episode by episode and submit reviews for each here. Thanks for the amazing work on this, excited to step through the new episodes.

episodes/05-access-data.md Outdated Show resolved Hide resolved
We can visualize the calculated NDVI for the AoI at two given dates (before and after the wildfires) by selecting the date:

```python
ndvi_before = ndvi.sel(time="2023-07-13")
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this cell that triggers the computation presents a warning

/Users/ryanavery/test-dask-on-ray/.venv/lib/python3.11/site-packages/rasterio/warp.py:387: NotGeoreferencedWarning: Dataset has no geotransform, gcps, or rpcs. The identity matrix will be returned.
  dest = _reproject(

we should diagnose why georeferencing is not preserved and try to preserve it in this example so that geospatial metadata can be roundtripped when saving and loading the ndvi raster

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

though I'm testing this in an env called "dask-on-ray" this is just with vanilla dask and xarray. here are my versions

    "odc-stac>=0.3.10",
    "pystac>=1.11.0",
    "pystac-client>=0.8.3",
    "ray>=2.37.0",
    "rioxarray>=0.17.0",
    "torch>=2.4.1",
    "xarray>=2024.9.0",
    "leafmap>=0.38.3",
    "geopandas>=1.0.1",

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants