The primary entry point for the library is the sentle.process() function. It handles the downloading and processing of Sentinel-1 and Sentinel-2 data into a Zarr file.
Key features include:
- Larger-than-memory processing: Data is parallelized across multiple workers, and each worker saves results immediately to the
zarr_store to manage memory efficiently. - Integrated processing: Supports cloud detection, snow masking, harmonization, merging, and temporal composites.
- Parallelization: Use
num_workers to control the number of parallel processes.
Parameters include spatial bounds (bound_left, bound_bottom, bound_right, bound_top), CRS (target_crs), time range (datetime), resolution (target_resolution), and specific Sentinel-1/2 processing flags (e.g., S2_mask_snow, S1_assets, time_composite_freq).
from sentle import sentle
sentle.process(
zarr_store="mycube.zarr",
target_crs="EPSG:32633",
bound_left=176000,
bound_bottom=5660000,
bound_right=186000,
bound_top=5670000,
datetime="2022-06-01/2022-09-01",
target_resolution=10,
S2_mask_snow=True,
S2_cloud_classification=True,
S2_cloud_classification_device="cuda",
S1_assets=["vh_asc", "vh_desc", "vv_asc", "vv_desc"],
S2_apply_snow_mask=True,
S2_apply_cloud_mask=True,
S2_nbar=True,
time_composite_freq="7d",
num_workers=10,
)