-
Notifications
You must be signed in to change notification settings - Fork 60
release_notes_v22.08.00
This release adds spacing metadata support for TIFF files. 'tiff.x_resolution', 'tiff.y_resolution', and 'tiff.resolution_unit' are added to the metadata of CuImage object. Also 'cucim.spacing' and 'cucim.spacing_units' metadata will have the correct values for TIFF images.
There is now an implementation of the 2D medial-axis transform (MAT) for creating skeletons of binary objects. The skeleton produced contains associated distance information. See cucim.skimage.morphology.medial_axis
.
A new function cucim.skimage.segmentation.expand_label
s will expand the boundaries of a set of nD labeled objects. This is similar to grayscale morphological dilation, but uses distance transform information to avoid expanding an object into any background region that is closer to another object.
A new segmetion function, cucim.skimage.segmentation.chan_vese
, applies the iterative Chan-Vese active contours algorithm for segmentating 2D images.
cucim.skimage.median_filter
will now be much faster when the filter footprint is large and filtering is being done on 2D images with 8 or 16-bit integer data types. These cases use a histogram-based algorithm whose runtime is independent of footprint size.
Implementation of the 2D and 3D Euclidean distance transform in cucim.core.operators.morphology.distance_transform_edt
(matches scipy.ndimage.distance_transform_edt
).
cucim.core.operations.color.normalize_colors_pca
now requires less memory and should be about 25% faster than in the 22.06.00 release. There is also one backwards incompatible change to how the beta
threshold is applied in cucim.core.operations.color.stain_extraction_pca
. Pixels are now retained if any channel has an absorbance above the threshold (previously all channels had to be above the threshold).
More efficient separable convolution kernels, lead to modest performance improvements in several convolution-based filters (e.g. cucim.skimage.filters.gaussian
, cucim.skimage.filters.sobel
and functions like cucim.skimage.feature.canny
which use separable filtering internally).
Additional details of the changes in this release are given below.
- create SimilarityTransform using CuPy 9.x-compatible indexing (#365) @grlee77
- Add
__init__.py
incucim.core
(#359) @jakirkham - Stain extraction: use a less strict condition across channels when thresholding (#316) @grlee77
- Incorporate bug fixes from skimage 0.19.3 (#312) @grlee77
- fix RawKernel bug for canny filter when quantiles are used (#310) @grlee77
- Defer loading of
custom.js
(#383) @galipremsagar - add cucim.core.morphology to API docs + other docstring fixes (#367) @grlee77
- Update README.md (#361) @HesAnEasyCoder
- remove unimplemented functions from See Also and fix version numbers in deprecation warnings (#356) @grlee77
- Forward-merge branch-22.06 to branch-22.08 (#344) @grlee77
- Update README.md (#315) @HesAnEasyCoder
- Update index.rst (#314) @HesAnEasyCoder
- Update PyPI package documentation for v22.06.00 (#311) @gigony
- Add segmentation with the Chan-Vese active contours method (#343) @grlee77
- Add cucim.skimage.morphology.medial_axis (#342) @grlee77
- Add cucim.skimage.segmentation.expand_labels (#341) @grlee77
- Add Euclidean distance transform for images/volumes (#318) @grlee77
- Revert "Allow CuPy 11" (#362) @galipremsagar
- Fix issues with day & night modes in python docs (#360) @galipremsagar
- Allow CuPy 11 (#357) @jakirkham
- more efficient separable convolution (#355) @grlee77
- Support resolution and spacing metadata (#349) @gigony
- Performance optimizations to morphological segmentation functions (#340) @grlee77
- benchmarks: avoid use of deprecated pandas API (#339) @grlee77
- Reduce memory overhead and improve performance of normalize_colors_pca (#328) @grlee77
- Protect against obscure divide by zero error in edge case of
normalize_colors_pca
(#327) @grlee77 - complete parametrization of cucim.skimage benchmarks (#324) @grlee77
- parameterization of
filters
andfeatures
benchmarks (v2) (#322) @grlee77 - Add a fast histogram-based median filter (#317) @grlee77
- Remove custom compiler environment variables (#307) @ajschmidt8
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