Class JDialogPromise12_2DVolumetrieHED_map
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Dialog
-
- javax.swing.JDialog
-
- gov.nih.mipav.view.dialogs.JDialogBase
-
- gov.nih.mipav.view.renderer.WildMagic.ProstateFramework.JDialogPromise12_2DVolumetrieHED_map
-
- All Implemented Interfaces:
AlgorithmInterface,DialogDefaultsInterface,java.awt.event.ActionListener,java.awt.event.FocusListener,java.awt.event.ItemListener,java.awt.event.WindowListener,java.awt.image.ImageObserver,java.awt.MenuContainer,java.io.Serializable,java.util.EventListener,javax.accessibility.Accessible,javax.swing.RootPaneContainer,javax.swing.WindowConstants
public class JDialogPromise12_2DVolumetrieHED_map extends JDialogBase implements AlgorithmInterface
This class convert the 3D images to 2D slices based atlas. Users specify the 3D prostate images dir, and output 2D slices based dir, the algorithm auto convert each 3D image to 2D slices with corresponding VOIs. Each saved VOIs is 2-contour based VOI, which is used to build the Active Appearance Model (AAM).- Author:
- Ruida Cheng
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) classJDialogPromise12_2DVolumetrieHED_map.curvePair-
Nested classes/interfaces inherited from class gov.nih.mipav.view.dialogs.JDialogBase
JDialogBase.CancelAction, JDialogBase.HelpAction, JDialogBase.OKAction
-
Nested classes/interfaces inherited from class javax.swing.JDialog
javax.swing.JDialog.AccessibleJDialog
-
Nested classes/interfaces inherited from class java.awt.Dialog
java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
-
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
-
-
Field Summary
Fields Modifier and Type Field Description private static intAxialprivate java.util.Vector<ModelImage>axialListprivate intaxisprivate javax.swing.JComboBoxaxisListprivate intboxXmaxprivate intboxXminprivate intboxYmaxbounding box for crop the image.private intboxYminbounding box for crop the image.private javax.swing.JButtonbuttonKeyImageprivate javax.swing.JButtonbuttonSaveImageprivate static intCoronalprivate java.util.Vector<ModelImage>coronalListprivate AlgorithmAddMarginscropAlgocrop margin algorithm.private ModelImagecropImageresult cropped image.private java.util.Vector<ModelImage>cropKeyImagescropped key image vector.(package private) java.util.Hashtable<java.lang.Integer,ModelImage>imageHashtable(package private) java.util.Hashtable<java.lang.String,java.util.Vector<java.lang.String>>imageNameHashtableprivate javax.swing.JPanelimageSelectionPanel(package private) java.util.Hashtable<java.lang.Integer,java.util.Vector<java.lang.String>>imageTableprivate javax.swing.JFileChooserkeyImageChooserkey images variables.private java.lang.StringkeyImageDirectoryprivate java.util.Vector<ModelImage>keyImagesimage vector to hold the actual images.private java.util.Vector<java.lang.String>keyImageVector1private java.util.Vector<java.lang.String>keyImageVector2private java.util.Vector<java.lang.String>keyImageVector3private java.util.Vector<java.lang.String>keyImageVector4private java.util.Vector<java.lang.String>keyImageVector5private java.util.Vector<VOI[]>keyImageVOIsvoi vector to hold the actual vois.private java.util.Vector<java.lang.String>keyImageVOIVector1private java.util.Vector<java.lang.String>keyImageVOIVector2private java.util.Vector<java.lang.String>keyImageVOIVector3private java.util.Vector<java.lang.String>keyImageVOIVector4private java.util.Vector<java.lang.String>keyImageVOIVector5private javax.swing.JLabellabelAxisprivate javax.swing.JLabellabelKeyImagekey image directory.private javax.swing.JLabellabelSaveImagesaved 2D slices atlas dir.(package private) java.util.Hashtable<java.lang.Integer,java.util.Vector<java.lang.String>>maskImageTable(package private) java.util.Hashtable<java.lang.Integer,java.util.Vector<ModelImage>>maskTable(package private) java.util.Hashtable<java.lang.Integer,java.util.Vector<java.lang.String>>newImageTableprivate static intSaggitalprivate java.util.Vector<ModelImage>sagittalListprivate javax.swing.JFileChoosersaveImageChooserprivate java.lang.StringsaveImageDirectoryprivate static longserialVersionUIDprivate javax.swing.JTextFieldtextFieldKeyImageprivate javax.swing.JTextFieldtextFieldSaveImageprivate ViewUserInterfaceUIThe main user interface.(package private) java.util.Hashtable<java.lang.String,VOI>voiHashtableprivate int[]xBoundsX cropped region bounds.private int[]yBoundsY cropped region bounds.private int[]zBoundsZ cropped region bound.-
Fields inherited from class gov.nih.mipav.view.dialogs.JDialogBase
applyButton, bar, cancelButton, cancelFlag, closeButton, HELP, helpButton, mainDialogPanel, NEW, OKButton, parentFrame, progressBar, REPLACE, runInSeparateThread, runningScriptFlag, runQuiet, serif12, serif12B, voiManager
-
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description JDialogPromise12_2DVolumetrieHED_map(java.awt.Frame theParentFrame)Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactionPerformed(java.awt.event.ActionEvent event)Dialog local actionPerformed handler.voidalgorithmPerformed(AlgorithmBase algorithm)This method is required if the AlgorithmPerformed interface is implemented.voidbuildKeyImagePanel()Panel contains both the 3D image dir and saved 2D slices atlas dir.ModelImagecalculateTransform(ModelImage image)ModelImagecalculateTransform_resol_fix_2D(ModelImage image, float resolution)ModelImagecalculateTransform_resol_fix_3D(ModelImage image, float resolution)voidcallAlgorithm()Driver function to read image and VOIs, and convert each 3D image to 2D slices.voidconversion()voidcropKeyImages()Crop key images.static booleandeleteDir(java.io.File dir)Debugger to test dir deletion.voiddisposeLocal()dispose memoryprivate voidgenerateBoundaryContours(VOIBase srcContour, ModelImage targetImageSlice)Convert VOI from one contour to two contoursprivate voidgenerateContours()JDialogPromise12_2DVolumetrieHED_map.curvePairgetScore(ModelImage maskImage, ModelImage gradMagImage, float minThreshold, float maxThreshold)voidinit()Initial panelvoidloadFiles()load image files and voi filesJDialogPromise12_2DVolumetrieHED_map.curvePairoptimizeContours(ModelImage maskImage, ModelImage gradMagImage)static voidpause()voidprintImages()Debugger for test the image and VOis reading.private voidprintImageTable()private voidprocessDir_folder_1(java.io.File dir)private voidprocessDir_folder_2(java.io.File dir)private voidprocessDir_folder_3(java.io.File dir)private voidprocessDir_folder_4(java.io.File dir)private voidprocessDir_folder_5(java.io.File dir)private voidprocessDir_folder_5(java.io.File dir, int index)voidreadFile()private voidreadKeyImageDir()Read 3D images atlas directory.private voidrecordSaveImageDir()Let user specify the saved 2D slices atlas, record the save directory.private voidrotateToStartingPoint_leftMost(float[] xPts, float[] yPts, int xDim, int yDim)private voidrotateToStartingPoint_yMid(float[] xPts, float[] yPts, int xDim, int yDim)Re-oriented the starting and ending VOIs.voidsaveImages()Save the 2D slices and VOIs to user specified dir.private voidsavePNGfile(java.lang.String dirName, java.lang.String fileName, ModelImage srcImage, float minIntensity, float maxIntensity, boolean isMask)voidsaveTestedImages()voidsmoothVOI30(ModelImage maskImage, ModelImage resultImage)voidsmoothVOI60(ModelImage maskImage, ModelImage resultImage)Smooth VOIs to 60 points.private voidsortImageTable()voidsortKeyImage_1()voidsortKeyImage_2()voidsortKeyImage_3()voidsortKeyImage_4()voidsortKeyImage_5()private voidtraverse_DicomLayer(java.io.File lastLayer, java.lang.String hashID)private voidtraverse_firstLayer(java.io.File firstDir, java.lang.String child)private voidtraverse_folder_1(java.io.File dir)private voidtraverse_folder_2(java.io.File dir)private voidtraverse_folder_3(java.io.File dir)private voidtraverse_folder_4(java.io.File dir)private voidtraverse_folder_5(java.io.File dir)private voidtraverse_folder_5(java.io.File dir, boolean test)private voidtraverse_folder_5(java.io.File dir, int index)private voidtraverse_folder_5_old(java.io.File dir)private voidtraverse_Layer(java.io.File dir)private voidtraverse_scanLayer(java.io.File secondLayer, java.lang.String hashID)private voidtraverse_secondLayer(java.io.File firstLayer, java.lang.String hashID)-
Methods inherited from class gov.nih.mipav.view.dialogs.JDialogBase
buildApplyButton, buildButtons, buildCancelButton, buildCancelButton, buildCloseButton, buildHelpButton, buildImageComboBox, buildOKButton, buildOKButton, buildOKCancelButtons, buildTitledBorder, buildTitledBorder, createLabel, createProgressBar, createProgressBar, createTextField, focusGained, focusLost, getDialogName, isCancelled, isQuietRunning, isRunInSeparateThread, isScriptRunning, itemStateChanged, loadDefaults, loadDefaults, makeImageName, makeString, openNewFrame, saveDefaults, saveDefaults, setLeftHandSystem, setQuietRunning, setScriptRunning, setSeparateThread, setVisible, setVisible, setVisibleMenuBar, setVisibleStandard, setVOIManager, setWCSystem, testParameter, testParameterMin, updateFFTFileInfo, updateFileInfo, updateFileInfoOtherModality, updateFileInfoStatic, updateFileInfoStatic, updateFileTypeInfo, updateFileTypeInfo, windowActivated, windowClosed, windowClosing, windowDeactivated, windowDeiconified, windowIconified, windowOpened
-
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
-
Methods inherited from class java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, show, toBack
-
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, toFront
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
UI
private ViewUserInterface UI
The main user interface.
-
boxYmin
private int boxYmin
bounding box for crop the image. Currently set from 0 to 512, the orginal image slice size.
-
boxYmax
private int boxYmax
bounding box for crop the image. Currently set from 0 to 512, the orginal image slice size.
-
boxXmin
private int boxXmin
-
boxXmax
private int boxXmax
-
xBounds
private int[] xBounds
X cropped region bounds.
-
yBounds
private int[] yBounds
Y cropped region bounds.
-
zBounds
private int[] zBounds
Z cropped region bound.
-
cropAlgo
private AlgorithmAddMargins cropAlgo
crop margin algorithm.
-
cropImage
private ModelImage cropImage
result cropped image.
-
labelKeyImage
private javax.swing.JLabel labelKeyImage
key image directory.
-
textFieldKeyImage
private javax.swing.JTextField textFieldKeyImage
-
buttonKeyImage
private javax.swing.JButton buttonKeyImage
-
imageSelectionPanel
private javax.swing.JPanel imageSelectionPanel
-
keyImageChooser
private javax.swing.JFileChooser keyImageChooser
key images variables.
-
keyImageDirectory
private java.lang.String keyImageDirectory
-
axisList
private javax.swing.JComboBox axisList
-
labelAxis
private javax.swing.JLabel labelAxis
-
Axial
private static int Axial
-
Saggital
private static int Saggital
-
Coronal
private static int Coronal
-
axis
private int axis
-
keyImages
private java.util.Vector<ModelImage> keyImages
image vector to hold the actual images.
-
keyImageVOIs
private java.util.Vector<VOI[]> keyImageVOIs
voi vector to hold the actual vois.
-
keyImageVector1
private java.util.Vector<java.lang.String> keyImageVector1
-
keyImageVOIVector1
private java.util.Vector<java.lang.String> keyImageVOIVector1
-
keyImageVector2
private java.util.Vector<java.lang.String> keyImageVector2
-
keyImageVOIVector2
private java.util.Vector<java.lang.String> keyImageVOIVector2
-
keyImageVector3
private java.util.Vector<java.lang.String> keyImageVector3
-
keyImageVOIVector3
private java.util.Vector<java.lang.String> keyImageVOIVector3
-
keyImageVector4
private java.util.Vector<java.lang.String> keyImageVector4
-
keyImageVOIVector4
private java.util.Vector<java.lang.String> keyImageVOIVector4
-
keyImageVector5
private java.util.Vector<java.lang.String> keyImageVector5
-
keyImageVOIVector5
private java.util.Vector<java.lang.String> keyImageVOIVector5
-
cropKeyImages
private java.util.Vector<ModelImage> cropKeyImages
cropped key image vector.
-
labelSaveImage
private javax.swing.JLabel labelSaveImage
saved 2D slices atlas dir.
-
textFieldSaveImage
private javax.swing.JTextField textFieldSaveImage
-
buttonSaveImage
private javax.swing.JButton buttonSaveImage
-
saveImageChooser
private javax.swing.JFileChooser saveImageChooser
-
saveImageDirectory
private java.lang.String saveImageDirectory
-
imageTable
java.util.Hashtable<java.lang.Integer,java.util.Vector<java.lang.String>> imageTable
-
newImageTable
java.util.Hashtable<java.lang.Integer,java.util.Vector<java.lang.String>> newImageTable
-
maskTable
java.util.Hashtable<java.lang.Integer,java.util.Vector<ModelImage>> maskTable
-
maskImageTable
java.util.Hashtable<java.lang.Integer,java.util.Vector<java.lang.String>> maskImageTable
-
imageHashtable
java.util.Hashtable<java.lang.Integer,ModelImage> imageHashtable
-
voiHashtable
java.util.Hashtable<java.lang.String,VOI> voiHashtable
-
imageNameHashtable
java.util.Hashtable<java.lang.String,java.util.Vector<java.lang.String>> imageNameHashtable
-
axialList
private java.util.Vector<ModelImage> axialList
-
sagittalList
private java.util.Vector<ModelImage> sagittalList
-
coronalList
private java.util.Vector<ModelImage> coronalList
-
-
Method Detail
-
disposeLocal
public void disposeLocal()
dispose memory
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent event)
Dialog local actionPerformed handler.- Specified by:
actionPerformedin interfacejava.awt.event.ActionListener- Overrides:
actionPerformedin classJDialogBase
-
sortKeyImage_1
public void sortKeyImage_1()
-
sortImageTable
private void sortImageTable()
-
pause
public static void pause()
-
printImageTable
private void printImageTable()
-
recordSaveImageDir
private void recordSaveImageDir()
Let user specify the saved 2D slices atlas, record the save directory.
-
readKeyImageDir
private void readKeyImageDir()
Read 3D images atlas directory.
-
traverse_folder_1
private void traverse_folder_1(java.io.File dir)
-
processDir_folder_1
private void processDir_folder_1(java.io.File dir)
-
traverse_Layer
private void traverse_Layer(java.io.File dir)
-
traverse_firstLayer
private void traverse_firstLayer(java.io.File firstDir, java.lang.String child)
-
traverse_secondLayer
private void traverse_secondLayer(java.io.File firstLayer, java.lang.String hashID)
-
traverse_scanLayer
private void traverse_scanLayer(java.io.File secondLayer, java.lang.String hashID)
-
traverse_DicomLayer
private void traverse_DicomLayer(java.io.File lastLayer, java.lang.String hashID)
-
traverse_folder_2
private void traverse_folder_2(java.io.File dir)
-
processDir_folder_2
private void processDir_folder_2(java.io.File dir)
-
sortKeyImage_2
public void sortKeyImage_2()
-
traverse_folder_3
private void traverse_folder_3(java.io.File dir)
-
processDir_folder_3
private void processDir_folder_3(java.io.File dir)
-
sortKeyImage_3
public void sortKeyImage_3()
-
traverse_folder_4
private void traverse_folder_4(java.io.File dir)
-
processDir_folder_4
private void processDir_folder_4(java.io.File dir)
-
traverse_folder_5
private void traverse_folder_5(java.io.File dir, boolean test)
-
processDir_folder_5
private void processDir_folder_5(java.io.File dir)
-
sortKeyImage_4
public void sortKeyImage_4()
-
traverse_folder_5_old
private void traverse_folder_5_old(java.io.File dir)
-
traverse_folder_5
private void traverse_folder_5(java.io.File dir)
-
traverse_folder_5
private void traverse_folder_5(java.io.File dir, int index)
-
processDir_folder_5
private void processDir_folder_5(java.io.File dir, int index)
-
sortKeyImage_5
public void sortKeyImage_5()
-
printImages
public void printImages()
Debugger for test the image and VOis reading.
-
algorithmPerformed
public void algorithmPerformed(AlgorithmBase algorithm)
This method is required if the AlgorithmPerformed interface is implemented. It is called by the algorithms when it has completed or failed to to complete, so that the dialog can be display the result image and/or clean up.- Specified by:
algorithmPerformedin interfaceAlgorithmInterface- Parameters:
algorithm- Algorithm that caused the event.
-
callAlgorithm
public void callAlgorithm()
Driver function to read image and VOIs, and convert each 3D image to 2D slices.
-
conversion
public void conversion()
-
generateContours
private void generateContours()
-
calculateTransform_resol_fix_2D
public ModelImage calculateTransform_resol_fix_2D(ModelImage image, float resolution)
-
calculateTransform_resol_fix_3D
public ModelImage calculateTransform_resol_fix_3D(ModelImage image, float resolution)
-
optimizeContours
public JDialogPromise12_2DVolumetrieHED_map.curvePair optimizeContours(ModelImage maskImage, ModelImage gradMagImage)
-
getScore
public JDialogPromise12_2DVolumetrieHED_map.curvePair getScore(ModelImage maskImage, ModelImage gradMagImage, float minThreshold, float maxThreshold)
-
calculateTransform
public ModelImage calculateTransform(ModelImage image)
-
saveTestedImages
public void saveTestedImages()
-
saveImages
public void saveImages()
Save the 2D slices and VOIs to user specified dir.
-
savePNGfile
private void savePNGfile(java.lang.String dirName, java.lang.String fileName, ModelImage srcImage, float minIntensity, float maxIntensity, boolean isMask)
-
rotateToStartingPoint_yMid
private void rotateToStartingPoint_yMid(float[] xPts, float[] yPts, int xDim, int yDim)Re-oriented the starting and ending VOIs.- Parameters:
xPts- voi x coordinateyPts- voi y coordinatexDim- image x dimensionyDim- image y dimension
-
rotateToStartingPoint_leftMost
private void rotateToStartingPoint_leftMost(float[] xPts, float[] yPts, int xDim, int yDim)
-
smoothVOI60
public void smoothVOI60(ModelImage maskImage, ModelImage resultImage)
Smooth VOIs to 60 points.- Parameters:
maskImage-resultImage-
-
smoothVOI30
public void smoothVOI30(ModelImage maskImage, ModelImage resultImage)
-
generateBoundaryContours
private void generateBoundaryContours(VOIBase srcContour, ModelImage targetImageSlice)
Convert VOI from one contour to two contours- Parameters:
srcContour- single VOI contourtargetImageSlice- target 2D image slice
-
cropKeyImages
public void cropKeyImages()
Crop key images.
-
loadFiles
public void loadFiles()
load image files and voi files
-
deleteDir
public static boolean deleteDir(java.io.File dir)
Debugger to test dir deletion.- Parameters:
dir-- Returns:
-
readFile
public void readFile()
-
init
public void init()
Initial panel
-
buildKeyImagePanel
public void buildKeyImagePanel()
Panel contains both the 3D image dir and saved 2D slices atlas dir.
-
-