code: def maximum(input, labels=None, index=None):
      """
      Calculate the maximum of the values of an array over labeled regions.
  
      Parameters
      ----------
      input : array_like
          Array_like of values. For each region specified by `labels`, the
          maximal values of `input` over the region is computed.
      labels : array_like, optional
          An array of integers marking different regions over which the
          maximum value of `input` is to be computed. `labels` must have the
          same shape as `input`. If `labels` is not specified, the maximum
          over the whole array is returned.
      index : array_like, optional
          A list of region labels that are taken into account for computing the
          maxima. If index is None, the maximum over all elements where `labels`
          is non-zero is returned.
  
      Returns
      -------
      output : float or list of floats
          List of maxima 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 maximal value of `input` if `labels` is None,
          and the maximal value of elements where `labels` is greater than zero
          if `index` is None.
  
      See Also
      --------
      label, minimum, median, maximum_position, extrema, sum, mean, variance,
      standard_deviation
  
      Notes
      -----
      The function returns a Python list and not a NumPy array, use
      `np.array` to convert the list to an array.
  
      Examples
      --------
      >>> 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]
  
      """
      return _select(input, labels, index, find_max=True)[0]
  
imports: import numpy
  import numpy
  from .None import _ni_support
  from .None import _ni_label
  from .None import _nd_image
  from .None import _morphology
label_desc: Use image node_id 14 for calling a global function with example usage: maximum(input, labels, index) and returns: _select