Package gov.nih.mipav.model.algorithms
Class AlgorithmVOIExtraction
java.lang.Object
java.lang.Thread
gov.nih.mipav.model.algorithms.AlgorithmBase
gov.nih.mipav.model.algorithms.AlgorithmVOIExtraction
- All Implemented Interfaces:
ActionListener,WindowListener,Runnable,EventListener
DOCUMENT ME!
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Thread
Thread.Builder, Thread.State, Thread.UncaughtExceptionHandler -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate VOIDOCUMENT ME!private Color[]DOCUMENT ME!private intprivate short[]DOCUMENT ME!private short[]DOCUMENT ME!private short[]DOCUMENT ME!private BitSetDOCUMENT ME!private BitSetDOCUMENT ME!private BitSetDOCUMENT ME!private BitSetprivate short[][]DOCUMENT ME!private String[]DOCUMENT ME!private short[][]DOCUMENT ME!private intprivate short[]DOCUMENT ME!private BitSetDOCUMENT ME!private int[]DOCUMENT ME!private intDOCUMENT ME!private intDOCUMENT ME!private intDOCUMENT ME!private intDOCUMENT ME!Fields inherited from class gov.nih.mipav.model.algorithms.AlgorithmBase
destFlag, destImage, image25D, maxProgressValue, minProgressValue, multiThreadingEnabled, nthreads, progress, progressModulus, progressStep, runningInSeparateThread, separable, srcImage, threadStoppedFields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY -
Constructor Summary
ConstructorsConstructorDescriptionAlgorithmVOIExtraction(ModelImage srcImg) Creates a new AlgorithmVOIExtraction object. -
Method Summary
Modifier and TypeMethodDescriptionprivate voidCalculates the VOI extraction.private voidFrom text description in 4th edition Image Processing, Analysis, and Machine Vision International Edition by Milan Sonka, Vaclav Hlavac, and Roger Boyle, Algorithm 6.6 Inner Boundary Tracing, pp. 191-192.voidDOCUMENT ME!private voidFrom text description in 4th edition Image Processing, Analysis, and Machine Vision International Edition by Milan Sonka, Vaclav Hlavac, and Roger Boyle, Algorithm 6.8 Extended Boundary Tracing, pp. 195-196.voidfinalize()Prepares this class for destruction.Retrieve the VOI generated by the mask to voi extraction.intprivate voidFrom text description in 4th edition Image Processing, Analysis, and Machine Vision International Edition by Milan Sonka, Vaclav Hlavac, and Roger Boyle, Algorithm 6.7 Outer Boundary Tracing, p. 193.voidStarts the program.voidsetColorTable(Color[] colorTable) DOCUMENT ME!voidsetNameTable(String[] nameTable) DOCUMENT ME!private voidSets the mask of all points in the 4 connected region with a gray scale value.private voidsetRegionMaskI(int xStart, int yStart, short objectValue) Sets the mask of all points in the 4 connected region with a gray scale value of objectValue Uses iteration.private voidsetRegionOutMaskI(int xStart, int yStart, short objectValue) Sets the mask of all points in the 4 connected region with a gray scale value of objectValue Uses iteration.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, windowOpenedMethods 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, isVirtual, join, join, join, join, ofPlatform, ofVirtual, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, sleep, start, startVirtualThread, stop, suspend, threadId, toString, yield
-
Field Details
-
addedVOI
DOCUMENT ME! -
colorTable
DOCUMENT ME! -
expImgBuffer
private short[] expImgBufferDOCUMENT ME! -
grayScaleArray
private short[] grayScaleArrayDOCUMENT ME! -
imgBuffer
private short[] imgBufferDOCUMENT ME! -
mask
DOCUMENT ME! -
mask2
DOCUMENT ME! -
maskAll
DOCUMENT ME! -
maskList
private short[][] maskListDOCUMENT ME! -
nameTable
DOCUMENT ME! -
nextMaskList
private short[][] nextMaskListDOCUMENT ME! -
objBuffer
private short[] objBufferDOCUMENT ME! -
outMask
DOCUMENT ME! -
VOIIndexArray
private int[] VOIIndexArrayDOCUMENT ME! -
xDim
private int xDimDOCUMENT ME! -
xDimE
private int xDimEDOCUMENT ME! -
yDim
private int yDimDOCUMENT ME! -
yDimE
private int yDimEDOCUMENT ME! -
maskExpanded
-
connected
private int connected -
numVOIAdded
private int numVOIAdded
-
-
Constructor Details
-
AlgorithmVOIExtraction
Creates a new AlgorithmVOIExtraction object.- Parameters:
srcImg- source image model
-
-
Method Details
-
disposeLocal
public void disposeLocal()DOCUMENT ME! -
finalize
public void finalize()Prepares this class for destruction.- Overrides:
finalizein classAlgorithmBase
-
runAlgorithm
public void runAlgorithm()Starts the program.- Specified by:
runAlgorithmin classAlgorithmBase
-
setColorTable
DOCUMENT ME!- Parameters:
colorTable- DOCUMENT ME!
-
setNameTable
DOCUMENT ME!- Parameters:
nameTable- DOCUMENT ME!
-
extendedBoundaryTracing
private void extendedBoundaryTracing()From text description in 4th edition Image Processing, Analysis, and Machine Vision International Edition by Milan Sonka, Vaclav Hlavac, and Roger Boyle, Algorithm 6.8 Extended Boundary Tracing, pp. 195-196. -
outerBoundaryTracing
private void outerBoundaryTracing()From text description in 4th edition Image Processing, Analysis, and Machine Vision International Edition by Milan Sonka, Vaclav Hlavac, and Roger Boyle, Algorithm 6.7 Outer Boundary Tracing, p. 193. -
calcInPlace2
private void calcInPlace2()From text description in 4th edition Image Processing, Analysis, and Machine Vision International Edition by Milan Sonka, Vaclav Hlavac, and Roger Boyle, Algorithm 6.6 Inner Boundary Tracing, pp. 191-192. "Algorithm 6.6 works for all regions larger than one pixel. It is able to find region borders but does not find borders of region holes, which may be located by identifying border elements unallocated thus far to borders. The search for border elements always starts after a traced border is closed, and the search for "unused" border elements can continue in the same way as the search for the first border element. Note that if objects are of unit width, more conditions must be added." Can be used with either connected = 4 or connected = 8. Much less memory than calcInPlace. -
calcInPlace
private void calcInPlace()Calculates the VOI extraction. -
setRegionMaskAll
private void setRegionMaskAll()Sets the mask of all points in the 4 connected region with a gray scale value. -
setRegionMaskI
private void setRegionMaskI(int xStart, int yStart, short objectValue) Sets the mask of all points in the 4 connected region with a gray scale value of objectValue Uses iteration.- Parameters:
xStart- the x coordinate of the starting pointyStart- the y coordinate of the starting pointobjectValue- the gray scale value of the object
-
setRegionOutMaskI
private void setRegionOutMaskI(int xStart, int yStart, short objectValue) Sets the mask of all points in the 4 connected region with a gray scale value of objectValue Uses iteration.- Parameters:
xStart- the x coordinate of the starting pointyStart- the y coordinate of the starting pointobjectValue- the gray scale value of the object
-
getAddedVOI
Retrieve the VOI generated by the mask to voi extraction.- Returns:
- The generated VOI object.
-
getNumVOIAdded
public int getNumVOIAdded()
-