GRIDR is a library for resampling and filtering raster image data, designed for efficiency in both in-memory processing and I/O operations.
- Grid-based Resampling
- Adapt raster data to a target geometry defined by a grid containing the coordinates of each target pixel in the source image geometry.
- Supports both full-resolution and under-sampled resolution grids.
- Interpolation Methods : Nearest neighbor, linear, cubic
- Mask Support:
- Grid Masks: Raster or sentinel values.
- Source Image Masks: Raster, sentinel values, or vectorized geometry.
- Target Mask Production: Generate masks for the target raster geometry.
- Filtering: Apply spatial filters in the frequency domain (e.g., low-pass filtering).
- Mask Rasterization: Convert vectorized geometry masks into a regular target raster geometry.
- Optimized Workflows: Reduce I/O overhead for large-scale processing.
- Elemental (Core) Functions
- Standalone operations for direct manipulation of in-memory data.
- Ideal for custom processing pipelines and fine-grained control.
- Chained Functions
- Optimized sequences of operations to minimize I/O overhead.
- Efficiently manage memory and CPU usage for large-scale processing.
- Python: Core functionality and interface (not just for bindings).
- Rust: Performance-critical algorithms and heavy computations.
- PyO3: Used for seamless Python-Rust bindings.
- Rust Core Library: Can be used independently in other Rust projects.
- Python Integration: Full-featured methods available in Python, not just bindings.
- Optimized I/O: Designed to handle large datasets efficiently.
To install and use GRIDR, refer to the online documentation