A swissknife for SAR processing.
Project description
sarpyx is a specialized Python toolkit for Synthetic Aperture Radar (SAR) processing with tight integration to ESA SNAP. It focuses on reproducible pipelines, fast tiling workflows, and advanced research features like sub-aperture decomposition.
Highlights
- SNAP GPT integration with configurable graphs and operator chaining.
- Sub-aperture decomposition for squint-angle diversity and motion sensitivity.
- Parallel tiling and batch processing for large product volumes.
- Geocoded outputs ready for GIS and downstream ML.
- Extensible architecture compatible with
rasterio,geopandas, andpyproj.
Install
For container workflows, use the Docker Compose CLI plugin (docker compose) with full commands:
docker compose version
make recreate
Using uv (recommended)
uv sync
For development, testing, and optional Copernicus tooling:
uv sync --group dev
uv sync --group dev --extra copernicus
uv run pytest -q
uv build
Using pip (editable)
python -m pip install -e .
Docs
See docs/user_guide/README.md for usage and workflows, and docs/developer_guide/contributing.md for contributor commands.
Container grid configuration
At startup the container checks for grid files in this order:
GRID_PATH(orgrid_path) if it points to an existing in-container*.geojson- First
*.geojsonfound in/workspace/grid
If neither exists, the container exits with an error. Automatic grid generation on startup has been removed.
To use a mounted grid:
mkdir -p ./grid
# put any grid GeoJSON here, e.g. ./grid/my_region.geojson
docker compose up
For direct docker run, pass an explicit in-container path when needed:
docker run --rm \
-v "$PWD/grid:/workspace/grid:ro" \
-e GRID_PATH=/workspace/grid/my_region.geojson \
sirbastiano94/sarpyx:latest \
/usr/local/bin/start-jupyter.sh
You can also pass --grid-path to the worldsar CLI command.
With Love By: Roberto Del Prete
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sarpyx-0.1.10.tar.gz.
File metadata
- Download URL: sarpyx-0.1.10.tar.gz
- Upload date:
- Size: 547.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
690a45e94f966091d6990c73e4c34e6fa0422d2d994c9bfd992b8af5503ca54d
|
|
| MD5 |
54f0e80f685304c5376d3fd12877bdce
|
|
| BLAKE2b-256 |
07277f753e623cef42b27bf2df53df0e207b54d1bdef6dd9f6be26e9ffe1b3a9
|
File details
Details for the file sarpyx-0.1.10-py3-none-any.whl.
File metadata
- Download URL: sarpyx-0.1.10-py3-none-any.whl
- Upload date:
- Size: 302.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
97b845e64a6bb35d843ed6a02b1292bc35af19cc2943f1fc9fbaec517e4d5254
|
|
| MD5 |
d40fc51edd89ae8a77357fca9aa6e0bf
|
|
| BLAKE2b-256 |
7880f7aa0411c482e80d68c2ea68b8cc00a9a0fb3384e82552584e18c5c72cd3
|