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


Python cucim.skimage.morphology.remove_small_holes用法及代码示例


用法:

cucim.skimage.morphology.remove_small_holes(ar, area_threshold=64, connectivity=1, in_place=False)

删除小于指定尺寸的连续孔。

参数

arndarray(任意形状,int 或 bool 类型)

包含感兴趣的连接组件的数组。

area_thresholdint,可选(默认值:64)

将被填充的连续孔的最大面积(以像素为单位)。替换 min_size

connectivityint, {1, 2, ..., ar.ndim},可选(默认值:1)

定义像素邻域的连通性。

in_place布尔值,可选(默认值:False)

如果 True ,删除输入数组本身中的连接组件。否则,请制作副本。

返回

outndarray,与输入相同的形状和类型ar

已移除连接组件内带有小孔的输入数组。

抛出

TypeError

如果输入数组的类型无效,例如浮点数或字符串。

ValueError

如果输入数组包含负值。

注意

如果数组类型是 int,则假定它包含 already-labeled 个对象。标签不保留在输出图像中(此函数始终输出布尔图像)。建议使用该函数后完成贴标。

例子

>>> import cupy as cp
>>> from cucim.skimage import morphology
>>> a = cp.array([[1, 1, 1, 1, 1, 0],
...               [1, 1, 1, 0, 1, 0],
...               [1, 0, 0, 1, 1, 0],
...               [1, 1, 1, 1, 1, 0]], bool)
>>> b = morphology.remove_small_holes(a, 2)
>>> b
array([[ True,  True,  True,  True,  True, False],
       [ True,  True,  True,  True,  True, False],
       [ True, False, False,  True,  True, False],
       [ True,  True,  True,  True,  True, False]])
>>> c = morphology.remove_small_holes(a, 2, connectivity=2)
>>> c
array([[ True,  True,  True,  True,  True, False],
       [ True,  True,  True, False,  True, False],
       [ True, False, False,  True,  True, False],
       [ True,  True,  True,  True,  True, False]])
>>> d = morphology.remove_small_holes(a, 2, in_place=True)
>>> d is a
True

相关用法


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