Class AlgorithmTiltCorrection
- java.lang.Object
-
- java.lang.Thread
-
- gov.nih.mipav.model.algorithms.AlgorithmBase
-
- gov.nih.mipav.model.algorithms.utilities.AlgorithmTiltCorrection
-
- All Implemented Interfaces:
java.awt.event.ActionListener
,java.awt.event.WindowListener
,java.lang.Runnable
,java.util.EventListener
public class AlgorithmTiltCorrection extends AlgorithmBase
- Author:
- ilb In nonhelical multislice CT let the CT gantry coordinate system be x', y', z'. Let phi be the angle between the image coordinate z and the gantry system z'. The z and z' axes intersect at the origin. Then for reconstruction each slice must be shifted: dely = z' * tan(phi) DICOM defines the tag (0018, 1120) Gantry/Detector Tilt for NM, CT, and PET as the nominal angle of tilt of the scanning gantry or the detector. The angle is in degrees of the detector face or the gantry relative to the patient's major (Head to Feet) axis (or the table supporting the patient). Positive tilt is towards the patient's feet Reference: Computed Tomography: Principles, Design, Artifacts, and Recent Advances, Second Edition, Jiang Hsieh, Publisher SPIE, November 19, 2009. Chapter 10: Multislice CT Chapter 10.3 Nonhelical mode of reconstruction, pp. 394-395. Chapter 10.5.5 Tilt artifacts in multislice helical CT, pp. 416-418. In "Tomographic Reconstruction for Tilted Helical Multislice CT" by Jiang Hsieh the reconstruction algorithms presented are either performed during the backprojection process or in shifting the projections before the backprojection process.
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
nonHelical
private double
tiltAngle
-
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 AlgorithmTiltCorrection(ModelImage destImg, ModelImage srcImg, boolean nonHelical, double tiltAngle)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
finalize()
Calls garbage collector to release system resources.private void
helicalCorrection()
private void
nonHelicalCorrection()
void
runAlgorithm()
Actually runs the algorithm.-
Methods inherited from class gov.nih.mipav.model.algorithms.AlgorithmBase
actionPerformed, addListener, addProgressChangeListener, calculateImageSize, calculatePrincipleAxis, computeElapsedTime, computeElapsedTime, convertIntoFloat, delinkProgressToAlgorithm, delinkProgressToAlgorithmMulti, displayError, errorCleanUp, 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
-
-
-
-
Constructor Detail
-
AlgorithmTiltCorrection
public AlgorithmTiltCorrection(ModelImage destImg, ModelImage srcImg, boolean nonHelical, double tiltAngle)
-
-
Method Detail
-
finalize
public void finalize()
Description copied from class:AlgorithmBase
Calls garbage collector to release system resources.- Overrides:
finalize
in classAlgorithmBase
-
runAlgorithm
public void runAlgorithm()
Description copied from class:AlgorithmBase
Actually runs the algorithm. Implemented by inheriting algorithms.- Specified by:
runAlgorithm
in classAlgorithmBase
-
nonHelicalCorrection
private void nonHelicalCorrection()
-
helicalCorrection
private void helicalCorrection()
-
-