scikit-image 0.25.0 (2024-12-13)#
我们很高兴地宣布发布 scikit-image 0.25.0!
新特性#
API 变更#
完成
skimage.feature.plot_matches
的弃用并将其删除。今后请使用skimage.feature.plot_matched_features
(#7487)。弃用
skimage.io.imshow
、skimage.io.imshow_collection
和skimage.io.show
。请使用matplotlib
、napari
等来可视化图像 (#7508)。删除已弃用的
skimage.morphology.skeletonize_3d
;请改用skimage.morphology.skeletonize
(#7572)。弃用
skimage.io
插件基础设施 (#7353)。切换到使用
scipy.sparse
数组接口。有关更多详细信息,请参阅关于新的scipy.sparse
数组接口的说明 [此处](https://docs.scipy.org.cn/doc/scipy/reference/sparse.html) (#7576)。弃用
skimage.morphology.rectangle
,改用新函数skimage.morphology.footprint_rectangle
(#7566)。弃用
skimage.morphology.cube
,改用新函数skimage.morphology.footprint_rectangle
(#7566)。弃用
skimage.morphology.square
,改用新函数skimage.morphology.footprint_rectangle
(#7566)。
增强功能#
性能#
Bug 修复#
确保如果给定的整数 dtype 不能安全地转换为特定于架构的
intp
大小(例如在 i386 架构上),skimage.morphology.remove_objects_by_distance
不会失败 (#7453)。修复当所有半轴长度相同时
skimage.draw.ellipsoid_stats
中的退化问题 (#7473)。防止
skimage.morphology.thin
在输入图像为 uint8 dtype 时意外修改输入图像 (#7469)。修复
skimage.measure.ransac
中的数值精度错误。在某些情况下,ransac
会在第一次迭代时停止 (#7065)。修复
skimage.measure.ransac
中的数值精度错误;很小的概率会导致 -0 次最大试验 (#7496)。确保由
skimage.measure.regionprops
返回的RegionProperties
对象可以使用 pickle 进行反序列化 (#7569)。修复在
skimage.segmentation.watershed
中设置watershed_lines=True
导致错误解决方案的边缘情况 (#7071)。修复当标记与局部最小值不对齐时
skimage.segmentation.watershed
的行为,确保在连续像素之前评估每个标记 (#7071)。如果将
numpy.uint
与 NumPy<2 一起使用,则修复skimage.segmentation.join_segmentations
中的 dtype 提升 (#7292)。
文档#
在
skimage.morphology.skeletonize
中,阐明预期的图像 dtypes 以及如何处理不同强度的对象 (#7456)。修复
skimage.feature.graycomatrix
的文档字符串中的示例部分 (#7297)。在设置开发环境的说明中一致地使用 conda-forge (#7483)。
使用新的
CITATION.cff
而不是CITATION.bib
(#7505)。在贡献指南中使用正确的
spin test --coverage
(#7515)。调整对新开发人员的建议;删除 AI 警告 (#7522)。
重新设计安装说明 (#7434)。
改进
skimage.restoration.richardson_lucy
中image
参数的描述 (#7477)。在图库示例“分割人类细胞(有丝分裂)”中,计算每个轮廓级别的段数时,考虑空数组 (#7551)。
修复形态学文档中的拼写错误 (#7606)。
将
skimage.morphology.ball
中参数radius
的类型描述从int
更改为float
(#7627)。
基础设施#
修复具有最小依赖项的 CI 测试,并使依赖项解析更加健壮 (#7462)。
添加 CI 以针对自由线程 Python 3.13 测试 scikit-image (#7463)。
解决 autosummary.import_cycle 警告 (#7486)。
暂时排除 Dask 2024.8.0 以修复 CI (#7493)。
再次取消注释
currentmodule
指令 (#7492)。添加 CI 以发布每晚的自由线程 wheels 包 (#7481)。
更新已弃用的配置 (#7501)。
将 spin 版本提升至 0.11 (#7507)。
确保 PR 中只存在一个
type:
标签 (#7512)。更新 pydata-sphinx-theme (#7511)。
修复 OpenBLAS
s_cmp
未解析符号错误,更新 Emscripten CI 测试 (#7525)。在休眠消息中渲染段落 (#7549)。
使用并行作业构建 sphinx 文档 (#7579)。
不在 CI 中检查测试覆盖率 (#7594)。
在 macos 上显式设置 conda 以进行 wheel 构建 (#7608)。
维护#
在 CI 中循环遍历所有已证明的工件,以验证它们 (#7447)。
更新已移至 Scientific Python org 的 circleci-artifacts-redirector-action (#7446)。
使用 NumPy 2.0 稳定版构建包 (#7451)。
修复:在 Meson 版本脚本 shebang 中使用 python3 (#7482)。
重构了骨架化测试 (#7459)。
删除未使用和已弃用的依赖项 pytest-runner (#7495)。
排除强制 numpy 降级的 imageio 2.35.0 (#7502)。
不要测试 Dask 兼容性的阈值函数 (#7509)。
修复构建依赖项 (#7510)。
向
spin sdist
添加 sdist 检查 (#7438)。重新排序 TODO 列表中的项目 (#7519)。
使用
Rotation.from_euler
计算 3D 旋转矩阵 (#7503)。更新 spin (0.12) (#7532)。
在顶级命名空间中将
lazy_loader
作为私有符号导入 (#7540)。在构建时设置 -DNPY_NO_DEPRECATED_API=NPY_1_23_API_VERSION (#7538)。
更新上传/下载工件版本 (#7545)。
不要使用已弃用的
io.show
和io.imshow
(#7556)。隐藏
assert_stacklevel
内的追溯信息 (#7558)。更新 pre-commit 版本 (#7560)。
放弃对 Python 3.9 的支持 (#7561)。
更新最低依赖项 (SPEC 0) (#7562)。
删除 io/_plugins 中未使用的 PYX 文件 (#7557)。
支持 Python 3.13 (#7565)。
在弃用周期中,保留没有新参数替代的已弃用参数的值 (#7552)。
通过在指令中使用全名来修复丢失的微型画廊 (#7567)。
构建 Python 3.13 wheels 包 (#7571)。
更新 TODO (#7573)。
删除已弃用的高斯输出参数 (#7574)。
在 Windows 上测试 Py3.13 (#7578)。
更新 ruff linter / 格式化程序 (#7580)。
修复格式化问题 (#7581)。
CI:将 macos 镜像 pin 从 12 升级到 13 (#7582)。
更新构建依赖项 (#7587)。
更新最低支持的 pyamg (#7586)。
更新文档依赖项 (#7590)。
将
changelist
提升至 v0.5 (#7601)。将 kaleido 固定到 0.2.1 (#7612)。
更新 upload-nightly-action (#7609)。
更新 pillow (#7615)。
删除 Python 2.7 的残余代码 (#7616)。
在
conf.py
中使用intersphinx_registry
包来保持 intersphinx url 的最新状态。这意味着现在构建文档需要intersphinx-registry
包 (#7611)。更新构建依赖项 (#7614)。
更新文件扩展名并重新格式化 Markdown 文件 (#7617)。
添加关于已弃用的
square
、cube
和rectangle
的遗忘的 TODO (#7624)。升级到 spin 0.13 (#7622)。
在
skimage
顶级模块中延迟加载旧版导入 (#6892)。CI pre-commit 修复 (#7631)。
贡献者#
此版本增加了 30 位作者(按字母顺序排列)
Adeyemi Biola (@decorouz)
Aditi Juneja (@Schefflera-Arboricola)
Agriya Khetarpal (@agriyakhetarpal)
Brigitta Sipőcz (@bsipocz)
Dan Schult (@dschult)
Edgar Andrés Margffoy Tuay (@andfoy)
Egor Panfilov (@soupault)
Erik Welch (@eriknw)
Gianluca (@geeanlooca)
Gregory Lee (@grlee77)
Hayato Ikoma (@hayatoikoma)
Henrik Finsberg (@finsberg)
Jarrod Millman (@jarrodmillman)
Jordão Bragantini (@JoOkuma)
João Seródio (@SerodioJ)
Kushaan Gupta (@kushaangupta)
Lars Grüter (@lagru)
Loïc Estève (@lesteve)
M Bussonnier (@Carreau)
Marianne Corvellec (@mkcor)
Mark Harfouche (@hmaarrfk)
Matthew Feickert (@matthewfeickert)
Paritosh Dahiya (@hnhparitosh)
Piyush Amitabh (@pamitabh)
Ricky Walsh (@rickymwalsh)
Stefan van der Walt (@stefanv)
此版本增加了 25 位审阅者(按字母顺序排列)
Agriya Khetarpal (@agriyakhetarpal)
Brigitta Sipőcz (@bsipocz)
Dan Schult (@dschult)
Edgar Andrés Margffoy Tuay (@andfoy)
Egor Panfilov (@soupault)
Gianluca (@geeanlooca)
Gregory Lee (@grlee77)
Hayato Ikoma (@hayatoikoma)
Jarrod Millman (@jarrodmillman)
Jordão Bragantini (@JoOkuma)
João Seródio (@SerodioJ)
Juan Nunez-Iglesias (@jni)
Kushaan Gupta (@kushaangupta)
Lars Grüter (@lagru)
Marianne Corvellec (@mkcor)
Mark Harfouche (@hmaarrfk)
Matthew Feickert (@matthewfeickert)
Nathan Goldbaum (@ngoldbaum)
Piyush Amitabh (@pamitabh)
Ralf Gommers (@rgommers)
Stefan van der Walt (@stefanv)
_这些列表是自动生成的,可能不完整或可能包含重复项。_