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


Python SciPy ndimage.binary_fill_holes用法及代码示例


本文简要介绍 python 语言中 scipy.ndimage.binary_fill_holes 的用法。

用法:

scipy.ndimage.binary_fill_holes(input, structure=None, output=None, origin=0)#

填充二进制对象中的孔。

参数

input array_like

N-D 需要填充孔的二进制数组

structure 数组,可选

计算中使用的结构元素; large-size 元素使计算速度更快,但可能会遗漏被薄区域与背景隔开的孔。默认元素(方形连通性等于 1)产生直观的结果,其中输入中的所有孔都已被填充。

output ndarray,可选

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

origin int,整数元组,可选

结构元素的位置。

返回

out ndarray

已填充孔洞的初始图像输入的转换。

注意

此函数中使用的算法包括使用二进制膨胀从图像的外边界侵入输入中形状的互补性。孔不与边界相连,因此不会被侵入。结果是入侵区域的互补子集。

参考

例子

>>> from scipy import ndimage
>>> import numpy as np
>>> a = np.zeros((5, 5), dtype=int)
>>> a[1:4, 1:4] = 1
>>> a[2,2] = 0
>>> a
array([[0, 0, 0, 0, 0],
       [0, 1, 1, 1, 0],
       [0, 1, 0, 1, 0],
       [0, 1, 1, 1, 0],
       [0, 0, 0, 0, 0]])
>>> ndimage.binary_fill_holes(a).astype(int)
array([[0, 0, 0, 0, 0],
       [0, 1, 1, 1, 0],
       [0, 1, 1, 1, 0],
       [0, 1, 1, 1, 0],
       [0, 0, 0, 0, 0]])
>>> # Too big structuring element
>>> ndimage.binary_fill_holes(a, structure=np.ones((5,5))).astype(int)
array([[0, 0, 0, 0, 0],
       [0, 1, 1, 1, 0],
       [0, 1, 0, 1, 0],
       [0, 1, 1, 1, 0],
       [0, 0, 0, 0, 0]])

相关用法


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