當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。