Open-EO / openeo-processes

Interoperable processes for openEO's big Earth observation cloud processing.
https://processes.openeo.org
Apache License 2.0
48 stars 16 forks source link

Additional use cases #231

Closed m-mohr closed 1 year ago

m-mohr commented 3 years ago

Several capabilities could be useful in other projects:

We could also include image processing algorithms that allow transforming EO data collections into temporally equidistant and consistent time series datasets. Note: These techniques shall include as a minimum compositing (e.g. best-pixel, weighted averaging, max value), statistical aggregation (e.g. percentile, mean, standard deviation) and might additionally include capabilities for deriving coefficients or statistics of time series fits (e.g. integral, amplitude, inflection points, etc.).

req. 44 + 45

jdries commented 3 years ago

convolutions == apply_kernel? spectral_sharpening == resolution_merge (have a pull request for that!) morhpological operations => dilation, erosion => apply_kernel

jdries commented 3 years ago

supervised classification => random forest => use case 9@SRR3 regression => use case 8 @SRR3

jonathom commented 3 years ago

Spectral Unmixing

I had a look and came up with two use cases that could be helpful towards developing processes. First, a quick overview of what I understand is contained in an unmixing process:

  1. Preprocessing from spectral radiance to corrected reflectance values (important, but not part of the unmixing itself)
  2. selecting or providing endmembers (spectral values of the materials or land covers in question)
  3. unmixing, linear or non-linear, both with multiple possible approaches (finding the combination of endmembers that lead to the observed spectrum of pixels)
  4. outputs are maps per endmember, describing the fraction of the pixels that is covered by the endmember

UC1: I want to know the fractions of materials/land cover that each pixel in my datacube contains. For this, I have a labeled dataset (geojson etc.) with endmember polygons that I confirmed as containing pure areas (material-wise). For preparation I need to aggregate mean values per endmember class from the satellite collection that I will be using. I want to use a standard linear unmixing method, in which the combined reflectances should sum to one. The result should be a datacube with as many bands as endmembers that I defined, with an optional time dimension remaining untouched.

UC2: I want to compare different unmixing processes on a certain dataset, e.g. different linear and non-linear approaches. For this, I already extracted the spectral values of my endmembers per band of the collection in question and would like to input them as an array. I would like to select different unmixing methods and receive the output as stated in UC1, together with a band containing the residual error that the unmixing process couldn't attribute to an endmember, per pixel.

GEE doesn't bother with different unmixing methods and only offers one, but it seems that different methods can have pros and cons. Unfortunately I do not know which methods are must-haves, so methods are excluded from these use cases.

m-mohr commented 2 years ago

Requested from one of the research grant holders:

m-mohr commented 1 year ago

Closing this endless issue, we better create individual issues on further demand.