ij.plugin.filter
Class EDM

java.lang.Object
  extended by ij.plugin.filter.EDM
All Implemented Interfaces:
PlugInFilter

public class EDM
extends java.lang.Object
implements PlugInFilter

This plugin implements the Euclidean Distance Map (EDM), Ultimate Eroded Points and Watershed commands in the Process/Binary submenu. Note: These functions do not take ROIs into account (any ROI gets deselected). setup is called with no argument for EDM, "points" for ultimate eroded points and "watershed" for watershed segmentation. Ultimate Eroded Points and Watershed are handled by the MaximumFinder plugin applied to the EDM version 09-Nov-2006 Michael Schmid


Field Summary
static int ONE
          unit in 16-bit EDM image: this value corresponds to a distance of one pixel
static int SQRT2
          in 16-bit EDM image this value corresponds to a pixel distance of sqrt(2)
static int SQRT5
          in 16-bit EDM image this value corresponds to a pixel distance of sqrt(2)
 
Fields inherited from interface ij.plugin.filter.PlugInFilter
DOES_16, DOES_32, DOES_8C, DOES_8G, DOES_ALL, DOES_RGB, DOES_STACKS, DONE, NO_CHANGES, NO_IMAGE_REQUIRED, NO_UNDO, ROI_REQUIRED, STACK_REQUIRED, SUPPORTS_MASKING
 
Constructor Summary
EDM()
           
 
Method Summary
 ShortProcessor make16bitEDM(ImageProcessor ip)
          Calculates a 16-bit grayscale Euclidean Distance Map for a binary 8-bit image.
 void run(ImageProcessor ip)
          Filters use this method to process the image.
 int setup(java.lang.String arg, ImagePlus imp)
          This method is called once when the filter is loaded.
 void toEDM(ImageProcessor ip)
          Converts a binary image into a 8-bit grayscale Euclidean Distance Map (EDM).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ONE

public static final int ONE
unit in 16-bit EDM image: this value corresponds to a distance of one pixel

See Also:
Constant Field Values

SQRT2

public static final int SQRT2
in 16-bit EDM image this value corresponds to a pixel distance of sqrt(2)

See Also:
Constant Field Values

SQRT5

public static final int SQRT5
in 16-bit EDM image this value corresponds to a pixel distance of sqrt(2)

See Also:
Constant Field Values
Constructor Detail

EDM

public EDM()
Method Detail

setup

public int setup(java.lang.String arg,
                 ImagePlus imp)
Description copied from interface: PlugInFilter
This method is called once when the filter is loaded. 'arg', which may be blank, is the argument specified for this plugin in IJ_Props.txt. 'imp' is the currently active image. This method should return a flag word that specifies the filters capabilities.

Specified by:
setup in interface PlugInFilter

run

public void run(ImageProcessor ip)
Description copied from interface: PlugInFilter
Filters use this method to process the image. If the SUPPORTS_STACKS flag was set, it is called for each slice in a stack. ImageJ will lock the image before calling this method and unlock it when the filter is finished.

Specified by:
run in interface PlugInFilter

toEDM

public void toEDM(ImageProcessor ip)
Converts a binary image into a 8-bit grayscale Euclidean Distance Map (EDM). Each foreground (zero) pixel in the binary image is assigned a value equal to its distance from the nearest background (255) pixel.


make16bitEDM

public ShortProcessor make16bitEDM(ImageProcessor ip)
Calculates a 16-bit grayscale Euclidean Distance Map for a binary 8-bit image. Each foreground (black) pixel in the binary image is assigned a value equal to its distance from the nearest background (white) pixel. Uses the two-pass EDM algorithm from the "Image Processing Handbook" by John Russ.