RQADeforestation.py
Python bindings for the Julia package RQADeforestation.jl. It provides functions for fast recurrence quantification analysis (RQA), accelerated using Julia. This library is part of the FAIRSenDD project that utilize Sentinel-1 data for FAIR deforestation detection.
Get Started
Install:
pip install rqadeforestation
Run RQA analysis on a single time series:
from rqadeforestation import rqatrend
import numpy as np
x = np.arange(1, 30, step=0.01)
y = np.sin(x) + 0.1 * x
rqatrend(y, 0.5, 10, 1)
# -0.14028027430322332
Use in openEO:
# Import required packages
import openeo
from openeo.processes import process
# Connect to the back-end
connection = openeo.connect("https://openeo.eodc.eu/openeo/1.2.0/")
connection.authenticate_oidc()
bbox = {"west": 11.655947222212369, "east": 11.715643117926051, "south": 50.87929082462556, "north": 50.92129080534822}
datacube1 = connection.load_collection(collection_id = "SENTINEL1_SIG0_20M", spatial_extent = bbox,
temporal_extent = ["2020-01-01T00:00:00Z", "2020-02-01T00:00:00Z"], bands = None, properties = {}
)
def reducer1(data, context):
rqadeforestation1 = process("rqadeforestation", data = data, threshold = 0.4)
return rqadeforestation1
reduce3 = datacube1.reduce_dimension(reducer = reducer1, dimension = "t")
save4 = reduce3.save_result(format = "NETCDF")
# The process can be executed synchronously (see below), as batch job or as web service now
result = connection.execute(save4)
Motivation
Analyzing high resolution sattelite images at global scale requires to optimize the execution efficiency. Python is required for most openEO workflows in which performance critical parts of the code are written in a compiled programming language. Usually, this is done in C, e.g., array operations in numpy. Julia provides an alternative to accellerate code using a more user-friendly language.
Development
Development workflow:
- Write Julia code at https://github.com/EarthyScience/RQADeforestation.jl
- Compile using
StaticCompiler - Put the binary libraries at
rqadeforestation/lib - Add python binding functions to this package
- Install this package in openEO and use it in an User-Defined-Function
Citation
F. Cremer, M. Urbazaev, J. Cortés, J. Truckenbrodt, C. Schmullius and C. Thiel, "Potential of Recurrence Metrics from Sentinel-1 Time Series for Deforestation Mapping," in IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing, vol. 13, pp. 5233-5240, 2020, doi: 10.1109/JSTARS.2020.3019333.
Funding
This project was funded by the European Space Agency in the Science Result Long-Term Availability & Reusability Demonstrator Initiative. In addition, this project was supported by the ESA Network of Resources.
Metadata
Release files for rqadeforestation 0.2.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| rqadeforestation-0.2.3.tar.gz | 11.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| rqadeforestation-0.2.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 20.9 kB
Release files / rqadeforestation-0.2.3.tar.gz
| Download URL | rqadeforestation-0.2.3.tar.gz |
|---|---|
| Size | 11.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ff2d2337269a4bf6a716463c930a2380d434b1142f073cec3cae36d74adb8df8
|
|
BLAKE2b-256 checksum How to use checksums |
34c09834d536284cc9463322c473fb12f42e5ec147b1d3d1cae3a394c70141f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 4, 2025.
Transparency logRelease files / rqadeforestation-0.2.3-py3-none-any.whl
| Download URL | rqadeforestation-0.2.3-py3-none-any.whl |
|---|---|
| Size | 9.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a6eea90c62b5c2878ad6cc1cfe758b37f2a2b43175356a3bbdf1c854ba23779c
|
|
BLAKE2b-256 checksum How to use checksums |
b7a1729059aa3ad341dd9fb04c15cd031c146d7c37fc39d5c37b4d9400aba5f4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 4, 2025.
Transparency log