Skip to main content

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:

  1. Write Julia code at https://github.com/EarthyScience/RQADeforestation.jl
  2. Compile using StaticCompiler
  3. Put the binary libraries at rqadeforestation/lib
  4. Add python binding functions to this package
  5. 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)

Source distribution for rqadeforestation 0.2.3
File Size Uploaded
rqadeforestation-0.2.3.tar.gz 11.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for rqadeforestation 0.2.3
File Interpreter ABI Platform
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 log

Release 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

Release history Release notifications | RSS feed

This release

0.2.3 This release

2 release files

0.1.0

2 release files

0.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page