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


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


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

用法:

scipy.ndimage.maximum(input, labels=None, index=None)#

计算标记区域上数组的最大值。

参数

input array_like

Array_like 值。对于标签指定的每个区域,计算该区域上输入的最大值。

labels 数组,可选

一个整数数组,标记要计算输入最大值的不同区域。标签必须与输入具有相同的形状。如果未指定标签,则返回整个数组的最大值。

index 数组,可选

计算最大值时考虑的区域标签列表。如果 index 为 None,则返回标签非零的所有元素的最大值。

返回

output 浮点数或浮点数列表

由标签确定且索引位于索引中的区域的输入最大值列表。如果未指定索引或标签,则返回浮点数:如果标签为 None,则返回输入的最大值;如果索引为 None,则返回 labels 大于零的元素的最大值。

注意

该函数返回一个 Python 列表,而不是 NumPy 数组,请使用 np.array 将列表转换为数组。

例子

>>> import numpy as np
>>> a = np.arange(16).reshape((4,4))
>>> a
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11],
       [12, 13, 14, 15]])
>>> labels = np.zeros_like(a)
>>> labels[:2,:2] = 1
>>> labels[2:, 1:3] = 2
>>> labels
array([[1, 1, 0, 0],
       [1, 1, 0, 0],
       [0, 2, 2, 0],
       [0, 2, 2, 0]])
>>> from scipy import ndimage
>>> ndimage.maximum(a)
15.0
>>> ndimage.maximum(a, labels=labels, index=[1,2])
[5.0, 14.0]
>>> ndimage.maximum(a, labels=labels)
14.0
>>> b = np.array([[1, 2, 0, 0],
...               [5, 3, 0, 4],
...               [0, 0, 0, 7],
...               [9, 3, 0, 0]])
>>> labels, labels_nb = ndimage.label(b)
>>> labels
array([[1, 1, 0, 0],
       [1, 1, 0, 2],
       [0, 0, 0, 2],
       [3, 3, 0, 0]])
>>> ndimage.maximum(b, labels=labels, index=np.arange(1, labels_nb + 1))
[5.0, 7.0, 9.0]

相关用法


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