From 28ee2ac26c203bf7900f8c4c47ec4c7942bd9c28 Mon Sep 17 00:00:00 2001 From: Matthias Mohr Date: Wed, 18 Jan 2023 18:09:03 +0100 Subject: [PATCH] Further clarifications --- CHANGELOG.md | 17 ++++++------- aggregate_spatial.json | 2 +- filter_spatial.json | 2 +- proposals/fit_class_random_forest.json | 35 +++++++++++++++++++------- proposals/fit_regr_random_forest.json | 35 +++++++++++++++++++------- 5 files changed, 61 insertions(+), 30 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 177a2d92..6f394d38 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,16 +4,6 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## Changes for vector cubes - -- Update the processes based on `raster-cube` or `vector-cube` to work with `datacube` instead -- Rename `create_raster_cube` to `create_data_cube` -- `add_dimension`: Added new dimension type `geometries` -- New definition for `aggregate_spatial`: - - Allows more than 3 input dimensions - - Allow to not export statistics by changing the parameter `target_dimension` - - Clarify how the resulting vector cube looks like - ## Unreleased / Draft ### Added @@ -30,6 +20,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - `vector_buffer` - `vector_to_random_points` - `vector_to_regular_points` +- `add_dimension`: Added new dimension type `geometries`. [#68](https://github.com/Open-EO/openeo-processes/issues/68) ### Changed @@ -45,6 +36,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Added a `NoDataAvailable` exception - `inspect`: The parameter `message` has been moved to be the second argument. [#369](https://github.com/Open-EO/openeo-processes/issues/369) - `save_result`: Added a more concrete `DataCubeEmpty` exception. +- New definition for `aggregate_spatial`: + - Allows more than 3 input dimensions [#126](https://github.com/Open-EO/openeo-processes/issues/126) + - Allow to not export statistics by changing the parameter `target_dimension` [#366](https://github.com/Open-EO/openeo-processes/issues/366) + - Clarify how the resulting vector data cube looks like [#356](https://github.com/Open-EO/openeo-processes/issues/356) +- Renamed `create_raster_cube` to `create_data_cube`. [#68](https://github.com/Open-EO/openeo-processes/issues/68) +- Updated the processes based on the subtypes `raster-cube` or `vector-cube` to work with the subtype `datacube` instead. [#68](https://github.com/Open-EO/openeo-processes/issues/68) ### Removed diff --git a/aggregate_spatial.json b/aggregate_spatial.json index 58c5a70b..380e34c0 100644 --- a/aggregate_spatial.json +++ b/aggregate_spatial.json @@ -26,7 +26,7 @@ }, { "name": "geometries", - "description": "Geometries for which the aggregation will be computed. Feature properties are preserved for vector data cubes and all GeoJSON Features.\n\nOne value will be computed per label in the dimension of type `geometries`, GeoJSON `Feature`, `Geometry` or `GeometryCollection`. For a `FeatureCollection` multiple values will be computed, one value per contained `Feature`. For example, a single value will be computed for a `MultiPolygon`, but two values will be computed for a `FeatureCollection` containing two polygons.\n\n- For **polygons**, the process considers all pixels for which the point at the pixel center intersects with the corresponding polygon (as defined in the Simple Features standard by the OGC).\n- For **points**, the process considers the closest pixel center.\n- For **lines** (line strings), the process considers all the pixels whose centers are closest to at least one point on the line.\n\nThus, pixels may be part of multiple geometries and be part of multiple aggregations. No operation is applied to geometries that are outside of the bounds of the data.", + "description": "Geometries for which the aggregation will be computed. Feature properties are preserved for vector data cubes and all GeoJSON Features.\n\nOne value will be computed per label in the dimension of type `geometries`, GeoJSON `Feature` or `Geometry`. For a `FeatureCollection` multiple values will be computed, one value per contained `Feature`. For example, a single value will be computed for a `MultiPolygon`, but two values will be computed for a `FeatureCollection` containing two polygons.\n\n- For **polygons**, the process considers all pixels for which the point at the pixel center intersects with the corresponding polygon (as defined in the Simple Features standard by the OGC).\n- For **points**, the process considers the closest pixel center.\n- For **lines** (line strings), the process considers all the pixels whose centers are closest to at least one point on the line.\n\nThus, pixels may be part of multiple geometries and be part of multiple aggregations. No operation is applied to geometries that are outside of the bounds of the data.", "schema": [ { "type": "object", diff --git a/filter_spatial.json b/filter_spatial.json index 1e0a1e49..b6d7a7de 100644 --- a/filter_spatial.json +++ b/filter_spatial.json @@ -26,7 +26,7 @@ }, { "name": "geometries", - "description": "One or more geometries used for filtering, given as GeoJSON or vector data cube.\n\nLimits the data cube to the bounding box of the given geometries. No implicit masking gets applied. To mask the pixels of the data cube use ``mask_polygon()``.", + "description": "One or more geometries used for filtering, given as GeoJSON or vector data cube. If multiple geometries are provided, the union of them is used.\n\nLimits the data cube to the bounding box of the given geometries. No implicit masking gets applied. To mask the pixels of the data cube use ``mask_polygon()``.", "schema": [ { "type": "object", diff --git a/proposals/fit_class_random_forest.json b/proposals/fit_class_random_forest.json index f5995330..1b6f299f 100644 --- a/proposals/fit_class_random_forest.json +++ b/proposals/fit_class_random_forest.json @@ -10,15 +10,32 @@ { "name": "predictors", "description": "The predictors for the classification model as a vector data cube. Aggregated to the features (vectors) of the target input variable.", - "schema": { - "type": "object", - "subtype": "datacube", - "dimensions": [ - { - "type": "geometries" - } - ] - } + "schema": [ + { + "type": "object", + "subtype": "datacube", + "dimensions": [ + { + "type": "geometries" + }, + { + "type": "bands" + } + ] + }, + { + "type": "object", + "subtype": "datacube", + "dimensions": [ + { + "type": "geometries" + }, + { + "type": "other" + } + ] + } + ] }, { "name": "target", diff --git a/proposals/fit_regr_random_forest.json b/proposals/fit_regr_random_forest.json index a185e6d9..121af96d 100644 --- a/proposals/fit_regr_random_forest.json +++ b/proposals/fit_regr_random_forest.json @@ -10,15 +10,32 @@ { "name": "predictors", "description": "The predictors for the regression model as a vector data cube. Aggregated to the features (vectors) of the target input variable.", - "schema": { - "type": "object", - "subtype": "datacube", - "dimensions": [ - { - "type": "geometries" - } - ] - } + "schema": [ + { + "type": "object", + "subtype": "datacube", + "dimensions": [ + { + "type": "geometries" + }, + { + "type": "bands" + } + ] + }, + { + "type": "object", + "subtype": "datacube", + "dimensions": [ + { + "type": "geometries" + }, + { + "type": "other" + } + ] + } + ] }, { "name": "target",