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


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


用法:

cucim.skimage.filters.threshold_niblack(image, window_size=15, k=0.2)

将 Niblack 局部阈值应用于数组。

使用以下公式为图像中的每个像素计算阈值 T:

T = m(x,y) - k * s(x,y)

其中 m(x,y) 和 s(x,y) 是像素 (x,y) 邻域的均值和标准差,该邻域由以像素为中心的大小为 w 乘以 w 的矩形窗口定义。 k 是一个可配置的参数,它对标准偏差的影响进行加权。

参数

imagendarray

输入图像。

window_sizeint,或 int 的可迭代,可选

窗口大小指定为单个奇整数 (3, 5, 7, ...),或长度为 image.ndim 的仅包含奇整数的迭代(例如 (1, 5, 5) )。

k浮点数,可选

阈值公式中参数 k 的值。

返回

threshold(N, M) ndarray

阈值掩码。强度高于此值的所有像素都被假定为前景。

注意

该算法最初是为文本识别而设计的。

Bradley 阈值是 Niblack 阈值的一个特例,相当于

>>> from skimage import data
>>> image = data.page()
>>> q = 1
>>> threshold_image = threshold_niblack(image, k=0) * q

对于某些值 q 。默认情况下,Bradley 和 Roth 使用 q=1

参考

1

W. Niblack, An introduction to Digital Image Processing, Prentice-Hall, 1986.

2

D. Bradley and G. Roth, “Adaptive thresholding using Integral Image”, Journal of Graphics Tools 12(2), pp. 13-21, 2007. DOI:10.1080/2151237X.2007.10129236

例子

>>> from skimage import data
>>> image = data.page()
>>> threshold_image = threshold_niblack(image, window_size=7, k=0.1)

相关用法


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