Skip to content

Commit f2e7144

Browse files
committed
openeo: added first guides
1 parent 8dbe618 commit f2e7144

File tree

8 files changed

+1754
-1
lines changed

8 files changed

+1754
-1
lines changed

myst.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,12 @@ project:
3232
- file: OSC/osc_pr_pystac.ipynb
3333
- file: OSC/deepcode_example.md
3434

35-
35+
- title: openEO
36+
file: openEO/index.md
37+
children:
38+
- file: openEO/1_workflow.ipynb
39+
- file: openEO/2_experiment.ipynb
40+
3641
# plugins:
3742
# - directives.mjs
3843
# - picsum.mjs

openeo/1_workflow.ipynb

Lines changed: 526 additions & 0 deletions
Large diffs are not rendered by default.

openeo/2_experiment.ipynb

Lines changed: 340 additions & 0 deletions
Large diffs are not rendered by default.

openeo/files/variability_map.py

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
import xarray
2+
from openeo_udf.api.datacube import DataCube
3+
4+
5+
def apply_datacube(cube: DataCube, context) -> DataCube:
6+
import xarray
7+
import numpy as np
8+
9+
# Get the x array containing the time series
10+
array: xarray.DataArray = cube.get_array()
11+
min = 0.85
12+
max = 1.15
13+
step = 0.1
14+
mean = array.median(skipna=True)
15+
bins = np.arange(min, max + step, step) * mean.values.tolist()
16+
bins = np.concatenate([[0], bins, [255]])
17+
buckets = np.digitize(array.values, bins=bins).astype(float)
18+
return DataCube(
19+
xarray.DataArray(
20+
buckets,
21+
coords={
22+
"t": array.t.values,
23+
"bands": array.bands.values,
24+
"y": array.y.values,
25+
"x": array.x.values,
26+
},
27+
dims=["t", "bands", "y", "x"],
28+
)
29+
)
1.7 KB
Binary file not shown.
1.7 KB
Binary file not shown.

openeo/index.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# openEO
2+
3+
[openEO](https://openeo.org/) is an open standard designed to simplify access to and processing of EO data. It provides a unified API that abstracts away differences between cloud platforms, enabling scientists, developers, and analysts to build workflows and experiments in a consistent and portable way. Instead of learning the specifics of each platform or provider, users can work with a common interface to query datasets, chain processing steps, and run analyses at scale.
4+
5+
From a technical perspective, openEO defines a set of RESTful APIs and [client libraries](https://openeo.org/software.html#clients) in popular programming languages such as Python, R, and JavaScript. These libraries allow users to connect to different backends, discover available EO collections and processing capabilities, and construct workflows as [process graphs](https://openeo.org/documentation/1.0/glossary.html#processes). These process graphs describe the sequence of operations in a platform-independent format, making them reusable across environments. Whether the goal is atmospheric correction, time-series analysis, or machine learning integration, openEO provides the building blocks for scalable EO data science.
6+
7+
From a user perspective, openEO lowers the barrier to experimentation and collaboration. Users can start with small exploratory analyses in notebooks, gradually expand workflows into more complex experiments, and finally scale them up on powerful cloud infrastructures, all without changing the underlying logic. This portability fosters reproducibility and ensures that workflows developed once can be reused, adapted, or shared easily across projects.
8+
9+
The notebook examples provided in this section illustrate how to use openEO for common scientific tasks: from creatingc
10+
11+
## openEO Examples
12+
13+
1. [Creating an openEO workflow](1_workflow.ipynb): This notebook demonstrates how to create a basic openEO workflow, executing a simple processing task and publishing it as workflow that can be shared and reused.
14+
2. [Creating an experiment](2_experiment.ipynb): This notebook shows how to set up an experiment using the previously created workflow, defining parameters such as area of interest and time range, and executing the workflow to generate output products.

openeo/publication/openeo_publication.ipynb

Lines changed: 839 additions & 0 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)