-
Notifications
You must be signed in to change notification settings - Fork 60
release_notes_v22.06.00
The 22.06.00 release adds a new function cucim.skimage.segmentation.clear_border
that can be used to remove any labels touching the image/volume border. There are also new functions for stain extraction and normalization of digital pathology slides stained with hematoxyling and eosin: cucim.core.operations.color.stain_extraction_pca
and cucim.core.operations.color.normalize_colors_pca
.
Aside from this, there are also a number of performance improvements. Specifically, edge detection with cucim.skimage.feature.canny
should be 3-4x faster than previously. Binary and grayscale morphological operations can now be performed much faster for large footprint sizes. To take advantage of this, set the decomposition
kwarg of the footprint-generation functions to 'series'
, 'separable'
or 'crosses'
, as available. This provides a sequence of small footprints (structuring elements) that can be passed to the footprint
argument of any morphology function, enabling identical output in a much shorter run time. The specific functions in cucim.skimage.morphology
that support this new feature are square
, rectangle
, diamond
, disk
, ellipse
, octagon
, cube
, ball
and octahedron
.
One backward incompatible change was made to the dtype used when casting 8 and 16-bit signed and unsigned integer data types to floating point. Specifically when functions convert these types to floating point, 32-bit precision will now be used. Previously these were promoted to 64-bit floating point as in upstream scikit-image. This change was made to improve performance and reduce memory consumption.
Although not new to this release, we would like to encourage users to set the CUPY_ACCELERATORS environment variable to "cub,cutensor". This improves the performance of many functions involving histograms (e.g. cucim.skimage.filters.threshold_otsu
) or reduction operations (e.g. cucim.skimage.transform.integral_image
).
Additional details of the changes in this release are given below.
- Populate correct channel names for RGBA image (#294) @gigony
- Merge branch-22.04 into branch-22.06 (#258) @jakirkham
- Fix: return object-typed properties as NumPy arrays in
skimage.measure.regionprops_table
(#272) @alxndrkalinin
- add missing
cucim.skimage.segmentation.clear_border
function (#267) @grlee77 - add
cucim.core.operations.color.stain_extraction_pca
andcucim.core.operations.color.normalize_colors_pca
for digital pathology H&E stain extraction and normalization (#273) @grlee77, @drbeh
- Update to use DLPack v0.6 (#295) @gigony
- Remove plugin-related messages temporarily (#291) @gigony
- Simplify recipes (#286) @Ethyling
- Use cupy.fuse to improve efficiency hessian_matrix_eigvals (#280) @grlee77
- Promote small integer types to single rather than double precision (#278) @grlee77
- improve efficiency of histogram-based thresholding functions (#276) @grlee77
- Remove unused dependencies in GPU tests job (#268) @Ethyling
- Enable footprint decomposition for morphology (#274) @grlee77
- Use conda compilers (#232) @Ethyling
- Build packages using mambabuild (#216) @Ethyling
- Alexandr Kalinin (@alxndrkalinin) made their first contribution in https://github.com/rapidsai/cucim/pull/272
- Behrooz Hashemian (@drbeh) made their first contribution in https://github.com/rapidsai/cucim/pull/273
Project Management
- Roadmap
- Development Process
- Architecture Decision Records
- Issue Tracking
- Release Process
- Related Projects
Contributing
- How to Contribute
- Submitting Bugs and Suggestions
- Source Code Organization
- Coding Guidelines
- Contributor License Agreement
Documentation