scipy.ndimage.
extrema#
- scipy.ndimage.extrema(input, labels=None, index=None)[source]#
计算数组中标签处值的最小值和最大值,以及它们的位置。
- 参数:
- inputndarray
要处理的 N 维图像数据。
- labelsndarray, 可选
输入中特征的标签。如果非 None,必须与 input 的形状相同。
- indexint 或 int 序列,可选
要包含在输出中的标签。如果为 None(默认值),将使用所有非零 labels 值。
- 返回值:
- minimums, maximumsint 或 ndarray
每个特征中最小值和最大值的值。
- min_positions, max_positions元组或元组列表
每个元组给出相应最小值或最大值的 N 维坐标。
示例
>>> import numpy as np >>> a = np.array([[1, 2, 0, 0], ... [5, 3, 0, 4], ... [0, 0, 0, 7], ... [9, 3, 0, 0]]) >>> from scipy import ndimage >>> ndimage.extrema(a) (0, 9, (0, 2), (3, 0))
要处理的特征可以使用 labels 和 index 指定
>>> lbl, nlbl = ndimage.label(a) >>> ndimage.extrema(a, lbl, index=np.arange(1, nlbl+1)) (array([1, 4, 3]), array([5, 7, 9]), [(0, 0), (1, 3), (3, 1)], [(1, 0), (2, 3), (3, 0)])
如果没有给出索引,则处理非零 labels
>>> ndimage.extrema(a, lbl) (1, 9, (0, 0), (3, 0))