ImageScience 3.0.0

imagescience.feature
Class Differentiator

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

public class Differentiator
extends java.lang.Object

Computes Gaussian derivatives of images.


Field Summary
static int MAX_ORDER
          The largest supported order of differentiation.
 Messenger messenger
          The object used for message displaying.
 Progressor progressor
          The object used for progress displaying.
 
Constructor Summary
Differentiator()
          Default constructor.
 
Method Summary
 Image run(Image image, double scale, int xorder, int yorder, int zorder)
          Computes derivatives of images.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MAX_ORDER

public static final int MAX_ORDER
The largest supported order of differentiation. Currently this is 10.

See Also:
Constant Field Values

messenger

public final Messenger messenger
The object used for message displaying.


progressor

public final Progressor progressor
The object used for progress displaying.

Constructor Detail

Differentiator

public Differentiator()
Default constructor.

Method Detail

run

public Image run(Image image,
                 double scale,
                 int xorder,
                 int yorder,
                 int zorder)
Computes derivatives of images.

Parameters:
image - The input image to be differentiated. If it is of type FloatImage, it will be overwritten with the differentiation results. Otherwise it will be left unaltered.
scale - The smoothing scale at which derivatives are to be computed. The scale is equal to the standard deviation of the Gaussian smoothing kernel 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.
xorder - yorder - zorder - The order of differentiation in the x-, y-, and z-dimension. The largest supported order of differentiation is MAX_ORDER. If the order is 0 in any dimension, the method applies just smoothing in that dimension, at the given scale.
Returns:
The derivative image. The returned image is always of type FloatImage. If the input image is also of that type, the returned image is the same object, overwritten with the differentiation results.
Throws:
java.lang.IllegalArgumentException - If scale is less than or equal to 0, or if any of xorder, yorder, or zorder is less than 0 or larger than MAX_ORDER.
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.