Skip to content

Releases: scikit-image/scikit-image

v0.20.0rc7

17 Feb 10:34
v0.20.0rc7
Compare
Choose a tag to compare
v0.20.0rc7 Pre-release
Pre-release
v0.20.0rc7

v0.20.0rc6

16 Feb 20:04
v0.20.0rc6
Compare
Choose a tag to compare
v0.20.0rc6 Pre-release
Pre-release
v0.20.0rc6

v0.20.0rc5

13 Feb 19:45
v0.20.0rc5
Compare
Choose a tag to compare
v0.20.0rc5 Pre-release
Pre-release
v0.20.0rc5

v0.20.0rc4

07 Feb 03:20
v0.20.0rc4
Compare
Choose a tag to compare
v0.20.0rc4 Pre-release
Pre-release
v0.20.0rc4

v0.19.3

12 Jun 18:12
v0.19.3
Compare
Choose a tag to compare

Announcement: scikit-image 0.19.3

We're happy to announce the release of scikit-image v0.19.3!

scikit-image is an image processing toolbox for SciPy that includes algorithms
for segmentation, geometric transformations, color space manipulation,
analysis, filtering, morphology, feature detection, and more.

For more information, examples, and documentation, please visit our website:

https://scikit-image.org

Bugs Fixed

  • Revert unintentional change to default multichannel behavior introduced in v0.19.0 for skimage.restoration.cycle_spin (now defaults to single channel again)
  • Fix corner case with an optimal angle of 0 degrees in hough_line_peaks
  • Fixed the gallery example involving registration with log-polar transformations
  • Update test suite for compatibility with the most recent tifffile release.
  • warp/rotate: fixed a bug with clipping when cval is not in the input range
  • Fix computation of histogram bins for multichannel integer-valued images

General Maintenance

  • Update skimage.future.manual_polygon_segmentation to work with Matplotlib 3.5.
  • Update skimage.io.imread to avoid warnings when using imageio>=2.16.2.
  • Now compatible with Pillow >= 9.1 (palette may contain <256 entries)
  • Added support for NumPy 1.23

Pull Requests Included

  • Backport PR #6306 on branch v0.19.x (Fix for error in 'Using Polar and Log-Polar Transformations for Registration') (#6312)
  • Backport PR #6271 on branch v0.19.x (hough_line_peaks fix for corner case with optimal angle=0) (#6313)
  • Backport PR #6261 on branch v0.19.x (Ignore sparse matrix deprecation warning) (#6316)
  • backport PR 6328: Fix issue with newer versions of matplotlib in manual segmentation (#6334)
  • Backport PR #6343 on branch v0.19.x (avoid warnings about change to v3 API from imageio) (#6344)
  • Backport PR #6355 on branch v0.19.x (remove use of deprecated kwargs from test_tifffile_kwarg_passthrough) (#6357)
  • Backport PR #6352 on branch v0.19.x (Fix channel_axis default for cycle_spin) (#6358)
  • Backport PR #6348 on branch v0.19.x (Fix smoothed image computation when mask is None in canny) (#6359)
  • Backport PR #6361 on branch v0.19.x (Document support for Path objects in io functions) (#6363)
  • Backport PR #6400 on branch v0.19.x (Add support for NumPy 1.23) (#6403)
  • Backport PR #6335 on branch v0.19.x (warp/rotate: fixed a bug with clipping when cval is not in the input range) (#6411)
  • Backport PR #6413 on branch v0.19.x (Fix computation of histogram bins for multichannel integer-valued images) (#6414)

10 authors added to this release [alphabetical by first name or login]

  • Albert Y. Shih
  • Bartłomiej Śmietanka
  • Dave Mellert
  • Gregory Lee
  • Graham Inggs
  • Jarrod Millman
  • John Hagen
  • Mark Harfouche
  • Riadh Fezzani
  • Stefan van der Walt

7 reviewers added to this release [alphabetical by first name or login]

  • Alexandre de Siqueira
  • Gregory Lee
  • Jarrod Millman
  • Juan Nunez-Iglesias
  • Lars Grüter
  • Mark Harfouche
  • Riadh Fezzani

v0.19.2

17 Feb 18:25
v0.19.2
Compare
Choose a tag to compare

scikit-image 0.19.2

We're happy to announce the release of scikit-image v0.19.2! This is primarily
a bug fix release, although there is one new gallery example related to
detection of fluorescence at the nuclear envelope of mammalian cells.

Pull Requests Included

  • fix mistake in tests.yml made during backport (gh-6129)
  • Backport PR #6145 on branch v0.19.x (Fix channel_axis handling in pyramid_gaussian and pyramid_laplace) (gh-6155)
  • Backport PR #6130 on branch v0.19.x (bump deprecated Azure windows environment) (gh-6131)
  • Backport PR #6148 on branch v0.19.x (deprecate n_iter_max (should be max_num_iter)) (gh-6156)
  • Backport PR #6152 on branch v0.19.x (specify python version used by mybinder.org for gallery demos) (gh-6157)
  • Backport PR #6139 on branch v0.19.x (fix phase_cross_correlation typo) (gh-6158)
  • Backport PR #6133 on branch v0.19.x (Update user warning message for viewer module.) (gh-6159)
  • Backport PR #6169 on branch v0.19.x (Fix unintended change to output dtype of match_histograms) (gh-6172)
  • Backport PR #6184 on branch v0.19.x (Fix SIFT wrong octave indices + typo) (gh-6186)
  • Backport PR #6191 on branch v0.19.x (Fix issue6190 - inconsistent default parameters in pyramids.py) (gh-6193)
  • Backport PR #6207 on branch v0.19.x (Always set params to nan when ProjectiveTransform.estimate fails) (gh-6210)
  • Backport PR #5262 on branch v0.19.x (Add textbook-like tutorial on measuring fluorescence at nuclear envelope.) (gh-6213)
  • Backport PR #6087 on branch v0.19.x (Add two datasets for use in upcoming scientific tutorials.) (gh-6215)
  • Backport PR #6214 on branch v0.19.x (EuclideanTransform.estimate should return False when NaNs are present) (gh-6221)
  • Backport PR #6219 on branch v0.19.x (Allow the output_shape argument to be any iterable for resize and resize_local_mean) (gh-6222)
  • Backport PR #6223 on branch v0.19.x (Update filename in testing instructions.) (gh-6225)
  • Backport PR #6231 on branch v0.19.x (Update imports/refs from deprecated scipy.ndimage.filters namespace) (gh-6233)
  • Backport PR #6229 on branch v0.19.x (Remove redundant testing on Appveyor) (gh-6234)
  • Backport PR #6183 on branch v0.19.x (Fix decorators warnings stacklevel) (gh-6238)
  • Backport PR #6239 on branch v0.19.x (DOC: fix SciPy intersphinx) (gh-6241)
  • Backport PR #6232 on branch v0.19.x (Include Cython sources via package_data) (gh-6244)
  • Backport PR #6227 on branch v0.19.x (Fix calculation of Z normal in marching cubes) (gh-6245)
  • Backport PR #6242 on branch v0.19.x (Fix bug in SLIC superpixels with enforce_connectivity=True and start_label > 0) (gh-6246)
  • Backport PR #6211 on branch v0.19.x (PiecewiseAffineTransform.estimate return should reflect underlying transforms) gh-6247
  • update MacOS libomp installation in wheel building script (gh-6249)

9 authors added to this release [alphabetical by first name or login]

  • Chris Roat
  • Fabian Schneider
  • Gregory Lee
  • Hande Gözükan
  • Larry Bradley
  • Marianne Corvellec
  • Mark Harfouche
  • Miles Lucas
  • Riadh Fezzani

8 reviewers added to this release [alphabetical by first name or login]

  • Alexandre de Siqueira
  • Gregory Lee
  • Juan Nunez-Iglesias
  • Marianne Corvellec
  • Mark Harfouche
  • Riadh Fezzani
  • Robert Haase
  • Stefan van der Walt

v0.19.1

15 Dec 17:06
v0.19.1
Compare
Choose a tag to compare

scikit-image 0.19.1

We're happy to announce the release of scikit-image v0.19.1!

This is a small bug fix release that resolves a couple of backwards compatibility issues and a couple of issues with the wheels on PyPI. Specifically, MacOS wheels for Apple M1 (arm64) on PyPI were broken in 0.19.0, but should now be repaired. The arm64 wheels are for MacOs >= 12 only. Wheel sizes are also greatly reduced relative to 0.19.0 by stripping debug symbols from the binaries and making sure that Cython-generated source files are not bundled in the wheels.

Pull Requests Included

  • Backport PR #6097 on branch v0.19.x (Restore non-underscore functions in skimage.data) (gh-6099)
  • Backport PR #6095 on branch v0.19.x (Preserve backwards compatibility for channel_axis parameter in transform functions) (gh-6100)
  • Backport PR #6103 on branch v0.19.x (Make rank filter test comparisons robust across architectures) (gh-6106)
  • Backport PR #6105 on branch v0.19.x (Pass a specific random_state into ransac in test_ransac_geometric) (gh-6107)
  • Fix two equality comparison bugs in the wheel build script (gh-6098)
  • Backport of gh-6109 (Add linker flags to strip debug symbols during wheel building) (gh-6110)
  • Pin setuptools maximum in v0.19.x to avoid breaking on planned distutils API changes (gh-6112)
  • Avoid potential circular import of rgb2gray (gh-6113)
  • Backport PR #6089 on branch v0.19.x (Skip tests requiring fetched data) (gh-6115)
  • Backport PR #6118 on branch v0.19.x (Fixes to tests.yml and fixes for expected warnings) (gh-6127)
  • Backport PR #6114 on branch v0.19.x (Relax test condition to make it more robust to variable CI load) (gh-6128)

3 authors added to this release [alphabetical by first name or login]

  • Gregory R. Lee
  • Joshua Newton
  • Mark Harfouche

5 reviewers added to this release [alphabetical by first name or login]

  • Gregory R. Lee
  • Juan Nunez-Iglesias
  • Marianne Corvellec
  • Mark Harfouche
  • Stefan van der Walt

v0.19.0

03 Dec 08:07
v0.19.0
Compare
Choose a tag to compare

Announcement: scikit-image 0.19.0

We're happy to announce scikit-image v0.19.0!

scikit-image is an image processing toolbox for SciPy that includes algorithms for segmentation, geometric transformations, color space manipulation, analysis, filtering, morphology, feature detection, and more.

For more information, examples, and documentation, please visit our website: https://scikit-image.org

A highlight of this release is the addition of the popular scale-invariant feature transform (SIFT) feature detector and descriptor. This release also
introduces a perceptual blur metric, new pixel graph algorithms, and most functions now operate in single-precision when single-precision inputs are provided. Many other bug fixes, enhancements and performance improvements are detailed below.

A significant change in this release is in the treatment of multichannel images. The existing multichannel argument to functions has been deprecated in favor of a new channel_axis argument. channel_axis can be used to specify which axis of an array contains channel information (with channel_axis=None indicating a grayscale image).

scikit-image now uses "lazy loading", which enables users to access the functions from all skimage submodules without the overhead of eagerly importing all submodules. As a concrete example, after calling "import skimage" a user can directly call a function such as skimage.transform.warp whereas previously it would have been required to first "import skimage.transform".

An exciting change on the development side is the introduction of support for Pythran as an alternative to Cython for generating compiled code. We plan to keep Cython support as well going forward, so developers are free to use either one as appropriate. For those curious about Pythran, a good overview was given in the SciPy 2021 presentation, "Building SciPy Kernels with Pythran" (https://www.youtube.com/watch?v=6a9D9WL6ZjQ).

This release now supports 3.7-3.10. Apple M1 architecture (arm64) support is new to this release. MacOS 12 wheels are provided for Python 3.8-3.10.

New Features

  • Added support for processing images with channels located along any array axis. This is in contrast to previous releases where channels were required to be the last axis of an image. See more info on the new channel_axis argument under the API section of the release notes.
  • A no-reference measure of perceptual blur was added (skimage.measure.blur_effect).
  • Non-local means (skimage.restoration.denoise_nl_means) now supports 3D multichannel, 4D and 4D multichannel data when fast_mode=True.
  • An n-dimensional Fourier-domain Butterworth filter (skimage.filters.butterworth) was added.
  • Color conversion functions now have a new channel_axis keyword argument that allows specification of which axis of an array corresponds to channels. For backwards compatibility, this parameter defaults to channel_axis=-1, indicating that channels are along the last axis.
  • Added a new keyword only parameter random_state to morphology.medial_axis and restoration.unsupervised_wiener.
  • Seeding random number generators will not give the same results as the underlying generator was updated to use numpy.random.Generator.
  • Added saturation parameter to skimage.color.label2rgb
  • Added normalized mutual information metric skimage.metrics.normalized_mutual_information
  • threshold_local now supports n-dimensional inputs and anisotropic block_size
  • New skimage.util.label_points function for assigning labels to points.
  • Added nD support to several geometric transform classes
  • Added skimage.metrics.hausdorff_pair to find points separated by the Hausdorff distance.
  • Additional colorspace illuminants and observers parameter options were added to skimage.color.lab2rgb, skimage.color.rgb2lab,
    skimage.color.xyz2lab, skimage.color.lab2xyz, skimage.color.xyz2luv and skimage.color.luv2xyz.
  • skimage.filters.threshold_multiotsu has a new hist keyword argument to allow use with a user-supplied histogram. (gh-5543)
  • skimage.restoration.denoise_bilateral added support for images containing negative values. (gh-5527)
  • The skimage.feature functions blob_dog, blob_doh and blob_log now support a threshold_rel keyword argument that can be used to specify a relative threshold (in range [0, 1]) rather than an absolute one. (gh-5517)
  • Implement lazy submodule importing (gh-5101)
  • Implement weighted estimation of geometric transform matrices (gh-5601)
  • Added new pixel graph algorithms in skimage.graph: pixel_graph generates a graph (network) of pixels according to their adjacency, and central_pixel finds the geodesic center of the pixels. (gh-5602)
  • scikit-image now supports use of Pythran in contributed code. (gh-3226)

Improvements

  • Many more functions throughout the library now have single precision (float32) support.
  • Biharmonic inpainting (skimage.restoration.inpaint_biharmonic) was refactored and is orders of magnitude faster than before.
  • Salt-and-pepper noise generation with skimage.util.random_noise is now faster.
  • The performance of the SLIC superpixels algorithm (skimage.segmentation.slice) was improved for the case where a mask is supplied by the user (gh-4903). The specific superpixels produced by masked SLIC will not be identical to those produced by prior releases.
  • exposure.adjust_gamma has been accelerated for uint8 images thanks to a LUT (gh-4966).
  • measure.label has been accelerated for boolean input images, by using scipy.ndimage's implementation for this case (gh-4945).
  • util.apply_parallel now works with multichannel data (gh-4927).
  • skimage.feature.peak_local_max supports now any Minkowski distance.
  • Fast, non-Cython implementation for skimage.filters.correlate_sparse.
  • For efficiency, the histogram is now precomputed within skimage.filters.try_all_threshold.
  • Faster skimage.filters.find_local_max when given a finite num_peaks.
  • All filters in the skimage.filters.rank module now release the GIL, enabling multithreaded use.
  • skimage.restoration.denoise_tv_bregman and
    skimage.restoration.denoise_bilateral now release the GIL, enabling multithreaded use.
  • A skimage.color.label2rgb performance regression was addressed.
  • Improve numerical precision in CircleModel.estimate. (gh-5190)
  • Add default keyword argument values to skimage.restoration.denoise_tv_bregman, skimage.measure.block_reduce, and skimage.filters.threshold_local. (gh-5454)
  • Make matplotlib an optional dependency (gh-5990)
  • single precision support in skimage.filters (gh-5354)
  • Support nD images and labels in label2rgb (gh-5550)
  • Regionprops table performance refactor (gh-5576)
  • add regionprops benchmark script (gh-5579)
  • remove use of apply_along_axes from greycomatrix & greycoprops (gh-5580)
  • refactor gabor_kernel for efficiency (gh-5582)
  • remove need for channel_as_last_axis decorator in skimage.filters (gh-5584)
  • replace use of scipy.ndimage.gaussian_filter with skimage.filters.gaussian (gh-5872)
  • add channel_axis argument to quickshift (gh-5987)
  • add MacOS arm64 wheels (gh-6068)

API Changes

  • The multichannel boolean argument has been deprecated. All functions with multichannel support now use an integer channel_axis to specify which axis corresponds to channels. Setting channel_axis to None is used to indicate that the image is grayscale. Specifically, existing code with multichannel=True should be updated to use channel_axis=-1 and code with multichannel=False should now specify channel_axis=None.
  • Most functions now return float32 images when the input has float32 dtype.
  • A default value has been added to measure.find_contours, corresponding to the half distance between the min and max values of the image (gh-4862).
  • data.cat has been introduced as an alias of data.chelsea for a more descriptive name.
  • The level parameter of measure.find_contours is now a keyword argument, with a default value set to (max(image) - min(image)) / 2.
  • p_norm argument was added to skimage.feature.peak_local_max to add support for Minkowski distances.
  • skimage.transforms.integral_image now promotes floating point inputs to double precision by default (for accuracy). A new dtype keyword argument can be used to override this behavior when desired.
  • Color conversion functions now have a new channel_axis keyword argument (see New Features section).
  • SLIC superpixel segmentation outputs may differ from previous versions for data that was not already scaled to [0, 1] range. There is now an automatic internal rescaling of the input to [0, 1] so that the compactness parameter has an effect that is independent of the input image's scaling.
  • A bug fix to the phase normalization applied within skimage.register.phase_cross_correlation may result in a different result as compared to prior releases. The prior behavior of "unnormalized" cross correlation is still available by explicitly setting normalization=None. There is no change to the masked cross-correlation case, which uses a different algorithm.

Bugfixes

  • Input labels argument renumbering in skimage.feature.peak_local_max is avoided (gh-5047).
  • fix clip bug in resize when anti_aliasing is applied (gh-5202)
  • Nonzero values at the image edge are no longer incorrectly marked as a boundary when using find_bounaries with mode='subpixel' (gh-5447).
  • Fix return dtype of _label2rgb_avg function.
  • Ensure skimage.color.separate_stains does not return negative values.
  • Prevent integer overflow in ``Ellips...
Read more

v0.19.0rc0

22 Nov 06:25
v0.19.0rc0
Compare
Choose a tag to compare
v0.19.0rc0 Pre-release
Pre-release

Announcement: scikit-image 0.19.0rc0

We're happy to announce a release-candidate for scikit-image v0.19.0!

scikit-image is an image processing toolbox for SciPy that includes algorithms for segmentation, geometric transformations, color space manipulation, analysis, filtering, morphology, feature detection, and more.

For more information, examples, and documentation, please visit our website: https://scikit-image.org

A highlight of this release is the addition of the popular scale-invariant feature transform (SIFT) feature detector and descriptor. This release also
introduces a perceptual blur metric, new pixel graph algorithms, and most functions now operate in single-precision when single-precision inputs are provided. Many other bug fixes, enhancements and performance improvements are detailed below.

A significant change in this release is in the treatment of multichannel images. The existing multichannel argument to functions has been deprecated in favor of a new channel_axis argument. channel_axis can be used to specify which axis of an array contains channel information (with channel_axis=None indicating a grayscale image).

scikit-image now uses "lazy loading", which enables users to access the functions from all skimage submodules without the overhead of eagerly importing all submodules. As a concrete example, after calling "import skimage" a user can directly call a function such as skimage.transform.warp whereas previously it would have been required to first "import skimage.transform".

An exciting change on the development side is the introduction of support for Pythran as an alternative to Cython for generating compiled code. We plan to keep Cython support as well going forward, so developers are free to use either one as appropriate. For those curious about Pythran, a good overview was given in the SciPy 2021 presentation, "Building SciPy Kernels with Pythran" (https://www.youtube.com/watch?v=6a9D9WL6ZjQ).

New Features

  • Added support for processing images with channels located along any array axis. This is in contrast to previous releases where channels were required to be the last axis of an image. See more info on the new channel_axis argument under the API section of the release notes.
  • A no-reference measure of perceptual blur was added (skimage.measure.blur_effect).
  • Non-local means (skimage.restoration.denoise_nl_means) now supports 3D multichannel, 4D and 4D multichannel data when fast_mode=True.
  • An n-dimensional Fourier-domain Butterworth filter (skimage.filters.butterworth) was added.
  • Color conversion functions now have a new channel_axis keyword argument that allows specification of which axis of an array corresponds to channels. For backwards compatibility, this parameter defaults to channel_axis=-1, indicating that channels are along the last axis.
  • Added a new keyword only parameter random_state to morphology.medial_axis and restoration.unsupervised_wiener.
  • Seeding random number generators will not give the same results as the underlying generator was updated to use numpy.random.Generator.
  • Added saturation parameter to skimage.color.label2rgb
  • Added normalized mutual information metric skimage.metrics.normalized_mutual_information
  • threshold_local now supports n-dimensional inputs and anisotropic block_size
  • New skimage.util.label_points function for assigning labels to points.
  • Added nD support to several geometric transform classes
  • Added skimage.metrics.hausdorff_pair to find points separated by the Hausdorff distance.
  • Additional colorspace illuminants and observers parameter options were added to skimage.color.lab2rgb, skimage.color.rgb2lab,
    skimage.color.xyz2lab, skimage.color.lab2xyz, skimage.color.xyz2luv and skimage.color.luv2xyz.
  • skimage.filters.threshold_multiotsu has a new hist keyword argument to allow use with a user-supplied histogram. (gh-5543)
  • skimage.restoration.denoise_bilateral added support for images containing negative values. (gh-5527)
  • The skimage.feature functions blob_dog, blob_doh and blob_log now support a threshold_rel keyword argument that can be used to specify a relative threshold (in range [0, 1]) rather than an absolute one. (gh-5517)
  • Implement lazy submodule importing (gh-5101)
  • Implement weighted estimation of geometric transform matrices (gh-5601)
  • Added new pixel graph algorithms in skimage.graph: pixel_graph generates a graph (network) of pixels according to their adjacency, and central_pixel finds the geodesic center of the pixels. (gh-5602)
  • scikit-image now supports use of Pythran in contributed code. (gh-3226)

Improvements

  • Many more functions throughout the library now have single precision (float32) support.
  • Biharmonic inpainting (skimage.restoration.inpaint_biharmonic) was refactored and is orders of magnitude faster than before.
  • Salt-and-pepper noise generation with skimage.util.random_noise is now faster.
  • The performance of the SLIC superpixels algorithm (skimage.segmentation.slice) was improved for the case where a mask is supplied by the user (gh-4903). The specific superpixels produced by masked SLIC will not be identical to those produced by prior releases.
  • exposure.adjust_gamma has been accelerated for uint8 images thanks to a LUT (gh-4966).
  • measure.label has been accelerated for boolean input images, by using scipy.ndimage's implementation for this case (gh-4945).
  • util.apply_parallel now works with multichannel data (gh-4927).
  • skimage.feature.peak_local_max supports now any Minkowski distance.
  • Fast, non-Cython implementation for skimage.filters.correlate_sparse.
  • For efficiency, the histogram is now precomputed within skimage.filters.try_all_threshold.
  • Faster skimage.filters.find_local_max when given a finite num_peaks.
  • All filters in the skimage.filters.rank module now release the GIL, enabling multithreaded use.
  • skimage.restoration.denoise_tv_bregman and
    skimage.restoration.denoise_bilateral now release the GIL, enabling multithreaded use.
  • A skimage.color.label2rgb performance regression was addressed.
  • Improve numerical precision in CircleModel.estimate. (gh-5190)
  • Add default keyword argument values to skimage.restoration.denoise_tv_bregman, skimage.measure.block_reduce, and skimage.filters.threshold_local. (gh-5454)
  • Make matplotlib an optional dependency (gh-5990)
  • single precision support in skimage.filters (gh-5354)
  • Support nD images and labels in label2rgb (gh-5550)
  • Regionprops table performance refactor (gh-5576)
  • add regionprops benchmark script (gh-5579)
  • remove use of apply_along_axes from greycomatrix & greycoprops (gh-5580)
  • refactor gabor_kernel for efficiency (gh-5582)
  • remove need for channel_as_last_axis decorator in skimage.filters (gh-5584)
  • replace use of scipy.ndimage.gaussian_filter with skimage.filters.gaussian (gh-5872)
  • add channel_axis argument to quickshift (gh-5987)

API Changes

  • The multichannel boolean argument has been deprecated. All functions with multichannel support now use an integer channel_axis to specify which axis corresponds to channels. Setting channel_axis to None is used to indicate that the image is grayscale. Specifically, existing code with multichannel=True should be updated to use channel_axis=-1 and code with multichannel=False should now specify channel_axis=None.
  • Most functions now return float32 images when the input has float32 dtype.
  • A default value has been added to measure.find_contours, corresponding to the half distance between the min and max values of the image (gh-4862).
  • data.cat has been introduced as an alias of data.chelsea for a more descriptive name.
  • The level parameter of measure.find_contours is now a keyword argument, with a default value set to (max(image) - min(image)) / 2.
  • p_norm argument was added to skimage.feature.peak_local_max to add support for Minkowski distances.
  • skimage.transforms.integral_image now promotes floating point inputs to double precision by default (for accuracy). A new dtype keyword argument can be used to override this behavior when desired.
  • Color conversion functions now have a new channel_axis keyword argument (see New Features section).
  • SLIC superpixel segmentation outputs may differ from previous versions for data that was not already scaled to [0, 1] range. There is now an automatic internal rescaling of the input to [0, 1] so that the compactness parameter has an effect that is independent of the input image's scaling.
  • A bug fix to the phase normalization applied within skimage.register.phase_cross_correlation may result in a different result as compared to prior releases. The prior behavior of "unnormalized" cross correlation is still available by explicitly setting normalization=None. There is no change to the masked cross-correlation case, which uses a different algorithm.

Bugfixes

  • Input labels argument renumbering in skimage.feature.peak_local_max is avoided (gh-5047).
  • fix clip bug in resize when anti_aliasing is applied (gh-5202)
  • Nonzero values at the image edge are no longer incorrectly marked as a boundary when using find_bounaries with mode='subpixel' (gh-5447).
  • Fix return dtype of _label2rgb_avg function.
  • Ensure skimage.color.separate_stains does not return negative values.
  • Prevent integer overflow in EllipseModel.
  • Fixed off-by one error in pixel bins in Hough line transform, skimage.transform.hough_line.
  • Handle 1D arrays properly in ``skimage....
Read more

v0.18.3

24 Aug 18:20
v0.18.3
Compare
Choose a tag to compare

scikit-image 0.18.3

This is a small bugfix release for compatibility with Pooch 1.5 and SciPy 1.7.

Bug fixes

  • Only import from Pooch's public API. This resolves an import failure with
    Pooch 1.5.0. (#5531, backport of #5529)
  • Do not use deprecated scipy.linalg.pinv2 in random_walker when
    using the multigrid solver. (#5531, backport of #5437)