当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python cucim.skimage.filters.threshold_isodata用法及代码示例


用法:

cucim.skimage.filters.threshold_isodata(image=None, nbins=256, return_all=False, *, hist=None)

根据 ISODATA 方法返回阈值。

基于直方图的阈值,称为Ridler-Calvard 方法或inter-means。返回的阈值满足以下等式:

threshold = (image[image <= threshold].mean() +
             image[image > threshold].mean()) / 2.0

也就是说,返回的阈值是将图像分成两组像素的强度,其中阈值强度介于这些组的平均强度之间。

对于整数图像,上述等式在 1 以内成立;对于浮点图像,等式在直方图bin-width 中成立。

必须提供图像或历史记录。如果给出 hist,则忽略图像的实际直方图。

参数

image(N, M) ndarray,可选

输入图像。

nbins整数,可选

用于计算直方图的 bin 数量。对于整数数组,此值将被忽略。

return_all布尔型,可选

如果为 False(默认),则仅返回满足上述等式的最低阈值。如果为 True,则返回所有有效阈值。

hist数组,或数组的 2 元组,可选

用于确定阈值的直方图和相应的 bin 中心强度数组。或者,只能通过直方图。

返回

threshold浮点数或整数或数组

阈值。

参考

1

Ridler, TW & Calvard, S (1978), “Picture thresholding using an iterative selection method” IEEE Transactions on Systems, Man and Cybernetics 8: 630-632, DOI:10.1109/TSMC.1978.4310039

2

Sezgin M. and Sankur B. (2004) “Survey over Image Thresholding Techniques and Quantitative Performance Evaluation” Journal of Electronic Imaging, 13(1): 146-165, http://www.busim.ee.boun.edu.tr/~sankur/SankurFolder/Threshold_survey.pdf DOI:10.1117/1.1631315

3

ImageJ AutoThresholder code, http://fiji.sc/wiki/index.php/Auto_Threshold

例子

>>> from skimage.data import coins
>>> image = coins()
>>> thresh = threshold_isodata(image)
>>> binary = image > thresh

相关用法


注:本文由纯净天空筛选整理自rapids.ai大神的英文原创作品 cucim.skimage.filters.threshold_isodata。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。