scikit-image 0.25.0 (2024-12-13)#

我們很高興宣布 scikit-image 0.25.0 的發佈!

新功能#

  • skimage.feature.texture.graycoprops 中新增灰階共生矩陣 (GLCM) 的新屬性「mean」、「variance」、「standard deviation」和「entropy」 (#7375)。

  • 新增 skimage.morphology.footprint_rectangle,支援在一個函數中生成矩形或超矩形足跡 (#7566)。

API 變更#

  • 完成 skimage.feature.plot_matches 的棄用並移除。請改用 skimage.feature.plot_matched_features (#7487)。

  • 棄用 skimage.io.imshowskimage.io.imshow_collectionskimage.io.show。請使用 matplotlibnapari 等來視覺化影像 (#7508)。

  • 移除已棄用的 skimage.morphology.skeletonize_3d;請改用 skimage.morphology.skeletonize (#7572)。

  • 棄用 skimage.io 外掛架構 (#7353)。

  • 切換為使用 scipy.sparse 陣列介面。如需更多詳細資訊,請參閱關於新 scipy.sparse 陣列介面的說明[此處](https://scipy-docs.dev.org.tw/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)。

增強功能#

  • 改善 skimage.morphology.local_minima 對於極小浮點數的數值穩定性 (#7534)。

  • 允許將顏色序列傳遞給 skimage.feature.plot_matched_features 中的參數 matches_color (#7541)。

  • 確保如果未明確提供 matches_colorskimage.feature.plot_matched_features 會使用相同的隨機顏色 (#7541)。

效能#

  • min_distance=1 的情況下,skimage.feature.peak_local_max 現在會跳過不必要的距離計算。這會提高呼叫內部 peak_local_max 的函數的效能,例如 skimage.feature.blob_dogskimage.feature.blob_logskimage.feature.blob_dohskimage.feature.corner_peaks (#7548)。

  • skimage.featurepeak_local_max 中,跳過傳遞 min_distance > 1 的情況下不必要的檢查 (#7548)。

錯誤修正#

  • 確保如果給定的整數 dtype 無法安全地轉換為架構特定的 intp 大小,例如在 i386 架構上,skimage.morphology.remove_objects_by_distance 不會失敗 (#7453)。

  • 修正當所有半軸具有相同長度時,skimage.draw.ellipsoid_stats 中的簡併性 (#7473)。

  • 防止 skimage.morphology.thin 在輸入影像的 dtype 為 uint8 時意外修改輸入影像 (#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 中,釐清預期的影像 dtype 以及如何處理不同強度的物件 (#7456)。

  • 修正 skimage.feature.graycomatrix 的 docstring 中的範例章節 (#7297)。

  • 在設定開發環境的說明中,一致地使用 conda-forge (#7483)。

  • 使用新的 CITATION.cff 而不是 CITATION.bib (#7505)。

  • 在貢獻指南中使用正確的 spin test --coverage (#7515)。

  • 調整給新開發人員的建議;移除 AI 警告 (#7522)。

  • 修改安裝說明 (#7434)。

  • 改進 skimage.restoration.richardson_lucyimage 參數的說明 (#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)。

  • 更新 circleci-artifacts-redirector-action,該動作已移至 Scientific Python org (#7446)。

  • 使用 NumPy 2.0 穩定版建置套件 (#7451)。

  • 修正:在 Meson 版本腳本 shebang 中使用 python3 (#7482)。

  • 重構骨架化測試 (#7459)。

  • 移除未使用且已棄用的依賴項 pytest-runner (#7495)。

  • 排除強制降級 numpy 的 imageio 2.35.0 版本 (#7502)。

  • 不測試 Dask 相容性的閾值函式 (#7509)。

  • 修正建置依賴項 (#7510)。

  • 新增 sdist 檢查至 spin 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.showio.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 wheel (#7571)。

  • 更新 TODO (#7573)。

  • 移除已棄用的 gaussian 輸出參數 (#7574)。

  • 在 Windows 上測試 Py3.13 (#7578)。

  • 更新 ruff linter / formatter (#7580)。

  • 修正格式化問題 (#7581)。

  • CI:將 macos 映像檔固定版本從 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)。

  • 新增遺忘的關於已棄用 squarecuberectangle 的 TODO (#7624)。

  • 升級至 spin 0.13 版本 (#7622)。

  • skimage 頂層模組中延遲載入舊版導入 (#6892)。

  • CI pre-commit 修正 (#7631)。

貢獻者#

此版本新增 30 位作者 (依字母順序排列)

此版本新增 25 位審閱者 (依字母順序排列)

_這些清單為自動產生,可能不完整或包含重複項。_