Update cuCIM for consistency with scikit-image 0.26 (#1038)#1047
Merged
rapids-bot[bot] merged 1 commit intorapidsai:release/26.04from Mar 17, 2026
Merged
Conversation
This PR ports recent API and implementation changes from scikit-image 0.26. ### Key Changes - There is one new keyword argument, `boundary_mode` added to `binary_blobs`. - There was some minor refactoring in `regionprops` and addition of one new property, "intensity_median". - There are some new deprecations / removals - Previously deprecated `shift_x` and `shift_y` arguments to `erosion` and `dilation` are now removed - For `remove_small_objects`, the parameter `min_size` is deprecated in favor of `max_size` - For `remove_small_holes`, the parameter `area_threshold` is deprecated in favor of `max_size` - many misc docstring fixes - large refactor of geometric transforms code to match the scikit-image 0.26 behavior/API - most changes to `_shared/utils.py` are additional helpers related to this refactor (also ported from scikit-image 0.26) - `cucim.skimage.segmentation` also now has a separate `__init__.pyi` for lazy loading - some existing test cases now load the local copies of test data from the repository instead of relying on `fetch` (fetch no longer works for these files in scikit-image 0.26). ### Possibly follow-up tasks - provide batch implementation for `intensity_median` in `_regionprops_gpu.py` - make decision on deprecating `cucim.skimage.morphology.binary_*` functions - These are deprecated now in scikit-image 0.26. - For cuCIM, the binary variants are around 2x faster so I kept them for now. A follow-up task would be to update the grayscale variants to automatically dispatch to the faster binary kernel when possible. Then we could remove the separate `binary_*` functions without losing performance. ### Directory layout change in scikit-image 0.26 - scikit-image has switched to separate `src/skimage` and `tests/skimage` folder layout. - I have currently kept the existing folder layout in cuCIM (`tests` subfolder within each `cucim.skimage` module) Authors: - Gregory Lee (https://github.com/grlee77) Approvers: - Gil Forsyth (https://github.com/gforsyth) - Gigon Bae (https://github.com/gigony) URL: rapidsai#1038
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
grlee77
approved these changes
Mar 17, 2026
jameslamb
approved these changes
Mar 17, 2026
Contributor
Author
|
/merge |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes merged into
mainin 20fec39 that are needed for the 26.04 release if we want Python 3.14 support.Cherry-picked to avoid the 26.06 tag on the
mainbranch.