Package gov.nih.mipav.model.algorithms
Class AlgorithmHessian
- java.lang.Object
- 
- java.lang.Thread
- 
- gov.nih.mipav.model.algorithms.AlgorithmBase
- 
- gov.nih.mipav.model.algorithms.AlgorithmHessian
 
 
 
- 
- All Implemented Interfaces:
- java.awt.event.ActionListener,- java.awt.event.WindowListener,- java.lang.Runnable,- java.util.EventListener
 
 public class AlgorithmHessian extends AlgorithmBase Provides functions to convolve an image with the second derivitive of the Gaussian function to obtain the Hessian matrix for a particular point on the image.- Author:
- Evan McCreedy
 
- 
- 
Field SummaryFields Modifier and Type Field Description private float[]GxxDataStorage location of the second derivative of the Gaussian in the XX direction.private float[]GxyDataStorage location of the second derivative of the Gaussian in the XY direction.private float[]GxzDataStorage location of the second derivative of the Gaussian in the XZ direction.private float[]GyyDataStorage location of the second derivative of the Gaussian in the YY direction.private float[]GyzDataStorage location of the second derivative of the Gaussian in the YZ direction.private float[]GzzDataStorage location of the second derivative of the Gaussian in the ZZ direction.private int[]kExtentsDimensionality of the kernel.private float[]sigmasStandard deviations of the gaussian used to calculate the kernels.private ModelImagesrcImageImage to convolve with hessian.- 
Fields inherited from class gov.nih.mipav.model.algorithms.AlgorithmBasedestFlag, destImage, image25D, mask, maxProgressValue, minProgressValue, multiThreadingEnabled, nthreads, progress, progressModulus, progressStep, runningInSeparateThread, separable, threadStopped
 
- 
 - 
Constructor SummaryConstructors Constructor Description AlgorithmHessian(ModelImage img, float[] sigmas)Creates a new AlgorithmHessian object.
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description double[][]hessian2D(float[] imgBuf, int[] extents, float x, float y)Convolves the source image at the point (x,y,z) with the hessian of the gaussian function.double[][]hessian2D(float x, float y)Convolves the source image at the point (x,y) with the hessian of the gaussian function.double[][]hessian3D(float[] imgBuf, int[] extents, float x, float y, float z)Convolves the source image at the point (x,y,z) with the hessian of the gaussian function.double[][]hessian3D(float x, float y, float z)Convolves the source image at the point (x,y,z) with the hessian of the gaussian function.private voidmakeKernels2D()Makes 2D derivative kernels to be used in the calculation of the hessian.private voidmakeKernels3D()Makes 3D derivative kernels to be used in the calculation of the hessian.voidrunAlgorithm()Should not be used for this algorithm -- just a placeholder.- 
Methods inherited from class gov.nih.mipav.model.algorithms.AlgorithmBaseactionPerformed, addListener, addProgressChangeListener, calculateImageSize, calculatePrincipleAxis, computeElapsedTime, computeElapsedTime, convertIntoFloat, delinkProgressToAlgorithm, delinkProgressToAlgorithmMulti, displayError, errorCleanUp, finalize, fireProgressStateChanged, fireProgressStateChanged, fireProgressStateChanged, fireProgressStateChanged, fireProgressStateChanged, generateProgressValues, getDestImage, getElapsedTime, getMask, getMaxProgressValue, getMinProgressValue, getNumberOfThreads, getProgress, getProgressChangeListener, getProgressChangeListeners, getProgressModulus, getProgressStep, getProgressValues, getSrcImage, isCompleted, isImage25D, isMultiThreadingEnabled, isRunningInSeparateThread, isThreadStopped, linkProgressToAlgorithm, linkProgressToAlgorithm, makeProgress, notifyListeners, removeListener, removeProgressChangeListener, run, setCompleted, setImage25D, setMask, setMaxProgressValue, setMinProgressValue, setMultiThreadingEnabled, setNumberOfThreads, setProgress, setProgressModulus, setProgressStep, setProgressValues, setProgressValues, setRunningInSeparateThread, setSrcImage, setStartTime, setThreadStopped, startMethod, windowActivated, windowClosed, windowClosing, windowDeactivated, windowDeiconified, windowIconified, windowOpened
 - 
Methods inherited from class java.lang.ThreadactiveCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, toString, yield
 
- 
 
- 
- 
- 
Field Detail- 
GxxDataprivate float[] GxxData Storage location of the second derivative of the Gaussian in the XX direction.
 - 
GxyDataprivate float[] GxyData Storage location of the second derivative of the Gaussian in the XY direction.
 - 
GxzDataprivate float[] GxzData Storage location of the second derivative of the Gaussian in the XZ direction.
 - 
GyyDataprivate float[] GyyData Storage location of the second derivative of the Gaussian in the YY direction.
 - 
GyzDataprivate float[] GyzData Storage location of the second derivative of the Gaussian in the YZ direction.
 - 
GzzDataprivate float[] GzzData Storage location of the second derivative of the Gaussian in the ZZ direction.
 - 
kExtentsprivate int[] kExtents Dimensionality of the kernel.
 - 
sigmasprivate float[] sigmas Standard deviations of the gaussian used to calculate the kernels.
 - 
srcImageprivate ModelImage srcImage Image to convolve with hessian.
 
- 
 - 
Constructor Detail- 
AlgorithmHessianpublic AlgorithmHessian(ModelImage img, float[] sigmas) Creates a new AlgorithmHessian object.- Parameters:
- img- DOCUMENT ME!
- sigmas- DOCUMENT ME!
 
 
- 
 - 
Method Detail- 
hessian2Dpublic double[][] hessian2D(float x, float y)Convolves the source image at the point (x,y) with the hessian of the gaussian function.- Parameters:
- x- float point index indicating point of interest
- y- float point index indicating point of interest
- Returns:
- hessian matrix for the point (x,y)
 
 - 
hessian2Dpublic double[][] hessian2D(float[] imgBuf, int[] extents, float x, float y)Convolves the source image at the point (x,y,z) with the hessian of the gaussian function.- Parameters:
- imgBuf- the image
- extents- the extents of the image
- x- float point index indicating point of interest
- y- float point index indicating point of interest
- Returns:
- hessian matrix for the point (x,y,z)
 
 - 
hessian3Dpublic double[][] hessian3D(float x, float y, float z)Convolves the source image at the point (x,y,z) with the hessian of the gaussian function.- Parameters:
- x- float point index indicating point of interest
- y- float point index indicating point of interest
- z- float point index indicating point of interest
- Returns:
- hessian matrix for the point (x,y,z)
 
 - 
hessian3Dpublic double[][] hessian3D(float[] imgBuf, int[] extents, float x, float y, float z)Convolves the source image at the point (x,y,z) with the hessian of the gaussian function.- Parameters:
- imgBuf- DOCUMENT ME!
- extents- DOCUMENT ME!
- x- float point index indicating point of interest
- y- float point index indicating point of interest
- z- float point index indicating point of interest
- Returns:
- hessian matrix for the point (x,y,z)
 
 - 
runAlgorithmpublic void runAlgorithm() Should not be used for this algorithm -- just a placeholder.- Specified by:
- runAlgorithmin class- AlgorithmBase
 
 - 
makeKernels2Dprivate void makeKernels2D() Makes 2D derivative kernels to be used in the calculation of the hessian.
 - 
makeKernels3Dprivate void makeKernels3D() Makes 3D derivative kernels to be used in the calculation of the hessian.
 
- 
 
-