Class AlgorithmFastMarching
- java.lang.Object
-
- java.lang.Thread
-
- gov.nih.mipav.model.algorithms.AlgorithmBase
-
- gov.nih.mipav.model.algorithms.levelset.AlgorithmFastMarching
-
- All Implemented Interfaces:
java.awt.event.ActionListener
,java.awt.event.WindowListener
,java.lang.Runnable
,java.util.EventListener
public class AlgorithmFastMarching extends AlgorithmBase
DOCUMENT ME!
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
m_bImage25D
Calculate per-slice:private boolean
m_bIterate
DOCUMENT ME!private boolean
m_bNext
DOCUMENT ME!private float
m_fAdvectionWeight
The advection coefficient 'a' in the PDE that controls the evolution.private float
m_fCurvatureWeight
The curvature coefficient 'c' in the PDE that controls the evolution.private float
m_fGradientMagnitudeScale
The scale to use in computing the blurred gradient magnitude of the curvature flow image.private float
m_fLaplacianWeight
The Laplacian coefficient 'd' in the PDE that controls the evolution.private float
m_fMaxDistance
The maximum distance to allow when computing the signed distance transform.private float
m_fPropagationWeight
The propagation coefficient 'b' in the PDE that controls the evolution.private float
m_fSigmoidAlpha
The parameters for the sigmoid function through which the blurred gradient magnitude image is processed.private float
m_fSigmoidBeta
The parameters for the sigmoid function through which the blurred gradient magnitude image is processed.private float
m_fSigmoidMax
The parameters for the sigmoid function through which the blurred gradient magnitude image is processed.private float
m_fSigmoidMin
The parameters for the sigmoid function through which the blurred gradient magnitude image is processed.private int
m_iDiffusionIterations
The number of iterations to use in the nonlinear diffusion (curvature flow filter) applied to the input image.private int
m_iFilterType
Type of level set diffusion filter to apply.private int
m_iMaxCoarse
Number of coarse iterationsprivate int
m_iMaxEvolution
Number of evolution iterationsprivate int
m_iSlice
private static long
serialVersionUID
Use serialVersionUID for interoperability.-
Fields inherited from class gov.nih.mipav.model.algorithms.AlgorithmBase
destFlag, destImage, image25D, mask, maxProgressValue, minProgressValue, multiThreadingEnabled, nthreads, progress, progressModulus, progressStep, runningInSeparateThread, separable, srcImage, threadStopped
-
-
Constructor Summary
Constructors Constructor Description AlgorithmFastMarching(ModelImage _image)
Creates a new ViewJFrameFastMarching3 object.AlgorithmFastMarching(ModelImage _image, int iFilterType, int iIters, float fGMScale, float fSAlpha, float fSBeta, float fSMin, float fSMax, int iCoarseMax, float fMaxDistance, float fAdvectionWeight, float fPropagationWeight, float fCurvatureWeight, float fLaplacianWeight, int iEvolveMax, boolean bImage25D)
Creates a new AlgorithmFastMarching3 object.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
DrawEvolve2D(LseSegmenter kSegmenter)
DOCUMENT ME!private void
DrawEvolve3D(LseSegmenter kSegmenter)
DOCUMENT ME!private void
DrawFastMarch2D(LseSegmenter kSegmenter)
DOCUMENT ME!private void
DrawFastMarch3D(LseSegmenter kSegmenter)
DOCUMENT ME!void
runAlgorithm()
Actually runs the algorithm.private void
runAlgorithm25D()
void
runAlgorithm2D()
void
runAlgorithm3D()
-
Methods inherited from class gov.nih.mipav.model.algorithms.AlgorithmBase
actionPerformed, 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.Thread
activeCount, 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
-
serialVersionUID
private static final long serialVersionUID
Use serialVersionUID for interoperability.- See Also:
- Constant Field Values
-
m_bIterate
private boolean m_bIterate
DOCUMENT ME!
-
m_bNext
private boolean m_bNext
DOCUMENT ME!
-
m_iFilterType
private int m_iFilterType
Type of level set diffusion filter to apply.
-
m_iDiffusionIterations
private int m_iDiffusionIterations
The number of iterations to use in the nonlinear diffusion (curvature flow filter) applied to the input image.
-
m_fGradientMagnitudeScale
private float m_fGradientMagnitudeScale
The scale to use in computing the blurred gradient magnitude of the curvature flow image.
-
m_fSigmoidAlpha
private float m_fSigmoidAlpha
The parameters for the sigmoid function through which the blurred gradient magnitude image is processed. The variance of the function.
-
m_fSigmoidBeta
private float m_fSigmoidBeta
The parameters for the sigmoid function through which the blurred gradient magnitude image is processed. The center of the function.
-
m_fSigmoidMin
private float m_fSigmoidMin
The parameters for the sigmoid function through which the blurred gradient magnitude image is processed. The minimum of the function.
-
m_fSigmoidMax
private float m_fSigmoidMax
The parameters for the sigmoid function through which the blurred gradient magnitude image is processed. The maximum of the function.
-
m_iMaxCoarse
private int m_iMaxCoarse
Number of coarse iterations
-
m_fMaxDistance
private float m_fMaxDistance
The maximum distance to allow when computing the signed distance transform.
-
m_fAdvectionWeight
private float m_fAdvectionWeight
The advection coefficient 'a' in the PDE that controls the evolution.
-
m_fPropagationWeight
private float m_fPropagationWeight
The propagation coefficient 'b' in the PDE that controls the evolution.
-
m_fCurvatureWeight
private float m_fCurvatureWeight
The curvature coefficient 'c' in the PDE that controls the evolution.
-
m_fLaplacianWeight
private float m_fLaplacianWeight
The Laplacian coefficient 'd' in the PDE that controls the evolution.
-
m_iMaxEvolution
private int m_iMaxEvolution
Number of evolution iterations
-
m_bImage25D
private boolean m_bImage25D
Calculate per-slice:
-
m_iSlice
private int m_iSlice
-
-
Constructor Detail
-
AlgorithmFastMarching
public AlgorithmFastMarching(ModelImage _image)
Creates a new ViewJFrameFastMarching3 object.- Parameters:
_image
- DOCUMENT ME!_LUT
- DOCUMENT ME!
-
AlgorithmFastMarching
public AlgorithmFastMarching(ModelImage _image, int iFilterType, int iIters, float fGMScale, float fSAlpha, float fSBeta, float fSMin, float fSMax, int iCoarseMax, float fMaxDistance, float fAdvectionWeight, float fPropagationWeight, float fCurvatureWeight, float fLaplacianWeight, int iEvolveMax, boolean bImage25D)
Creates a new AlgorithmFastMarching3 object.- Parameters:
_image
- reference to the source imageiIters
- The number of iterations to use in the nonlinear diffusion (curvature flow filter) applied to the input image.fGMScale
- The scale to use in computing the blurred gradient magnitude of the curvature flow image.fSAlpha
- The parameters for the sigmoid function through which the blurred gradient magnitude image is processed. The variance of the function.fSBeta
- The parameters for the sigmoid function through which the blurred gradient magnitude image is processed. The center of the function.fSMin
- The parameters for the sigmoid function through which the blurred gradient magnitude image is processed. The minimum of the function.fSMax
- The parameters for the sigmoid function through which the blurred gradient magnitude image is processed. The maximum of the function.iCoarseMax
- Number of coarse iterationsfMaxDistance
- The maximum distance to allow when computing the signed distance transform. * @param fAdvectionWeight The advection coefficient 'a' in the PDE that controls the evolution.fPropagationWeight
- The propagation coefficient 'b' in the PDE that controls the evolution.fCurvatureWeight
- The curvature coefficient 'c' in the PDE that controls the evolution.fLaplacianWeight
- The Laplacian coefficient 'd' in the PDE that controls the evolution.iEvolveMax
- Number of evolution iterations
-
-
Method Detail
-
runAlgorithm
public void runAlgorithm()
Description copied from class:AlgorithmBase
Actually runs the algorithm. Implemented by inheriting algorithms.- Specified by:
runAlgorithm
in classAlgorithmBase
-
runAlgorithm3D
public void runAlgorithm3D()
-
runAlgorithm25D
private void runAlgorithm25D()
-
DrawEvolve3D
private void DrawEvolve3D(LseSegmenter kSegmenter)
DOCUMENT ME!- Parameters:
kSegmenter
- DOCUMENT ME!afImage
- DOCUMENT ME!
-
DrawFastMarch3D
private void DrawFastMarch3D(LseSegmenter kSegmenter)
DOCUMENT ME!- Parameters:
kSegmenter
- DOCUMENT ME!afImage
- DOCUMENT ME!
-
runAlgorithm2D
public void runAlgorithm2D()
-
DrawEvolve2D
private void DrawEvolve2D(LseSegmenter kSegmenter)
DOCUMENT ME!- Parameters:
kSegmenter
- DOCUMENT ME!afImage
- DOCUMENT ME!
-
DrawFastMarch2D
private void DrawFastMarch2D(LseSegmenter kSegmenter)
DOCUMENT ME!- Parameters:
kSegmenter
- DOCUMENT ME!afImage
- DOCUMENT ME!
-
-