DIPlib Documentation - ©1995-2015 Quantitative Imaging Group, Delft University of Technology.

# Maxima

Detects local maxima

## SYNOPSIS

`#include "dip_filtering.h"`

dip_Error dip_Maxima ( in, mask, out, connectivity, booleanOutput )

## DATA TYPES

integer, float

## FUNCTION

This function detects local maxima.

The algorithm finds a connected set of pixels with identical value, an no neighbours with higher value. This set is a local maximum and its pixels are set to 1 in the output image. If `booleanOutput` is false, the output image is a labelled image.

For images that have large plateaus (regions of constant value) that are not local maxima, this function can be quite slow. For example, an image that is zero everywhere except for a small peak somewhere. For such an image it is recommended to use the `mask` input, for example with the output of a threshold operation.

## ARGUMENTS

Data type | Name | Description
`dip_Image` | `in` | Input image
`dip_Image` | `mask` | Mask image
`dip_Image` | `out` | Binary output image
`dip_int` | `connectivity` | Connectivity
`dip_Boolean` | `booleanOutput` | Give a binary output image?

## NOTE

If you are looking for the old version of `Maxima`, it is still available through the following combination of commands:

       dip_Dilation( in, out, se, boundary, param, shape );
       dip_Equal( in, out, out );

## SEE ALSO

`Minima`, `SubpixelMaxima`, `LocalMinima`, `SeededWatershed`, `GrowRegions`