bundles / scipy 1.17.1 / scipy / ndimage / _measurements / maximum
function
scipy.ndimage._measurements:maximum
Signature
def maximum ( input , labels = None , index = None ) Summary
Calculate the maximum of the values of an array over labeled regions.
Parameters
input: array_likeArray_like of values. For each region specified by
labels, the maximal values ofinputover the region is computed.labels: array_like, optionalAn array of integers marking different regions over which the maximum value of
inputis to be computed.labelsmust have the same shape asinput. Iflabelsis not specified, the maximum over the whole array is returned.index: array_like, optionalA list of region labels that are taken into account for computing the maxima. If index is None, the maximum over all elements where
labelsis non-zero is returned.
Returns
output: a scalar or list of integers or floats based on input type.List of maxima of
inputover the regions determined bylabelsand whose index is inindex. Ifindexorlabelsare not specified, a float is returned: the maximal value ofinputiflabelsis None, and the maximal value of elements wherelabelsis greater than zero ifindexis None.
Notes
The function returns a Python list and not a NumPy array, use np.array to convert the list to an array.
Array API Standard Support
maximum has experimental support for Python Array API Standard compatible backends in addition to NumPy. Please consider testing these features by setting an environment variable SCIPY_ARRAY_API=1 and providing CuPy, PyTorch, JAX, or Dask arrays as array arguments. The following combinations of backend and device (or other capability) are supported.
==================== ==================== ==================== Library CPU GPU ==================== ==================== ==================== NumPy ✅ n/a CuPy n/a ✅ PyTorch ✅ ⛔ JAX ⚠️ no JIT ⛔ Dask ⚠️ computes graph n/a ==================== ==================== ====================
See
dev-arrayapifor more information.
Examples
import numpy as np a = np.arange(16).reshape((4,4)) a labels = np.zeros_like(a) labels[:2,:2] = 1 labels[2:, 1:3] = 2 labels from scipy import ndimage✓
ndimage.maximum(a) ndimage.maximum(a, labels=labels, index=[1,2]) ndimage.maximum(a, labels=labels)✗
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✓
ndimage.maximum(b, labels=labels, index=np.arange(1, labels_nb + 1))
✗See also
- extrema
- label
- maximum_position
- mean
- median
- minimum
- standard_deviation
- sum
- variance
Aliases
-
scipy.ndimage.maximum