本文简要介绍 python 语言中 scipy.ndimage.binary_closing
的用法。
用法:
scipy.ndimage.binary_closing(input, structure=None, iterations=1, output=None, origin=0, mask=None, border_value=0, brute_force=False)#
与给定结构元素的多维二进制关闭。
结构元素对输入图像的闭合是结构元素对图像膨胀的侵蚀。
- input: array_like
二进制数组 被关闭。非零 (True) 元素构成要关闭的子集。
- structure: 数组,可选
用于关闭的结构元素。非零元素被认为是 True。如果没有提供结构元素,则生成一个正方形连通性等于 1 的元素(即,只有最近的邻居连接到中心,diagonally-connected 元素不被视为邻居)。
- iterations: 整数,可选
闭合的膨胀步骤,然后是腐蚀步骤,每次重复迭代次数(默认为一次)。如果迭代次数小于 1,则重复每个操作,直到结果不再变化。只接受整数次迭代。
- output: ndarray,可选
与输入形状相同的数组,其中放置输出。默认情况下,会创建一个新数组。
- origin: int 或整数元组,可选
过滤器的位置,默认为 0。
- mask: 数组,可选
如果给定掩码,则每次迭代时仅修改在相应掩码元素处具有 True 值的那些元素。
- border_value: int(强制转换为 0 或 1),可选
输出数组中边界处的值。
- brute_force: 布尔值,可选
memory 条件:如果为False,则只跟踪上次迭代中值发生变化的像素作为本次迭代更新的候选;如果真正的 al 像素被认为是更新的候选者,则不管前一次迭代中发生了什么。默认为假。
- binary_closing: 布尔数组
通过结构元素关闭输入。
参数 ::
返回 ::
注意:
结束 [1]是数学形态学运算[2]这包括具有相同结构元素的输入的连续膨胀和腐蚀。因此,闭合会填充小于结构元素的孔。
和...一起开幕(scipy.ndimage.binary_opening),关闭可用于消除噪音。
参考:
例子:
>>> from scipy import ndimage >>> import numpy as np >>> a = np.zeros((5,5), dtype=int) >>> a[1:-1, 1:-1] = 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]]) >>> # Closing removes small holes >>> ndimage.binary_closing(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]]) >>> # Closing is the erosion of the dilation of the input >>> ndimage.binary_dilation(a).astype(int) array([[0, 1, 1, 1, 0], [1, 1, 1, 1, 1], [1, 1, 1, 1, 1], [1, 1, 1, 1, 1], [0, 1, 1, 1, 0]]) >>> ndimage.binary_erosion(ndimage.binary_dilation(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]])
>>> a = np.zeros((7,7), dtype=int) >>> a[1:6, 2:5] = 1; a[1:3,3] = 0 >>> a array([[0, 0, 0, 0, 0, 0, 0], [0, 0, 1, 0, 1, 0, 0], [0, 0, 1, 0, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0]]) >>> # In addition to removing holes, closing can also >>> # coarsen boundaries with fine hollows. >>> ndimage.binary_closing(a).astype(int) array([[0, 0, 0, 0, 0, 0, 0], [0, 0, 1, 0, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0]]) >>> ndimage.binary_closing(a, structure=np.ones((2,2))).astype(int) array([[0, 0, 0, 0, 0, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0]])
相关用法
- Python SciPy ndimage.binary_dilation用法及代码示例
- Python SciPy ndimage.binary_opening用法及代码示例
- Python SciPy ndimage.binary_fill_holes用法及代码示例
- Python SciPy ndimage.binary_hit_or_miss用法及代码示例
- Python SciPy ndimage.binary_erosion用法及代码示例
- Python SciPy ndimage.binary_propagation用法及代码示例
- Python SciPy ndimage.black_tophat用法及代码示例
- Python SciPy ndimage.correlate用法及代码示例
- Python SciPy ndimage.morphological_gradient用法及代码示例
- Python SciPy ndimage.variance用法及代码示例
- Python SciPy ndimage.correlate1d用法及代码示例
- Python SciPy ndimage.distance_transform_bf用法及代码示例
- Python SciPy ndimage.find_objects用法及代码示例
- Python SciPy ndimage.label用法及代码示例
- Python SciPy ndimage.maximum_filter1d用法及代码示例
- Python SciPy ndimage.iterate_structure用法及代码示例
- Python SciPy ndimage.map_coordinates()用法及代码示例
- Python SciPy ndimage.generic_laplace用法及代码示例
- Python SciPy ndimage.generate_binary_structure用法及代码示例
- Python SciPy ndimage.maximum_filter用法及代码示例
- Python SciPy ndimage.minimum_position用法及代码示例
- Python SciPy ndimage.labeled_comprehension用法及代码示例
- Python SciPy ndimage.grey_erosion用法及代码示例
- Python SciPy ndimage.spline_filter用法及代码示例
- Python SciPy ndimage.shift用法及代码示例
注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.ndimage.binary_closing。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。