scipy.ndimage.measurements.minimum(input, labels=None, index=None)[source]

Calculate the minimum of the values of an array over labeled regions.


input : array_like

Array_like of values. For each region specified by labels, the minimal values of input over the region is computed.

labels : array_like, optional

An array_like of integers marking different regions over which the minimum value of input is to be computed. labels must have the same shape as input. If labels is not specified, the minimum over the whole array is returned.

index : array_like, optional

A list of region labels that are taken into account for computing the minima. If index is None, the minimum over all elements where labels is non-zero is returned.


minimum : float or list of floats

List of minima of input over the regions determined by labels and whose index is in index. If index or labels are not specified, a float is returned: the minimal value of input if labels is None, and the minimal value of elements where labels is greater than zero if index is None.


The function returns a Python list and not a Numpy array, use np.array to convert the list to an array.


>>> a = np.array([[1, 2, 0, 0],
...               [5, 3, 0, 4],
...               [0, 0, 0, 7],
...               [9, 3, 0, 0]])
>>> labels, labels_nb = ndimage.label(a)
>>> labels
array([[1, 1, 0, 0],
       [1, 1, 0, 2],
       [0, 0, 0, 2],
       [3, 3, 0, 0]])
>>> ndimage.minimum(a, labels=labels, index=np.arange(1, labels_nb + 1))
[1.0, 4.0, 3.0]
>>> ndimage.minimum(a)
>>> ndimage.minimum(a, labels=labels)