ImageScience 3.0.0

imagescience.feature
Class Structure

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

public class Structure
extends java.lang.Object

Computes eigenimages of the structure tensor.


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
Structure()
          Default constructor.
 
Method Summary
 java.util.Vector<Image> run(Image image, double sscale, double iscale)
          Computes structure tensor eigenimages of 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

Structure

public Structure()
Default constructor.

Method Detail

run

public java.util.Vector<Image> run(Image image,
                                   double sscale,
                                   double iscale)
Computes structure tensor eigenimages of images.

Parameters:
image - The input image for which structure-tensor eigenimages need to be computed. 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 two-dimensional (2D) structure tensor and its two eigenvalues. Otherwise it will compute for every image element the full three-dimensional (3D) structure tensor and its three eigenvalues. These computations are performed on every x-y(-z) subimage in a 5D image.
sscale - 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.
iscale - The integration scale. This scale is equal to the standard deviation of the Gaussian kernel used for integrating the components of the structure tensor 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.
Returns:
An array containing the eigenimages. The images are always of type FloatImage.
If only the two-dimensional (2D) structure tensor and its two eigenvalues were computed for every image element, the returned array contains two eigenimages:
Element 0 = the image with, for every element, the largest eigenvalue,
Element 1 = the image with, for every element, the smallest eigenvalue.
If the full three-dimensional (3D) structure tensor and its three eigenvalues were computed for every image element, the returned array contains three eigenimages:
Element 0 = the image with, for every element, the largest eigenvalue,
Element 1 = the image with, for every element, the middle eigenvalue,
Element 2 = the image with, for every element, the smallest eigenvalue.
Throws:
java.lang.IllegalArgumentException - If sscale or iscale 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.