Skip to content

Commit 142fa1c

Browse files
authored
Add fused_overlap and multi_overlap dask graph utilities (#1071)
* Add design spec for fused_overlap and multi_overlap utilities * Add implementation plan for fused_overlap and multi_overlap * Add _normalize_depth and _pad_nan helpers * Add fused_overlap utility * Add multi_overlap utility * Add fused_overlap and multi_overlap to accessor and exports * Add fused_overlap and multi_overlap to docs and README * Add fused_overlap and multi_overlap user guide notebook
1 parent d8b4a0d commit 142fa1c

File tree

11 files changed

+2110
-0
lines changed

11 files changed

+2110
-0
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -287,6 +287,8 @@ Same-CRS tiles skip reprojection entirely and are placed by direct coordinate al
287287
| [Rescale](xrspatial/normalize.py) | Min-max normalization to a target range (default [0, 1]) | Standard | ✅️ | ✅️ | ✅️ | ✅️ |
288288
| [Standardize](xrspatial/normalize.py) | Z-score normalization (subtract mean, divide by std) | Standard | ✅️ | ✅️ | ✅️ | ✅️ |
289289
| [rechunk_no_shuffle](xrspatial/utils.py) | Rechunk dask arrays using whole-chunk multiples (no shuffle) | Custom | 🔄 | ✅️ | 🔄 | ✅️ |
290+
| [fused_overlap](xrspatial/utils.py) | Fuse sequential map_overlap calls into a single pass | Custom | 🔄 | ✅️ | 🔄 | ✅️ |
291+
| [multi_overlap](xrspatial/utils.py) | Run multi-output kernel in a single overlap pass | Custom | 🔄 | ✅️ | 🔄 | ✅️ |
290292

291293
-----------
292294

docs/source/reference/utilities.rst

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,14 @@ Normalization
5454
xrspatial.normalize.rescale
5555
xrspatial.normalize.standardize
5656

57+
Overlap Fusion
58+
==============
59+
.. autosummary::
60+
:toctree: _autosummary
61+
62+
xrspatial.utils.fused_overlap
63+
xrspatial.utils.multi_overlap
64+
5765
Rechunking
5866
==========
5967
.. autosummary::

0 commit comments

Comments
 (0)