scikit-image 0.22.0 (2023-11-03)#
We’re happy to announce the release of scikit-image 0.22.0!
Highlights#
New Features#
Add new image sequence
skimage.data.palisades_of_vogtshowing in-vivo tissue of the palisades of Vogt (#6858).
API Changes#
Update minimal required NumPy version to 1.22 (#7005).
Update minimal required lazy_loader version to 0.3 (#7043).
Make PyWavelets an optional dependency which is only required for
skimage.restoration.denoise_waveletandskimage.restoration.estimate_sigma(#7156).Remove deprecated
skimage.filters.inverse. Useskimage.filters.filter_inverseinstead (#7161).Remove deprecated function
skimage.filters.ridges.compute_hessian_eigenvalues. Useskimage.feature.hessian_matrix_eigvalson the results ofskimage.feature.hessian_matrixinstead (#7162).Remove deprecated automatic detection of the color channel in
skimage.filters.gaussian.channel_axis=Nonenow indicates a grayscale image. Set the color channel withchannel_axis=-1explicitly (#7164).Change number of returned arguments in
skimage.registration.phase_cross_correlation. The function now always returns the 3 argumentsshift,error, andphasediff(#7166).Deprecate
return_errorinskimage.registration.phase_cross_correlation(#7174).
Performance#
Add lazy loading to the
skimage.featuresubmodule (#6983).Add lazy loading to the
skimage.graphsubmodule (#6985).Add lazy loading to the
skimage.measuresubmodule (#6999).Add lazy loading to the
skimage.transformsubmodule (#7009).Add lazy loading to the
skimage.restorationsubmodule (#7021).Add lazy loading to the
skimage.registrationsubmodule (#7032).Avoid unnecessary padding in
skimage.measure.block_resize(#7092).
Bug Fixes#
Add missing properties
num_pixelsandcoords_scaledtoskimage.measure.regionprops_table(#7039).Fix
too many values to unpack errorwith imageio 2.31.1 invideo.rst(#7076).Address error in
skimage.filters.threshold_trianglewhen images with a uniform intensity are passed. In these cases the uniform intensity is returned as the threshold (#7098).Fix error in
skimage.color.lab2rgbfor 1D input (#7116).Make
skimage.registration.phase_cross_correlationconsistently return an array even ifdisambiguate=True(#7112).Allow
extra_propertiesof non-equal lengths to be passed correctly toskimage.measure.regionprops_table(#7136).
Documentation#
Use a more descriptive title for current inpainting example (#6989).
Fix URLs to the install page (#6998).
Fix equation for Wiener filter in
restoration.wiener’s docstring (#6987).Fix missing links in INSTALL.rst and simplify language (#6984).
Edit installation and contributor guidelines (#6991).
Fix URLs that lead to 404 page (#7008).
Replace with correct reference to eigenvalues in ridge detection docstrings (#7034).
Add inpainting example to gallery (#6853).
Fix grammar in SKIP 1 (#7081).
Add missing minus in
SimilarityTransformdocstring (#6840).Add one-line docstring to
skimage.segmentation(#6843).Add a short docstring to
skimage.util(#6831).Enable version warning banners for docs (#7139).
Clarify order of dimensions in
skimage.transform.EuclideanTransform(#7103).Add docstring to the
morphologymodule (#6814).Include Plausible analytics from Scientific Python in our HTML docs (#7145).
Specify coordinate convention in
skimage.draw.polygon2mask(#7131).Update 0.22.0 release notes (#7182).
Infrastructure#
Pin milestone labeler to v0.1.0 SHA (#6982).
Ensure existing target directory for
random.js(#7015).Assign next milestone only for PRs targeting
mainbranch (#7018).Add missing directories to
spin docs --cleancommand (#7019).Rework
generate_release_notes.pyand add PR summary parsing (#6961).Use packaged version of
generate_release_notes.py(changelist) (#7049).Generate requirements files from pyproject.toml (#7085).
Update spin to v0.5 (#7093).
Update to LLVM 16 with choco temporarily (#7109).
Update pytest config in
pyproject.tomlwith repo-review recommendations (#7063).Use checkout action version 4 (#7180).
Maintenance#
Don’t test numpy prerelease on azure (#6996).
Drop Python 3.8 support per SPEC 0 (#6990).
Upper pin imageio (#7002).
meson: allow proper selection of NumPy, Pythran in cross builds (#7003).
Unpin imageio and add warningfilter (#7006).
Update to latest attach-next-milestone action (#7014).
Avoid deprecated auto-removal of overlapping axes in thresholding example (#7026).
Remove conflicting setuptools upper pin (#7045).
Remove future.graph after v0.21 release (#6899).
Cleanup from move to pyproject.toml (#7044).
Ignore new matplotlib warning (#7056).
Update spin (#7054).
Ignore SciPy 1.12.dev0 deprecation warning (#7057).
Include expected warning for SciPy 1.12 (#7058).
Mark NaN-related deprecation warning from
np.clipas optional in tests (#7052).Fix abs value function warnings (#7010).
Temporary fix for wheel recipe (#7059).
Temporary fix for wheel building (#7060).
Remove outdated comment (#7077).
Include py.typed file in distribution (PEP 561) (#7073).
Transition user guide to
import skimage as ski(#7024).Fix for NumPy 1.25 (#6970).
Pin sphinx until sphinx-gallery is fixed (#7100).
Cleanup old Python 3.11 tests (#7099).
Revert “Pin sphinx until sphinx-gallery is fixed (#7100)” (#7102).
MNT: Remove
np.float_alias; it is removed in NumPy 2.0 (#7118).Fix for NumPy 1.26 (#7101).
Update meson-python (#7120).
We now require sklearn 1.1, as per [SPEC0](https://scientific-python.org/specs/spec-0000/) (#7121).
Update for NumPy 2 namespace cleanup (#7119).
DOC: minor numpydoc syntax update (#7123).
Update for NumPy 2 namespace cleanup (#7122).
Temporary work-around for NEP 51 numpy scalar reprs + doctests (#7125).
Update lazy loader (#7126).
Fix PEP 8 issues (#7142).
Remove single-threaded dask usage in face detection gallery example which fixes issues with running the example on Windows and CI (#7141).
Update spin version to 0.6 (#7150).
Match pep8speaks and ruff line lengths to 88 (#7148).
Remove last reference to distutils in
_build_utils/tempita.py(#7137).Update sphinx, sphinx-gallery & sphinx_design (#7155).
Update minimal version of numpydoc to 1.6 (#7106).
Build wheels for py3.12 (#7082).
Update label and milestone workflows (#7163).
Update TODO (see #6899) (#7165).
Announce Python 3.12 support (#7167).
Remove pep8speaks config (#7172).
Filter out expected runtime warnings in registation.phase_cross_correlation when disambiguate=True (#7147).
Use pre-commit bot (#7171).
Fix missing warnings import in
phase_cross_correlation(#7175).Fix release notes error (#7177).
Use trusted publisher (#7178).
Contributors#
24 authors added to this release (alphabetically):
Adeyemi Biola (@decorouz)
Amund Vedal (@vedal)
Ananya Srivastava (@ana42742)
Andrew J. Hesford (@ahesford)
Antony Lee (@anntzer)
Elena Pascal (@elena-pascal)
Jarrod Millman (@jarrodmillman)
Juan Nunez-Iglesias (@jni)
Kenfack Anafack Alex Bruno (@Br-Al)
Klaus Rettinghaus (@rettinghaus)
Larry Bradley (@larrybradley)
Lars Grüter (@lagru)
Marianne Corvellec (@mkcor)
Marvin Albert (@m-albert)
Matthias Bussonnier (@Carreau)
Matthias Nwt (@matthiasnwt)
Mike Taves (@mwtoews)
Riadh Fezzani (@rfezzani)
Stefan van der Walt (@stefanv)
Talley Lambert (@tlambert03)
19 reviewers added to this release (alphabetically):
Adeyemi Biola (@decorouz)
Ananya Srivastava (@ana42742)
Andrew J. Hesford (@ahesford)
Egor Panfilov (@soupault)
Grzegorz Bokota (@Czaki)
Jarrod Millman (@jarrodmillman)
Juan Nunez-Iglesias (@jni)
Kristen Thyng (@kthyng)
Larry Bradley (@larrybradley)
Lars Grüter (@lagru)
Marianne Corvellec (@mkcor)
Mark Harfouche (@hmaarrfk)
Marvin Albert (@m-albert)
Matthias Bussonnier (@Carreau)
Maxim (@koshakOK)
Mike Taves (@mwtoews)
Stefan van der Walt (@stefanv)
These lists are automatically generated, and may not be complete or may contain duplicates.