Skip to content

Commit 0a39cc2

Browse files
committed
Merge branch 'main' into pv_pi
2 parents a253aa8 + 6848626 commit 0a39cc2

File tree

13 files changed

+67
-29
lines changed

13 files changed

+67
-29
lines changed

algorithm_catalog/eurac/eurac_pv_farm_detection/records/eurac_pv_farm_detection.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22
"id": "eurac_pv_farm_detection",
33
"type": "Feature",
44
"conformsTo": [
5-
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core"
5+
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core",
6+
"https://apex.esa.int/core/openeo-udp"
67
],
78
"geometry": null,
89
"properties": {
910
"created": "2024-10-16T00:00:00Z",
1011
"updated": "2024-10-16T00:00:00Z",
11-
"type": "apex_algorithm",
12+
"type": "service",
1213
"title": "Photovoltaic farms mapping",
1314
"description": "# Description\n\nPhotovoltaic farms (PV farms) mapping is essential for establishing valid policies regarding natural resources management and clean energy. As evidenced by the recent COP28 summit, where almost 120 global leaders pledged to triple the world\u2019s renewable energy capacity before 2030, it is crucial to make these mapping efforts scalable and reproducible. Recently, there were efforts towards the global mapping of PV farms [1], but these were limited to fixed time periods of the analyzed satellite imagery and not openly reproducible. \n\nTo resolve this limitation we implemented the detection workflow for mapping solar farms using Sentinel-2 imagery in an openEO process [1].\n\nOpen-source data is used to construct the training dataset, leveraging OpenStreetMap (OSM) to gather PV farm polygons across different countries. Different filtering techniques are involved in the creation of the training set, in particular land cover and terrain. To ensure model robustness, we leveraged the temporal resolution of Sentinel-2 L2A data and utilized openEO to create a reusable workflow that simplifies the data access in the cloud, allowing the collection of training samples over Europe efficiently.\n\nThis workflow includes preprocessing steps such as cloud masking, gap filling, outliers filtering as well as feature extraction. A lot of effort is put in the best training samples generation, ensuring an optimal starting point for the subsequent steps. After compiling the training dataset, we conducted a statistical discrimination analysis of different pixel-level models to determine the most effective one. Our goal is to compare time-series machine learning (ML) models like InceptionTime, which uses 3D data as input, with tree-based models like Random Forest (RF), which employs 2D data along with feature engineering. \n\nAn openEO process graph was constructed for the execution of the inference phase, encapsulating all necessary processes from the preprocessing to the prediction stage. The UDP process for the PV farms mapping is integrated with the ESA Green Transition Information Factory (GTIF, https://gtif.esa.int/), providing the ability for streamlined and FAIR compliant updates of related energy infrastructure mapping efforts.\n\n\nHow to cite: Alasawedah, M., Claus, M., Jacob, A., Griffiths, P., Dries, J., and Lippens, S.: Photovoltaic Farms Mapping using openEO Platform, EGU General Assembly 2024, Vienna, Austria, 14\u201319 Apr 2024, EGU24-16841, https://doi.org/10.5194/egusphere-egu24-16841, 2024.\n\nFor more information please visit: https://github.com/clausmichele/openEO_photovoltaic/tree/main\n\n\n\n# Performance characteristics\n\n\n## 3-month composite over 400km**2 area\n\nThe processing platform reported these usage statistics for the example:\n\n```\nCredits: 4 \nCPU usage: 633,173 cpu-seconds\nWall time: 187 seconds\nInput Pixel 20,438 mega-pixel\nMax Executor Memory: 1,917 gb\nMemory usage: 3.474.032,311 mb-seconds\nNetwork Received: 12.377.132.070 b\n```\n\nThe relative cost is 0.01 CDSE platform credits per km\u00b2 for a 3 month input window.\n\n# Examples\n\nBelow we overlay a Sentinel2-RGB image with the ML classification, thereby highlighting the detected areas.\n![pv_ml_output](pv_ml_output.png)\n\n# Literature references\n\n[1] M., Claus, M., Jacob, A., Griffiths, P., Dries, J., and Lippens, S.: Photovoltaic Farms Mapping using openEO Platform, EGU General Assembly 2024, Vienna, Austria, 14\u201319 Apr 2024, EGU24-16841, https://doi.org/10.5194/egusphere-egu24-16841, 2024.\n\n# Known limitations\n\nThe algoritm was validated up to an area equal to 20x20km. For larger spatial and/or temporal extents, dedicated openEO job settings might be required to ensure that the process runs in an optimal configuration. The integrated ML network, is a prove-of-concept which may not be applicable for all areas of interest. \n\n# Known artifacts\n\nA dilatation and erosion mask is applied to remove small patches in the classified output, which are unlikely PV solar farms. For computation efficiency the kernel size was kept to 3, thereby limiting its effectiveness. As a result, small misclassified areas might still appear as seen in: \n\n![pv_ml_output](pv_ml_output.png)\n",
1415
"cost_estimate": 0.001,

algorithm_catalog/terradue/gep_bas/records/gep_bas.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22
"id": "gep_bas",
33
"type": "Feature",
44
"conformsTo": [
5-
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core"
5+
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core",
6+
"https://apex.esa.int/core/ogc-api-processes"
67
],
78
"geometry": null,
89
"properties": {
910
"created": "2024-12-18T00:00:00Z",
1011
"updated": "2024-12-18T00:00:00Z",
11-
"type": "apex_algorithm",
12+
"type": "service",
1213
"title": "Burned Area Severity (BAS) analysis",
1314
"description": "The Burned Area Severity (BAS) service takes as input a pair of optical datasets in their native format, and estimates the severity of burnt areas by using swir22 and nir radiation. The burn severity describes how the fire intensity affects the functioning of the ecosystem in the area that has been burnt. The observed effects often vary within the area and between different ecosystems (Keeley, 2009). The burn severity can also be described as the degree to which an area has been altered or disrupted by the fire.",
1415
"cost_estimate": 1.5,

algorithm_catalog/terradue/sar_coin/records/sar_coin.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22
"id": "sar_coin",
33
"type": "Feature",
44
"conformsTo": [
5-
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core"
5+
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core",
6+
"https://apex.esa.int/core/ogc-api-processes"
67
],
78
"geometry": null,
89
"properties": {
910
"created": "2024-10-09T00:00:00Z",
1011
"updated": "2024-10-09T00:00:00Z",
11-
"type": "apex_algorithm",
12+
"type": "service",
1213
"title": "SAR-COIN - Coherence and Intensity Composite",
1314
"description": "The SAR-COIN service computes the coherence and backscatter from a pair of Sentinel-1 SLC datasets. It produces geocoded composites and red-cyan visual products to highlight changes in coherence and backscatter.",
1415
"cost_estimate": 2.5,

algorithm_catalog/terradue/snap_insar_sentinel1_iw_slc/records/snap_insar_sentinel1_iw_slc.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22
"id": "gep_DinSAR",
33
"type": "Feature",
44
"conformsTo": [
5-
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core"
5+
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core",
6+
"https://apex.esa.int/core/ogc-api-processes"
67
],
78
"geometry": null,
89
"properties": {
910
"created": "2024-12-18T00:00:00Z",
1011
"updated": "2024-12-18T00:00:00Z",
11-
"type": "apex_algorithm",
12+
"type": "service",
1213
"title": "DinSar Sentinel-1 IW SLC Interferogram and Displacements",
1314
"description": "The InSAR service processes Sentinel-1 TOPSAR IW SLC data to produce interferometric products for monitoring and analysis of ground displacement. Outputs include interferometric coherence maps, unwrapped phase images, and displacement maps. These products support geohazard assessments such as earthquake deformation, landslide monitoring, and infrastructure stability analysis. The service is designed to deliver high-precision measurements and geocoded outputs for seamless integration into geospatial workflows.",
1415
"cost_estimate": 6.0,

algorithm_catalog/vito/bap_composite/records/bap_composite.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22
"id": "bap_composite",
33
"type": "Feature",
44
"conformsTo": [
5-
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core"
5+
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core",
6+
"https://apex.esa.int/core/openeo-udp"
67
],
78
"geometry": null,
89
"properties": {
910
"created": "2024-10-09T00:00:00Z",
1011
"updated": "2024-10-09T00:00:00Z",
11-
"type": "apex_algorithm",
12+
"type": "service",
1213
"title": "Best-Available-Pixel Composite based on Sentinel-2 data",
1314
"description": "A compositing algorithm for Sentinel-2 L2A data, ranking observations by their highest BAP score.",
1415
"cost_estimate": 0.2,

algorithm_catalog/vito/biopar/records/biopar.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22
"id": "biopar",
33
"type": "Feature",
44
"conformsTo": [
5-
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core"
5+
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core",
6+
"https://apex.esa.int/core/openeo-udp"
67
],
78
"geometry": null,
89
"properties": {
910
"created": "2024-10-03T00:00:00Z",
1011
"updated": "2024-10-03T00:00:00Z",
11-
"type": "apex_algorithm",
12+
"type": "service",
1213
"title": "Biophysical parameters calculation",
1314
"description": "Provides vegetation-related parameters at 10m resolution from 2015 onwards like leaf area index (LAI), fraction of absorbed photosynthetically active radiation (FAPAR), and cover fraction (FCOVER).",
1415
"cost_estimate": 0.1,

algorithm_catalog/vito/fusets_mogpr/records/fusets_mogpr.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22
"id": "fusets_mogpr",
33
"type": "Feature",
44
"conformsTo": [
5-
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core"
5+
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core",
6+
"https://apex.esa.int/core/openeo-udp"
67
],
78
"geometry": null,
89
"properties": {
910
"created": "2025-01-09T00:00:00Z",
1011
"updated": "2025-01-29T00:00:00Z",
11-
"type": "apex_algorithm",
12+
"type": "service",
1213
"title": "Multi output gaussian process regression",
1314
"description": "Integrates timeseries in data cube using multi-output gaussian process regression. The service is designed to enable multi-output regression analysis using Gaussian Process Regression (GPR) on geospatial data. It provides a powerful tool for understanding and predicting spatiotemporal phenomena by filling gaps based on other indicators that are correlated with each other.",
1415
"cost_estimate": 12,

algorithm_catalog/vito/max_ndvi_composite/records/max_ndvi_composite.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22
"id": "max_ndvi_composite",
33
"type": "Feature",
44
"conformsTo": [
5-
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core"
5+
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core",
6+
"https://apex.esa.int/core/openeo-udp"
67
],
78
"geometry": null,
89
"properties": {
910
"created": "2024-09-06T00:00:00Z",
1011
"updated": "2024-09-06T00:00:00Z",
11-
"type": "apex_algorithm",
12+
"type": "service",
1213
"title": "Max NDVI Composite based on Sentinel-2 data",
1314
"description": "A compositing algorithm for Sentinel-2 L2A data, ranking observations by their maximum NDVI. The cost depends on both the area and number of input observations.",
1415
"cost_estimate": 0.1,

algorithm_catalog/vito/sentinel1_stats/records/sentinel1_stats.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22
"id": "sentinel1_stats",
33
"type": "Feature",
44
"conformsTo": [
5-
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core"
5+
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core",
6+
"https://apex.esa.int/core/openeo-udp"
67
],
78
"geometry": null,
89
"properties": {
910
"created": "2024-10-03T00:00:00Z",
1011
"updated": "2024-10-03T00:00:00Z",
11-
"type": "apex_algorithm",
12+
"type": "service",
1213
"title": "Sentinel-1 statistics",
1314
"description": "A statistics algorithm for Sentinel-1 data, calculating the mean, median, minimum, and maximum values of the data.",
1415
"cost_estimate": 0.1,

algorithm_catalog/vito/variabilitymap/records/variabilitymap.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
{
22
"type": "Feature",
33
"conformsTo": [
4-
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core"
4+
"http://www.opengis.net/spec/ogcapi-records-1/1.0/req/record-core",
5+
"https://apex.esa.int/core/openeo-udp"
56
],
67
"geometry": null,
78
"id": "variabilitymap",
89
"properties": {
910
"created": "2025-01-17T16:32:27Z",
1011
"updated": "2025-01-17T16:32:27Z",
11-
"type": "apex_algorithm",
12+
"type": "service",
1213
"title": "Variability maps",
1314
"description": "Daily crop performance calculation",
1415
"keywords": [

0 commit comments

Comments
 (0)