Open-EO / openeo-web-editor

An interactive and easy to use web-based editor for the OpenEO API.
https://editor.openeo.org
Apache License 2.0
12 stars 17 forks source link

Make "Awesome Spectral Indices" easily available #225

Closed m-mohr closed 1 year ago

m-mohr commented 2 years ago

There's a list of spectral indices available at https://awesome-ee-spectral-indices.readthedocs.io/en/latest/

We could think about how we can make them easily accessible through the Web Editor.

The Python client also has an implementation since v0.9.1

christophfriedrich commented 2 years ago

Very nice idea! It would be extremely handy to have a category in the left sidebar (below Collections, Processes, Export File Formats) called "Spectral Indices" where you could just drag&drop any of these and it converts into the corresponding process graph (parts) automatically.

I'm thinking about how the user would specify which collection the graph should use, i.e. with which concrete data bands the variables need to be replaced. The dream would be:

  1. The user drag&drops a collection from the Collections category, e.g. COPERNICUS/S2 on GEE.
  2. The user drag&drops an index from the Spectral Indices category, e.g. NDVI.
  3. The editor automatically inserts the correct formula, replacing the placeholders with the correct bands according to step 1 (automatically detected), and connects the collection block with the rest.
  4. The user drag&drops a format from the Export File Formats category.
  5. The editor automatically attaches that to the output of the index part.
  6. The user just has to start the job and it works.

I bet this would give us the title of "easiest worldwide index calculation ever" :grin:

Band names across different backends are probably an issue, though :confused: And certainly another two three things...

m-mohr commented 2 years ago

With common band names (as defined in STAC), this could work. But they are not commonly provided. It would probably be even simpler than your workflow if you provide a "wizard" for it. Let's see...

christophfriedrich commented 2 years ago

But they are not commonly provided

By the backends? Is this something each provider needs to implement? Can we expect this to become better within a reasonable time from now?

Yeah, I thought about a wizard too, but at first preferred to solve this via drag&drop since all other things work via drag&drop too (we don't have wizards yet, do we?)

m-mohr commented 1 year ago

Implemented as part of the "Wizard".