Python based machine learning library to use Earth Observation data to map biophysical traits using Gaussian Process Regression (GPR) models.
- Access to openEO is required. Works best with the Copernicus Data Space Ecosystem. Register here or here
- Hybrid retrieval methods were used: the Gaussian Process Regression retrieval algorithms were trained on biophysical trait specific radiative transfer model (RTM) simulations
- Built-in gap-filling to avoid cloud covers
- Runs "in the cloud" with the openEO API. No local processing is needed.
- Resulting maps in .tiff or netCDF format
You can install pyeogpr using pip. Read the documentation
pip install pyeogpr
Basic example:
import pyeogpr
# Your region of interest
bounding_box = [
-73.98605881463239,
40.763066527718536,
-73.94617017216025,
40.80083669627726
]
# Time window for processing Satellite observations
time_window = ["2022-07-01", "2022-07-07"]
dc = pyeogpr.Datacube(
"SENTINEL2_L2A", # Satellite sensor
"FVC", # Fractional Vegetation Cover
bounding_box,
time_window,
cloudmask=True
)
dc.construct_datacube("dekad") # Initiates openEO datacube
dc.process_map() # Starts GPR processing
To download the GPR processed map go to the openEO portal:
You can use QGIS or Panoply to visualize. IMPORTANT: The data range is off, due to few pixels being outliers. Set the data range manually for the corresponding variable e.g. FVC--> 0 to 1.
You can select from a list of trained variables developed for the following satellites:
Dávid D.Kovács. (2024). pyeogpr (zenodo). Zenodo. https://doi.org/10.5281/zenodo.13373838
Supported by the European Union (European Research Council, FLEXINEL, 101086622) project.