ImageScience 3.0.0

imagescience.feature
Class Edges

java.lang.Object
  extended by imagescience.feature.Edges

public class Edges
extends java.lang.Object

Detects edges in images.


Field Summary
 Differentiator differentiator
          The object used for image differentiation.
 Messenger messenger
          The object used for message displaying.
 Progressor progressor
          The object used for progress displaying.
 
Constructor Summary
Edges()
          Default constructor.
 
Method Summary
 Image run(Image image, double scale, boolean nonmaxsup)
          Detects edges in images.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

messenger

public final Messenger messenger
The object used for message displaying.


progressor

public final Progressor progressor
The object used for progress displaying.


differentiator

public final Differentiator differentiator
The object used for image differentiation.

Constructor Detail

Edges

public Edges()
Default constructor.

Method Detail

run

public Image run(Image image,
                 double scale,
                 boolean nonmaxsup)
Detects edges in images.

Parameters:
image - The input image in which edges are to be detected. If it is of type FloatImage, it will be used to store intermediate results. Otherwise it will be left unaltered. If the size of the image in the z-dimension equals 1, this method will compute, for every image element, the magnitude of the two-dimensional (2D) gradient vector. Otherwise it will compute for every image element the magnitude of the full three-dimensional (3D) gradient vector. These computations are performed on every x-y(-z) subimage in a 5D image.
scale - The smoothing scale at which the required image derivatives are computed. The scale is equal to the standard deviation of the Gaussian kernel used for differentiation and must be larger than 0. In order to enforce physical isotropy, for each dimension, the scale is divided by the size of the image elements (aspect ratio) in that dimension.
nonmaxsup - Determines whether locally non-maximal gray-values are suppressed. To determine whether the gray-value of an image element is a local maximum, this method applies linear interpolation in the direction of the gradient vector to compute gray-values at approximately one sample distance on each side of the given element, which are subsequently compared to the gray-value of the given element.
Returns:
An image showing the locations of edges according to the algorithm. The returned image is always of type FloatImage.
Throws:
java.lang.IllegalArgumentException - If scale is less than or equal to 0.
java.lang.IllegalStateException - If the size of the image elements (aspect ratio) is less than or equal to 0 in the x-, y-, or z-dimension.
java.lang.NullPointerException - If image is null.

ImageScience 3.0.0

Copyright (C) Erik Meijering. Permission to use this software and corresponding documentation for educational, research, and not-for-profit purposes, without a fee and without a signed licensing agreement, is granted, subject to the following terms and conditions.

IT IS NOT ALLOWED TO REDISTRIBUTE, SELL, OR LEASE THIS SOFTWARE, OR DERIVATIVE WORKS THEREOF, WITHOUT PERMISSION IN WRITING FROM THE COPYRIGHT HOLDER. THE COPYRIGHT HOLDER IS FREE TO MAKE VERSIONS OF THE SOFTWARE AVAILABLE FOR A FEE OR COMMERCIALLY ONLY.

IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, OF ANY KIND WHATSOEVER, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.

THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE EXPRESS OR IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE AND CORRESPONDING DOCUMENTATION IS PROVIDED "AS IS". THE COPYRIGHT HOLDER HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.