scikit-image 0.17.2 (2020-05-13)#

我們很高興宣佈發佈 scikit-image v0.17.2,這是一個錯誤修復版本。

錯誤修復#

  • 我們將 pooch 設定為可選的相依性,因為它被錯誤地新增為必要相依性 (#4666),並且我們修正了 pooch 用於下載資料的路徑錯誤 (#4662)

  • 針對 slic 分割、ORB 和 BRIEF 特徵偵測器修正了 float 32 影像的支援 (#4683, #4684, #4685, #4696, #4697)

  • 我們移除了已棄用的引數 (#4691)
    • maskshift_xshift_y,來自 skimage.filters.median

    • beta1beta2,來自 skimage.filters.frangi

    • beta1beta2,來自 skimage.filters.hessian

    • dtype,來自 skimage.io.imread

    • img,來自 skimage.morphology.skeletonize_3d。

  • 已更新 Gallery 範例,以抑制警告並考量某些函式中的新預設值 (#4692 和 #4676)

此版本新增了 6 位作者 [依名字或登入名稱字母順序排列]#

  • Alexandre de Siqueira

  • Emmanuelle Gouillart

  • François Boulogne

  • Juan Nunez-Iglesias

  • Mark Harfouche

  • Riadh Fezzani

scikit-image 0.17.1 (2020-05-08)#

我們很高興宣佈發佈 scikit-image v0.17.1!

scikit-image 是 SciPy 的影像處理工具箱,包含用於分割、幾何轉換、色彩空間操作、分析、濾波、形態學、特徵偵測等的演算法。

如需更多資訊、範例和文件,請瀏覽我們的網站

https://scikit-image.dev.org.tw

非常感謝 54 位作者貢獻了驚人的 213 個合併的提取請求!scikit-image 是一個社群專案,我們很高興這個數字包含首次為 scikit-image 貢獻的人。

特別感謝 Cython 團隊的發佈,他們幫助我們讓程式碼與即將推出的 Cython 3.0 版本相容。

新功能#

  • 使用 restoration.calibrate_denoiser 校正去噪演算法的超參數 (#3824),並附上相關的 Gallery 範例和教學。

  • measure.profile_line 有一個新的 reduce_func 參數,可接受要在沿著輪廓的像素值上計算的縮減運算 (#4206)

  • 用於減少計算 n 維影像 FFT 時的光譜洩漏的 nD 視窗,搭配 filters.window (#4252)(附上新的 Gallery 範例)

  • 新增 Minkowski 距離度量支援至 corner_peak (#4218)

  • 引入 util.map_array,將一組像素值對應到另一組像素值 (例如,將區域標籤對應到標籤影像中區域的大小) #4612 和 #4646

  • 遮罩的 marching cubes (#3829)

  • SLIC 超像素演算法現在接受遮罩,以排除影像的某些部分,並強制超像素邊界遵循遮罩的邊界 (#3850)

  • Pooch – 從 github 即時下載資料集:由於 pooch 函式庫,我們引入了在 data 子模組中包含較大資料集的可能性。data.download_all 會擷取所有資料集。(#3945)

  • 從這個版本開始,我們的 Gallery 範例現在有連結可在 binder 執行個體上執行範例筆記本。(#4543)

新增了關於 regionprops_table 使用 (#4348)、幾何轉換 (#4385) 以及註冊旋轉和縮放且無共享中心的教學和 Gallery 範例 (#4515)。Gallery 中新增了一個關於註冊的新章節 (#4575)。

改進#

  • scikit-image 的目標是完全與 3D 陣列相容,並在可能的情況下與 nD 陣列相容。已在色彩轉換函式 (#4418)、CLAHE exposure.equalize_adapthist 演算法 (#4598) 以及 Sobel、Scharr 和 Prewitt 濾波器中新增了 nD 支援 (#4347)。

  • denoise_tv_bregman 的多通道支援 (#4446)

  • 在標籤遠大於標籤數的情況下,已減少 segmentation.relabel_sequential 的記憶體用量 (#4612)

  • 現在可以在 draw.random_shapes 中使用隨機橢圓 (#4493)

  • 為脊濾波器新增邊界條件 (#4396)

  • segmentation.random_walker 新的 Jacobi 預先調整共軛梯度模式 (#4359) 和小修正 #4630

  • 在 exposure.intensity_range 中使用 NaN 重新縮放時發出警告 (#4265)

我們也改進了數個函式在處理資料類型時的一致性

  • 在 filters.rank 函式中使 dtype 一致 (#4289)

  • 修正 colorconv float32 至 double 的轉換 (#4296)

  • 防止 radon 將 float32 陣列升級為 double (#4297)

  • 管理 iradon_sart 輸入和輸出資料類型 (#4300)

API 變更#

  • 與浮點輸入搭配使用時,denoise_wavelet 不再重新縮放資料範圍,也不再將輸出裁剪至 [0, 1] 或 [-1, 1] 範圍。對於非浮點輸入,仍然會像先前版本一樣進行重新縮放和裁剪 (雖然有與 sigma 縮放相關的錯誤修正)。

  • 對於 2D 輸入,邊緣濾波器 (Sobel、Scharr、Prewitt、Roberts 和 Farid) 在未提供遮罩時不再將邊界像素設定為 0。此變更是因為 scipy.ndimage.convolve 的邊界模式現在是 'reflect',這允許這些濾波器在邊界處使用有意義的值。若要保留舊行為,請傳遞 mask=np.ones(image.shape, dtype=bool) (#4347)

  • out_range 是數值範圍而不是 skimage.exposure.rescale_intensity() 中的 dtype 時,輸出資料類型將永遠是 float (#4585)

  • 由於不同的捨入行為,skimage.exposure.equalize_adapthist() 傳回的值會與先前版本略有不同 (#4585)

  • 將 masked_register_translation 從 feature 移動到 registration (#4503)

  • 將 register_translation 從 skimage.feature 移動到 skimage.registration (#4502)

  • 將 watershed 從 morphology 移動到 segmentation (#4443)

  • 將 draw.circle() 重新命名為 draw.disk() (#4428)

  • skimage.segmentation.relabel_sequential() 傳回的前向和後向對應不再是 NumPy 陣列,而是記憶體效率更高的 ArrayMap 物件,這些物件對於對應的行為方式相同。如需更多詳細資訊,請參閱 relabel_sequential 文件。若要取回 NumPy 陣列,請將其轉換為 NumPy 陣列:np.asarray(forward_map) (#4612)

錯誤修正#

  • denoise_wavelet:對於使用者提供的 sigma,如果輸入影像透過 img_as_float 重新縮放,則相同的縮放將套用至 sigma,以保留雜訊估計的相對比例。若要還原舊行為,使用者可以手動指定 rescale_sigma=False

  • 修正 Frangi 影像周圍的瑕疵 (#4343)

  • 修正慣性張量特徵值中由於浮點精確度而產生的負特徵值 (#4589)

  • 修正 F 順序影像的 morphology.flood (#4556)

  • 修正浮點影像輸入的 h_maxima/minima 奇怪行為 (#4496)

  • 修正 peak_local_max 座標順序 (#4501)

  • 在 peak_local_max 中自然排序相同振幅的峰值座標 (#4582)

  • 修正 denoise_nl_means 資料類型管理 (#4322)

  • 更新 rescale_intensity 以防止下溢/溢位並產生正確的輸出 dtype (#4585)

(其他小的錯誤修正在最後的其他提取請求清單中)

棄用#

此版本支援的最低 Python 版本為 3.6。

  • skimage.morphology.flood_fill 中的參數 inplace 已棄用,改為 in_place,並將在 scikit-image 0.19.0 版本中移除 (#4250)。

  • skimage.segmentation.circle_level_set 已棄用,並將在 0.19 中移除。請改用 skimage.segmentation.disk_level_set

  • skimage.draw.circle 已被棄用,將在 0.19 版本中移除。請改用 skimage.draw.disk

  • 由於與 Python 關鍵字衝突,iradon 中的 filter 參數已被棄用 (#4158)

  • 棄用 marching_cubes_classic (#4287)

  • 將 label2rgb 的預設背景值從 -1 更改為 0 (#4614)

  • 棄用 rgb2grey 和 grey2rgb (#4420)

  • 完成 morphsnakes 中 circle 的棄用 (#4467)

  • 棄用 rgb2gray 中非 RGB 圖像的轉換 (#4838, #4439),並棄用 gray2rgb 中非灰階圖像的轉換 (#4440)

其他 Pull Request 的列表在本文件的末尾,作者和審閱者的列表之後。

此版本新增了 54 位作者 [按名字或登入名稱字母順序排列]#

  • aadideshpande (aadideshpande)

  • Alexandre de Siqueira

  • Asaf Kali

  • Cedric

  • D-Bhatta (D-Bhatta)

  • Danielle

  • Davis Bennett

  • Dhiren Serai

  • Dylan Cutler

  • Egor Panfilov

  • Emmanuelle Gouillart

  • Eoghan O’Connell

  • Eric Jelli

  • Eric Perlman

  • erjel (erjel)

  • Evan Widloski

  • François Boulogne

  • Gregory R. Lee

  • Hazen Babcock

  • Jan Eglinger

  • Joshua Batson

  • Juan Nunez-Iglesias

  • Justin Terry

  • kalvdans (kalvdans)

  • Karthikeyan Singaravelan

  • Lars Grüter

  • Leengit (Leengit)

  • leGIT-bot (leGIT-bot)

  • LGiki

  • Marianne Corvellec

  • Mark Harfouche

  • Marvin Albert

  • mellertd (Dave Mellert)

  • Miguel de la Varga

  • Mostafa Alaa

  • Mojdeh Rastgoo (mrastgoo)

  • notmatthancock (matt)

  • Ole Streicher

  • Riadh Fezzani

  • robroooh (robroooh)

  • SamirNasibli

  • schneefux (schneefux)

  • Scott Sievert

  • Stefan van der Walt

  • Talley Lambert

  • Tim Head (betatim)

  • Thomas A Caswell

  • Timothy Sweetser

  • Tony Tung

  • Uwe Schmidt

  • VolkerH (VolkerH)

  • Xiaoyu Wu

  • Yuanqin Lu

  • Zaccharie Ramzi

  • Zhōu Bówēi 周伯威

此版本新增了 35 位審閱者 [按名字或登入名稱字母順序排列]#

  • Alexandre de Siqueira

  • Asaf Kali

  • D-Bhatta

  • Egor Panfilov

  • Emmanuelle Gouillart

  • Eoghan O’Connell

  • erjel

  • François Boulogne

  • Gregory R. Lee

  • Hazen Babcock

  • Jacob Quinn Shenker

  • Jirka Borovec

  • Josh Warner

  • Joshua Batson

  • Juan Nunez-Iglesias

  • Justin Terry

  • Lars Grüter

  • Leengit

  • leGIT-bot

  • Marianne Corvellec

  • Mark Harfouche

  • Marvin Albert

  • mellertd

  • Miguel de la Varga

  • Riadh Fezzani

  • robroooh

  • SamirNasibli

  • Stefan van der Walt

  • Timothy Sweetser

  • Tony Tung

  • Uwe Schmidt

  • VolkerH

  • Xiaoyu Wu

  • Zhōu Bówēi 周伯威

其他 Pull Request#

  • [WIP] DOC 更改 plot_glcm 中的文檔 (#2789)

  • 在圖庫中加入 tophat 的文檔 (#3609)

  • 針對 regionprops 的布林圖像提供更詳細的錯誤訊息 (#4156)

  • 重構/修復 threshold_multiotsu (#4178)

  • 將產生的 API 文件按字母順序排序 (#4208)

  • 修復 Travis CI 中隨機的 Linux 建置失敗 (#4227)

  • 初始化 scipy.sparse.linalg.eigsh 的起始向量,以確保 graph_cut 中的可重複性 (#4251)

  • 新增直方圖匹配測試 (#4254)

  • MAINT: 使用 SciPy 實現的卷積方法 (#4267)

  • 改善 SKIP 呈現的 CSS (#4271)

  • 在複製按鈕旁邊的文檔字串範例中新增切換提示的功能 (#4273)

  • 圖庫中 glcm 範例的緊湊佈局 (#4285)

  • 向前移植 0.16.2 版本說明 (#4290)

  • 修復 hog 文檔字串中的錯字 (#4302)

  • 金字塔函數採用 preserve_range kwarg (#4310)

  • 建立測試並修復類型 (#4311)

  • 棄用 numpy.pad 包裝 (#4313)

  • 在核心貢獻者指南中闡明合併策略 (#4315)

  • Regionprops 為空錯誤 (#4316)

  • 新增檢查以避免導入崩潰 (#4319)

  • 修復 simple_metrics 文檔字串中的錯字 (#4323)

  • 使 peak_local_max 的 exclude_border 獨立且異向 (#4325)

  • 修復 blob_log/blob_dog 及其對應的測試 (#4327)

  • 在核心開發指南中新增關於關閉問題的章節 (#4328)

  • 如果提供,則使用高斯濾波器輸出陣列 (#4329)

  • 將 Cython pinning 向前移動 (#4330)

  • 將 Python 3.8 新增至建置矩陣 (#4331)

  • 避免從 SciPy 導入數學函數(如指示的那樣);) (#4332)

  • 為區塊縮減新增 dtype 關鍵字參數和小文檔變更 (#4334)

  • 在 fast_exp 中明確使用 32 位元整數 (#4338)

  • 修復 slic 中單精度強制轉換為雙精度的問題 (#4339)

  • 更改 measure.block_reduce 以接受明確的 func_kwargs kwd (#4341)

  • 修復 equalize_adapthist 邊界偽影 (#4349)

  • 使 hough_circle_peaks 遵循 min_xdistance 和 min_ydistance (#4350)

  • 棄用 CONTRIBUTORS.txt 並以 git shortlog 命令取代 (#4351)

  • 如果讀取 MPO 圖像,則新增關於 Pillow 版本的警告 (#4354)

  • measure.block_reduce 中的小文檔改進 (#4355)

  • 新增範例以突顯 regionprops_table (#4356)

  • 從 setup.py 中移除嘗試避免升級大型依賴項的程式碼 (#4362)

  • 修復立方插值中的 float32 提升 (#4363)

  • 更新產生 Sphinx 搜尋方塊的新方法 (#4367)

  • 澄清 register_translation 範例說明 (#4368)

  • 將 SciPy 最低版本提升至 1.0.1 (#4372)

  • 透過略過使用 NumPy 1.18.0 進行建置來修復 OSX 建置 (#4376)

  • 將 pywavelets 提升至 0.5.2 (#4377)

  • API 文件中也適用於類別的迷你圖庫 (#4381)

  • 圖庫:修復錯字 + 將角度縮小到合理的值 (#4386)

  • setup:從 README 讀取長描述 (#4392)

  • 不依賴測試執行順序來取得成功 (#4393)

  • _adapthist 模組重構和記憶體使用量減少 (#4395)

  • 針對轉換(rescale、warp_polar)的文檔修復 (#4401)

  • DOC: 指定 ransac 公式中 m 的含義 (#4404)

  • 更新核心開發人員指南中值的連結 (#4405)

  • 修復 subtract_mean 下溢校正 (#4409)

  • 修復 Azure 中掛起的文檔建置 (#4411)

  • 修復關於無效跳脫序列的警告。 (#4414)

  • 修復 skimage.transform.pyramids 中的 URL (#4415)

  • 修復 profile_line 插值錯誤 (#4416)

  • MAINT: 將 circle_level_set 取代為 disk_level_set (#4421)

  • 在 skimage.measure.marching_cubes 中的棄用警告新增 stacklevel=2 (#4422)

  • 棄用 rank.tophat 和 rank.bottomhat (#4423)

  • 新增 gray2rgba 並棄用 gray2rgb 中的 RGBA 支援 (#4424)

  • ISSUE_TEMPLATE:新增關於 image.sc 論壇的說明 (#4429)

  • 修復 skips.1-governance 中的連結 (#4432)

  • 修復 skimage.feature.canny 中的失效連結 (#4433)

  • 修復 canny 中 use_quantiles 的行為 (#4437)

  • 移除 Canny 中多餘的臨界值檢查 (#4441)

  • 高斯函數的差異 (#4445)

  • 修復 denoise_tv_bregman 測試,該測試接受 float32 和 float64 作為輸入 (#4448)

  • 標準化文檔字串中的冒號使用方式 (#4449)

  • 將 NumPy 版本提升至 1.15.1 (#4452)

  • 設定最低 tifffile 版本以修復 NumPy 不相容問題 (#4453)

  • 清除關於 denoise_wavelet 的警告 (#4456)

  • 在 reginoprops 中解決 NumPy 子類型檢查的 FutureWarning (#4457)

  • 略過警告模組中 doctest 的警告 (#4458)

  • 略過已棄用函數 rank.tophat rank.bottomhat 的 doctest,因為它們會發出警告 (#4459)

  • 略過 morphology.watershed doctest,因為它已移動且會發出警告 (#4460)

  • 在推斷 rgb 種類時直接使用 rgba2rgb (#4461)

  • 清除角落峰值警告 (#4463)

  • 修復 segmentation.relabel_sequential 中的邊緣案例錯誤 (#4465)

  • 修復 deltaE cmc 顏色錯誤 (#4469)

  • 修復布林陣列 warping (#4470)

  • 修復布林陣列 profile_line (#4471)

  • 修復治理中的值連結 (#4472)

  • 改善關於濾鏡的範例 (#4479)

  • 縮短非局部均值測試的執行時間 (#4480)

  • 新增贊助按鈕 (#4481)

  • 縮短最長測試的持續時間 (#4487)

  • 微幅改善 Haar 特徵範例 (#4490)

  • 新增 sphinx-gallery >= 0.3.1 的最低版本,以使用 py3.8 (#4498)

  • 修復 find_contours 中的 KeyError (#4505)

  • 修復使用 imageio 外掛程式儲存布林陣列的問題 (#4512)

  • 修復 skimage/color/colorconv 文檔字串中元素的順序 (#4518)

  • 修復 clip_limit == 1 時 exposure_adapthist 的傳回值 (#4519)

  • 新增關於 Windows 上 venv 啟用的資訊 (#4521)

  • 修復相似轉換比例 (#4524)

  • segmentation/plot_label.py 的範例中新增解釋,以使背景透明 (#4527)

  • 新增用於產生結構元素的範例程式碼。 (#4528)

  • 由於建置失敗而封鎖 imread 版本 0.7.2 (#4529)

  • Maint:編輯以抑制某些警告(未使用的匯入、空白行)(#4530)

  • MNT: 移除重複的 nogil 規格 (#4546)

  • 封鎖 Pillow 7.1.0,請參閱 #4548 (#4551)

  • 修復綁定程式需求 (#4555)

  • 在 skimage.data 中不強制使用 pil 外掛程式 (#4560)

  • 移除 Github 範本中的「回溯至 0.14」 (#4561)

  • 修復文檔字串中的不一致之處(filters.median)(#4562)

  • 作為暫時解決方案,在 travis-mac 中停用 texlive 的金鑰檢查 (#4565)

  • 將 Pywavelets 的最低需求提升至 1.1.1 (#4568)

  • 在 Sphinx 3.0.0 中去除反斜線 (#4569)

  • 從 match_descriptors 文檔字串中移除二進位規格 (#4571)

  • 移除以 tf 匯入 skimage.transform 的方式 (#4576)

  • 當 numpydoc 修補後,在文檔設定中新增移除選項的說明 (#4578)

  • 更新 TODO.txt 中的任務 (#4579)

  • 將 convert 重新命名為 _convert,因為它是私有函數 (#4590)

  • 不要在 plot_skeleton.py 中覆寫資料模組 (#4591)

  • [CI 修復] 在匯入 NumPy 的 Cython 檔案中新增 import_array (#4592)

  • 在貢獻指南中建議使用 cnp.import_array (#4593)

  • 在文檔中新增 natsort 用法的範例 (#4599)

  • 修復損壞和永久移動的連結 (#4600)

  • 修復 Cython import_array 中的錯字 (#4602)

  • 更新 sphinx-copybutton 的最低需求 Sphinx 版本 (#4604)

  • 當 montaging 多通道 nD 影像且 multichannel=False 時,澄清錯誤訊息 (#4607)

  • 修復 register_translation 警告訊息 (#4609)

  • 在 marching_cube_* 和 gray2rgb 中加入關於棄用警告的註釋 (#4610)

  • 透過縮減縮圖尺寸來提升我們圖庫的載入速度 (#4613)

  • 修正了 exposure.rescale_intensity 在常數輸入時的錯誤行為。 (#4615)

  • 變更文件字串中的數學格式 (#4617)

  • 將 .mypy_cache 加入 .gitignore (#4620)

  • 修正註冊旋轉圖庫範例中的錯字 (#4623)

  • 使用者指南:加入視覺化章節 (#4627)

  • 修正因無效跳脫序列導致的棄用警告。 (#4628)

  • 為 moments_hu 和 centroid 加入文件字串範例 (#4632)

  • 使用新的檔案位置更新 pooch 註冊表 (#4635)

  • montage 中誤導性的 “ValueError: Input array has to be either 3- or 4-dimensional” 錯誤訊息 (#4638)

  • 修正損壞的連結 (#4639)

  • AffineTransform:允許單一的 ‘scale’ 值同時應用於 sx 和 sy (#4642)

  • 修正 CI - cython 3.0a4 (#4643)

  • 修正 sphinx (#4644)

  • 修正 ArrayMap 測試 (#4645)

  • 移除 tifffile 的副本;從 pip 安裝 (#4235)

  • 重構/移動形態學中的鄰域工具函數 (#4209)