Class MinimaAndMaxima

java.lang.Object
inra.ijpb.morphology.MinimaAndMaxima

public class MinimaAndMaxima
extends java.lang.Object
A collection of static methods for computing regional and extended minima and maxima. Regional extrema algorithms are based on flood-filling-like algorithms, whereas extended extrema and extrema imposition algorithms use geodesic reconstruction algorithm. See the books of Serra and Soille for further details.

Example of use:


        // Get current image processor
        ImageProcessor image = IJ.getImage().getProcessor();
        // Computes extended minima with a dynamic of 15, using the 4-connectivity
        ImageProcessor minima = MinimaAndMaxima.extendedMinima(image, 15, 4); 
        // Display result in a new imagePlus
        ImagePlus res = new ImagePlus("Minima", minima);
        res.show(); 
 
Author:
David Legland
See Also:
GeodesicReconstruction
  • Method Summary

    Modifier and Type Method Description
    static ij.process.ImageProcessor extendedMaxima​(ij.process.ImageProcessor image, double dynamic)
    Computes the extended maxima in grayscale image image, keeping maxima with the specified dynamic, and using the default connectivity.
    static ij.process.ImageProcessor extendedMaxima​(ij.process.ImageProcessor image, double dynamic, int conn)
    Computes the extended maxima in grayscale image image, keeping maxima with the specified dynamic, and using the specified connectivity.
    static ij.process.ImageProcessor extendedMinima​(ij.process.ImageProcessor image, double dynamic)
    Computes the extended minima in grayscale image image, keeping minima with the specified dynamic, and using the default connectivity.
    static ij.process.ImageProcessor extendedMinima​(ij.process.ImageProcessor image, double dynamic, int conn)
    Computes the extended minima in grayscale image image, keeping minima with the specified dynamic, and using the specified connectivity.
    static ij.process.ImageProcessor imposeMaxima​(ij.process.ImageProcessor image, ij.process.ImageProcessor maxima)
    Imposes the maxima given by marker image into the input image, using the default connectivity.
    static ij.process.ImageProcessor imposeMaxima​(ij.process.ImageProcessor image, ij.process.ImageProcessor maxima, int conn)
    Imposes the maxima given by marker image into the input image, using the specified connectivity.
    static ij.process.ImageProcessor imposeMinima​(ij.process.ImageProcessor image, ij.process.ImageProcessor minima)
    Imposes the minima given by marker image into the input image, using the default connectivity.
    static ij.process.ImageProcessor imposeMinima​(ij.process.ImageProcessor image, ij.process.ImageProcessor minima, int conn)
    Imposes the minima given by marker image into the input image, using the specified connectivity.
    static ij.process.ImageProcessor regionalMaxima​(ij.process.ImageProcessor image)
    Computes the regional maxima in grayscale image image, using the default connectivity.
    static ij.process.ImageProcessor regionalMaxima​(ij.process.ImageProcessor image, int conn)
    Computes the regional maxima in grayscale image image, using the specified connectivity.
    static ij.process.ImageProcessor regionalMaximaByReconstruction​(ij.process.ImageProcessor image, int conn)
    Computes the regional maxima in grayscale image image, using the specified connectivity, and a slower algorithm (used for testing).
    static ij.process.ImageProcessor regionalMinima​(ij.process.ImageProcessor image)
    Computes the regional minima in grayscale image image, using the default connectivity.
    static ij.process.ImageProcessor regionalMinima​(ij.process.ImageProcessor image, int conn)
    Computes the regional minima in grayscale image image, using the specified connectivity.
    static ij.process.ImageProcessor regionalMinimaByReconstruction​(ij.process.ImageProcessor image, int conn)
    Computes the regional minima in grayscale image image, using the specified connectivity, and a slower algorithm (used for testing).

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • regionalMaxima

      public static final ij.process.ImageProcessor regionalMaxima​(ij.process.ImageProcessor image)
      Computes the regional maxima in grayscale image image, using the default connectivity.
      Parameters:
      image - the image to process
      Returns:
      the regional maxima of input image
    • regionalMaxima

      public static final ij.process.ImageProcessor regionalMaxima​(ij.process.ImageProcessor image, int conn)
      Computes the regional maxima in grayscale image image, using the specified connectivity.
      Parameters:
      image - the image to process
      conn - the connectivity for maxima, that should be either 4 or 8
      Returns:
      the regional maxima of input image
    • regionalMaximaByReconstruction

      public static final ij.process.ImageProcessor regionalMaximaByReconstruction​(ij.process.ImageProcessor image, int conn)
      Computes the regional maxima in grayscale image image, using the specified connectivity, and a slower algorithm (used for testing).
      Parameters:
      image - the image to process
      conn - the connectivity for maxima, that should be either 4 or 8
      Returns:
      the regional maxima of input image
    • regionalMinima

      public static final ij.process.ImageProcessor regionalMinima​(ij.process.ImageProcessor image)
      Computes the regional minima in grayscale image image, using the default connectivity.
      Parameters:
      image - the image to process
      Returns:
      the regional minima of input image
    • regionalMinima

      public static final ij.process.ImageProcessor regionalMinima​(ij.process.ImageProcessor image, int conn)
      Computes the regional minima in grayscale image image, using the specified connectivity.
      Parameters:
      image - the image to process
      conn - the connectivity for minima, that should be either 4 or 8
      Returns:
      the regional minima of input image
    • regionalMinimaByReconstruction

      public static final ij.process.ImageProcessor regionalMinimaByReconstruction​(ij.process.ImageProcessor image, int conn)
      Computes the regional minima in grayscale image image, using the specified connectivity, and a slower algorithm (used for testing).
      Parameters:
      image - the image to process
      conn - the connectivity for minima, that should be either 4 or 8
      Returns:
      the regional minima of input image
    • extendedMaxima

      public static final ij.process.ImageProcessor extendedMaxima​(ij.process.ImageProcessor image, double dynamic)
      Computes the extended maxima in grayscale image image, keeping maxima with the specified dynamic, and using the default connectivity.
      Parameters:
      image - the image to process
      dynamic - the minimal difference between a maxima and its boundary
      Returns:
      the extended maxima of input image
    • extendedMaxima

      public static final ij.process.ImageProcessor extendedMaxima​(ij.process.ImageProcessor image, double dynamic, int conn)
      Computes the extended maxima in grayscale image image, keeping maxima with the specified dynamic, and using the specified connectivity.
      Parameters:
      image - the image to process
      dynamic - the minimal difference between a maxima and its boundary
      conn - the connectivity for maxima, that should be either 4 or 8
      Returns:
      the extended maxima of input image
    • extendedMinima

      public static final ij.process.ImageProcessor extendedMinima​(ij.process.ImageProcessor image, double dynamic)
      Computes the extended minima in grayscale image image, keeping minima with the specified dynamic, and using the default connectivity.
      Parameters:
      image - the image to process
      dynamic - the minimal difference between a minima and its boundary
      Returns:
      the extended minima of input image
    • extendedMinima

      public static final ij.process.ImageProcessor extendedMinima​(ij.process.ImageProcessor image, double dynamic, int conn)
      Computes the extended minima in grayscale image image, keeping minima with the specified dynamic, and using the specified connectivity.
      Parameters:
      image - the image to process
      dynamic - the minimal difference between a minima and its boundary
      conn - the connectivity for minima, that should be either 4 or 8
      Returns:
      the extended minima of input image
    • imposeMaxima

      public static final ij.process.ImageProcessor imposeMaxima​(ij.process.ImageProcessor image, ij.process.ImageProcessor maxima)
      Imposes the maxima given by marker image into the input image, using the default connectivity.
      Parameters:
      image - the image to process
      maxima - a binary image of maxima
      Returns:
      the result of maxima imposition
    • imposeMaxima

      public static final ij.process.ImageProcessor imposeMaxima​(ij.process.ImageProcessor image, ij.process.ImageProcessor maxima, int conn)
      Imposes the maxima given by marker image into the input image, using the specified connectivity.
      Parameters:
      image - the image to process
      maxima - a binary image of maxima
      conn - the connectivity for maxima, that should be either 4 or 8
      Returns:
      the result of maxima imposition
    • imposeMinima

      public static final ij.process.ImageProcessor imposeMinima​(ij.process.ImageProcessor image, ij.process.ImageProcessor minima)
      Imposes the minima given by marker image into the input image, using the default connectivity.
      Parameters:
      image - the image to process
      minima - a binary image of minima
      Returns:
      the result of minima imposition
    • imposeMinima

      public static final ij.process.ImageProcessor imposeMinima​(ij.process.ImageProcessor image, ij.process.ImageProcessor minima, int conn)
      Imposes the minima given by marker image into the input image, using the specified connectivity.
      Parameters:
      image - the image to process
      minima - a binary image of minima
      conn - the connectivity for minima, that should be either 4 or 8
      Returns:
      the result of minima imposition