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


Python skimage.morphology.remove_small_objects用法及代码示例


用法:

skimage.morphology.remove_small_objects(ar, min_size=64, connectivity=1, in_place=False, *, out=None)

移除小于指定大小的对象。

期望 ar 是一个带有标签对象的数组,并删除小于 min_size 的对象。如果 ar 是 bool,则首先标记图像。这导致 bool 和 0 和 1 数组的行为可能不同。

参数

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

包含感兴趣对象的数组。如果数组类型是int,则整数必须为非负数。

min_sizeint 可选(默认值:64)

允许的最小对象大小。

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

定义像素邻域的连通性。如果 ar 为 bool,则在标记期间使用。

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

如果True,删除输入数组本身中的对象。否则,请制作副本。自 0.19 版起已弃用。请用out反而。

outndarray

与 ar 形状相同的数组,其中放置输出。默认情况下,会创建一个新数组。

返回

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

删除了小连接组件的输入数组。

抛出

TypeError

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

ValueError

如果输入数组包含负值。

例子

>>> from skimage import morphology
>>> a = np.array([[0, 0, 0, 1, 0],
...               [1, 1, 1, 0, 0],
...               [1, 1, 1, 0, 1]], bool)
>>> b = morphology.remove_small_objects(a, 6)
>>> b
array([[False, False, False, False, False],
       [ True,  True,  True, False, False],
       [ True,  True,  True, False, False]])
>>> c = morphology.remove_small_objects(a, 7, connectivity=2)
>>> c
array([[False, False, False,  True, False],
       [ True,  True,  True, False, False],
       [ True,  True,  True, False, False]])
>>> d = morphology.remove_small_objects(a, 6, out=a)
>>> d is a
True

相关用法


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