Package gov.nih.mipav.view.dialogs
Class JDialogRegistrationOAR3D
- 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.dialogs.JDialogScriptableBase
-
- gov.nih.mipav.view.dialogs.JDialogRegistrationOAR3D
-
- All Implemented Interfaces:
AlgorithmInterface,ScriptableActionInterface,DialogDefaultsInterface,ActionDiscovery,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 JDialogRegistrationOAR3D extends JDialogScriptableBase implements AlgorithmInterface, ActionDiscovery
Dialog to get user input, then call algorithm RegistrationOAR3D. The user must designate a reference image, a type of cost function, the degrees of freedom used in the registration, and the range and rate of the coarse and fine samples. These are set to defaults most likely to give a fast and accurate registration. The user may also select weighted images to discount parts of the reference and input images in the registration. These must be the same size as their respective originals - i.e., the reference weight image must be the same size as the reference image. The user can select to display the registered image. Regardless of whether this is selected, the matrix will be stored in a file in the user's working directory and also in the original image's transformation matrix.- Author:
- Neva Cherniavsky
- See Also:
AlgorithmCostFunctions,AlgorithmRegOAR3D, Serialized Form
-
-
Nested Class Summary
-
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 javax.swing.JDialogadvancedDialogVariables for Advanced Settings dialog.private javax.swing.JButtonbuttonWeightInputDOCUMENT ME!private javax.swing.JButtonbuttonWeightRefDOCUMENT ME!private booleancalcCOGDOCUMENT ME!private javax.swing.JCheckBoxcalcCOGCheckboxDOCUMENT ME!private javax.swing.JCheckBoxcalcLSBoxDOCUMENT ME!private javax.swing.JPanelcoarsePanelXDOCUMENT ME!private javax.swing.JPanelcoarsePanelYDOCUMENT ME!private javax.swing.JPanelcoarsePanelZDOCUMENT ME!private javax.swing.JTextFieldcoarseRateTextXDOCUMENT ME!private javax.swing.JTextFieldcoarseRateTextYDOCUMENT ME!private javax.swing.JTextFieldcoarseRateTextZDOCUMENT ME!private floatcoarseRateXDOCUMENT ME!private floatcoarseRateYDOCUMENT ME!private floatcoarseRateZDOCUMENT ME!private javax.swing.JComboBoxcomboBoxCostFunctDOCUMENT ME!private javax.swing.JComboBoxcomboBoxDOFDOCUMENT ME!private javax.swing.JComboBoxcomboBoxImageDOCUMENT ME!private javax.swing.JComboBoxcomboBoxInterpDOCUMENT ME!private javax.swing.JComboBoxcomboBoxInterp2DOCUMENT ME!private javax.swing.JComboBoxcomboBoxSearchAlgoprivate intcostDOCUMENT ME!private java.lang.StringcostNameDOCUMENT ME!private intdataTypeprivate java.lang.StringdirectoryWInputDOCUMENT ME!private java.lang.StringdirectoryWRefDOCUMENT ME!private booleandisplayTransformDOCUMENT ME!private booleandoColorDOCUMENT ME!private intDOFDOCUMENT ME!private booleandoJTEMWhen true, the full version of JTEM Powell search is used in the registration algorithm.private booleandoLSDOCUMENT ME!private booleandoMultiThreadprivate booleandoSubsampleDOCUMENT ME!private intELSUNCprivate booleanfastModeDOCUMENT ME!private javax.swing.JCheckBoxfastModeCheckboxDOCUMENT ME!private java.lang.StringfileNameWInputDOCUMENT ME!private java.lang.StringfileNameWRefDOCUMENT ME!private floatfillValueprivate javax.swing.JPanelfinePanelXDOCUMENT ME!private javax.swing.JPanelfinePanelYDOCUMENT ME!private javax.swing.JPanelfinePanelZDOCUMENT ME!private javax.swing.JTextFieldfineRateTextXDOCUMENT ME!private javax.swing.JTextFieldfineRateTextYDOCUMENT ME!private javax.swing.JTextFieldfineRateTextZDOCUMENT ME!private floatfineRateXDOCUMENT ME!private floatfineRateYDOCUMENT ME!private floatfineRateZDOCUMENT ME!private java.awt.GridBagConstraintsgbcDOCUMENT ME!private doubleimageMaxprivate doubleimageMinprivate ModelImageinputWeightImageDOCUMENT ME!private intinterpDOCUMENT ME!private intinterp2DOCUMENT ME!private javax.swing.JCheckBoxjtemCheckboxTurns on the JTEM full version of Powell's algorithm on or offprivate javax.swing.JLabellabelInterp2DOCUMENT ME!private intLEVENBERG_MARQUARDTprivate booleanlsCompletedDOCUMENT ME!private ModelImagelsImageDOCUMENT ME!private TransMatrixlsMatrixDOCUMENT ME!private ModelImagematchImageDOCUMENT ME!private javax.swing.JComboBoxmatrixComboBoxprivate java.lang.StringmatrixDirectoryprivate javax.swing.JLabelmatrixLabelprivate intmaxIterationsDOCUMENT ME!private intmaxIterations_defDOCUMENT ME!private javax.swing.JTextFieldmaxIterationsTextDOCUMENT ME!private booleanmaxOfMinResolDOCUMENT ME!private javax.swing.JCheckBoxminMaxCheckboxDOCUMENT ME!private javax.swing.JCheckBoxmultiThreadCheckBoxprivate intNL2SOLprivate javax.swing.JRadioButtonnoneRadioDOCUMENT ME!private intnumMinimaDOCUMENT ME!private intnumMinima_defDOCUMENT ME!private javax.swing.JTextFieldnumMinTextDOCUMENT ME!private javax.swing.JComboBoxoutOfBoundsComboBoxprivate intoutOfBoundsIndexTells how to select fill value for out of bounds data 0 for image minimum 1 for NaN for float, zero otherwise. 2 for user defined 3 for image maximumprivate javax.swing.JLabeloutOfBoundsLabelprivate intPOWELLprivate ModelImagerefImageDOCUMENT ME!private ModelImagerefWeightImageDOCUMENT ME!private AlgorithmRegOAR3Dreg3DOCUMENT ME!private AlgorithmRegELSUNCOAR3Dreg3Eprivate ModelImageresultImageDOCUMENT ME!private javax.swing.JTextFieldrotateBeginTextXDOCUMENT ME!private javax.swing.JTextFieldrotateBeginTextYDOCUMENT ME!private javax.swing.JTextFieldrotateBeginTextZDOCUMENT ME!private floatrotateBeginXDOCUMENT ME!private floatrotateBeginYDOCUMENT ME!private floatrotateBeginZDOCUMENT ME!private javax.swing.JTextFieldrotateEndTextXDOCUMENT ME!private javax.swing.JTextFieldrotateEndTextYDOCUMENT ME!private javax.swing.JTextFieldrotateEndTextZDOCUMENT ME!private floatrotateEndXDOCUMENT ME!private floatrotateEndYDOCUMENT ME!private floatrotateEndZDOCUMENT ME!private javax.swing.JPanelrotatePanelDOCUMENT ME!private javax.swing.JPanelrotateRangePanelXDOCUMENT ME!private javax.swing.JPanelrotateRangePanelYDOCUMENT ME!private javax.swing.JPanelrotateRangePanelZDOCUMENT ME!private javax.swing.JCheckBoxsampleCheckboxDOCUMENT ME!private intsearchAlgorithmprivate static longserialVersionUIDUse serialVersionUID for interoperability.private javax.swing.JTextFieldtextInputDOCUMENT ME!private javax.swing.JTextFieldtextRefDOCUMENT ME!private javax.swing.JCheckBoxtransformCheckboxDOCUMENT ME!private ViewUserInterfaceUIDOCUMENT ME!private javax.swing.JCheckBoxuniversalCheckboxDOCUMENT ME!private javax.swing.JLabeluserDirectoryLabelprivate javax.swing.JTextFielduserDirectoryTextprivate javax.swing.JLabelvalueLabelprivate javax.swing.JTextFieldvalueTextprivate javax.swing.JRadioButtonvoiRadioDOCUMENT ME!private booleanvoisOnlyDOCUMENT ME!private booleanweightedDOCUMENT ME!private javax.swing.JRadioButtonweightRadioDOCUMENT ME!private javax.swing.JRadioButtonxRadioDOCUMENT ME!private booleanxSelectedDOCUMENT ME!private javax.swing.JRadioButtonyRadioDOCUMENT ME!private booleanySelectedDOCUMENT ME!private javax.swing.JRadioButtonzRadioDOCUMENT ME!-
Fields inherited from class gov.nih.mipav.view.dialogs.JDialogScriptableBase
displayInNewFrame, isComplete, scriptParameters
-
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 JDialogRegistrationOAR3D()Empty constructor needed for dynamic instantiation (used during scripting).JDialogRegistrationOAR3D(java.awt.Frame theParentFrame, ModelImage im)Creates new dialog for user to choose type of linear image registration algorithm to run.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactionPerformed(java.awt.event.ActionEvent event)Closes dialog box when the OK button is pressed, sets the variables, and calls the algorithm.voidalgorithmPerformed(AlgorithmBase algorithm)This method is required if the AlgorithmPerformed interface is implemented.private javax.swing.JDialogbuildAdvancedDialog(int maxIter, int numMinima)Build advanced settings dialog.private javax.swing.JComboBoxbuildImgComboBox(ModelImage image)Builds a list of images.protected voidcallAlgorithm()Calls the algorithm with the set-up parameters.ParameterTablecreateInputParameters()Returns a table listing the input parameters of this algorithm (which should match up with the scripting parameters used insetGUIFromParams()).ParameterTablecreateOutputParameters()Returns a table listing the output parameters of this algorithm (usually just labels used to obtain output image names later).protected voiddoPostAlgorithmActions()Store the result image in the script runner's image table now that the action execution is finished.ActionMetadatagetActionMetadata()Return meta-information about this discoverable action for categorization and labeling purposes.java.lang.StringgetOutputImageName(java.lang.String imageParamName)Returns the name of an image output by this algorithm, the image returned depends on the parameter label given (which can be used to retrieve the image object from the image registry).ModelImagegetResultImage()Accessor to get the result image.private voidinit()Initializes the GUI components and displays the dialog.booleanisActionComplete()Returns whether the action has successfully completed its execution.voiditemStateChanged(java.awt.event.ItemEvent event)Changes the interpolation box to enabled or disabled depending on if the transform box is checked or not.voidsetAdvancedSettings(int maxIterations, int numMinima)Accessor to set the advanced settings.voidsetCalcCOG(boolean flag)Accessor to set the whether or not to calculate the center of gravity (mass).voidsetCoarseBeginX(float x)Accessor to set the coarse sample beginX.voidsetCoarseBeginY(float y)Accessor to set the coarse sample beginY.voidsetCoarseBeginZ(float z)Accessor to set the coarse sample beginZ.voidsetCoarseEndX(float x)Accessor to set the coarse sample endX.voidsetCoarseEndY(float y)Accessor to set the coarse sample endY.voidsetCoarseEndZ(float z)Accessor to set the coarse sample endZ.voidsetCoarseRateX(float x)Accessor to set the coarse sample rateX.voidsetCoarseRateY(float y)Accessor to set the coarse sample rateY.voidsetCoarseRateZ(float z)Accessor to set the coarse sample rateZ.voidsetCostChoice(int x)Accessor to set the choice of cost function.voidsetDisplayTransform(boolean flag)Accessor to set the display transform flag.voidsetDOF(int x)Accessor to set the degrees of freedom.voidsetFastMode(boolean flag)Accessor to set whether or not to execute the fast mode (skip sub sample and goto last final optimization).voidsetFillValue(float fillValue)Accessor to set intensity value for out of bounds datavoidsetFineRateX(float x)Accessor to set the fine sample rateX.voidsetFineRateY(float y)Accessor to set the fine sample rateY.voidsetFineRateZ(float z)Accessor to set the fine sample rateZ.protected voidsetGUIFromParams()Set the dialog GUI using the script parameters while running this algorithm as part of a script.voidsetInputWeightImage(ModelImage im)Accessor to set the input weight image.voidsetInterp(int x)Accessor to set the initial interpolation.voidsetInterp2(int x)Accessor to set the final interpolation.voidsetMatrixDirectory(java.lang.String matrixDirectory)Accessor to set directory in which the matrix file is storedvoidsetMaxOfMinResol(boolean flag)Accessor to set the maximum resolutions flag.voidsetMultiThread(boolean doMultiThread)Accessor to set whether or not powell's algorithm uses multithreadingvoidsetOutOfBoundsIndex(int outOfBoundsIndex)tells how to select fill value for out of bounds data 0 for image minimum 1 for NaN for float, zero otherwise. 2 for user defined 3 for image maxvoidsetReferenceImage(ModelImage im)Accessor to set the reference image.voidsetReferenceWeightImage(ModelImage im)Accessor to set the reference weight image.voidsetSearchAlgorithm(int searchAlgorithm)voidsetSubsample(boolean doSubsample)Accessor to set whether or not subsampling occurs.private booleansetVariables()Sets the variables needed to call the registration algorithm based on the values entered in the dialog.voidsetVoisOnly(boolean flag)Accessor to set the VOIs only flag.voidsetWeighted(boolean flag)Accessor to set the weighted images flag.private voidshowX()DOCUMENT ME!private voidshowY()DOCUMENT ME!private voidshowZ()DOCUMENT ME!protected voidstoreParamsFromGUI()Record the parameters just used to run this algorithm in a script.private booleantestType(int type, float value)Determine if the value is in the image type range and within the float range since AlgorithmTransform does not use double buffers.-
Methods inherited from class gov.nih.mipav.view.dialogs.JDialogScriptableBase
getDialogActionString, insertScriptLine, isComplete, scriptRun, setComplete
-
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, 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
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface gov.nih.mipav.view.dialogs.ActionDiscovery
scriptRun
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
Use serialVersionUID for interoperability.- See Also:
- Constant Field Values
-
POWELL
private final int POWELL
- See Also:
- Constant Field Values
-
ELSUNC
private final int ELSUNC
- See Also:
- Constant Field Values
-
LEVENBERG_MARQUARDT
private final int LEVENBERG_MARQUARDT
- See Also:
- Constant Field Values
-
NL2SOL
private final int NL2SOL
- See Also:
- Constant Field Values
-
searchAlgorithm
private int searchAlgorithm
-
advancedDialog
private javax.swing.JDialog advancedDialog
Variables for Advanced Settings dialog.
-
maxIterationsText
private javax.swing.JTextField maxIterationsText
DOCUMENT ME!
-
numMinText
private javax.swing.JTextField numMinText
DOCUMENT ME!
-
buttonWeightInput
private javax.swing.JButton buttonWeightInput
DOCUMENT ME!
-
buttonWeightRef
private javax.swing.JButton buttonWeightRef
DOCUMENT ME!
-
calcCOG
private boolean calcCOG
DOCUMENT ME!
-
calcCOGCheckbox
private javax.swing.JCheckBox calcCOGCheckbox
DOCUMENT ME!
-
calcLSBox
private javax.swing.JCheckBox calcLSBox
DOCUMENT ME!
-
multiThreadCheckBox
private javax.swing.JCheckBox multiThreadCheckBox
-
coarsePanelX
private javax.swing.JPanel coarsePanelX
DOCUMENT ME!
-
coarsePanelY
private javax.swing.JPanel coarsePanelY
DOCUMENT ME!
-
coarsePanelZ
private javax.swing.JPanel coarsePanelZ
DOCUMENT ME!
-
coarseRateTextX
private javax.swing.JTextField coarseRateTextX
DOCUMENT ME!
-
coarseRateTextY
private javax.swing.JTextField coarseRateTextY
DOCUMENT ME!
-
coarseRateTextZ
private javax.swing.JTextField coarseRateTextZ
DOCUMENT ME!
-
comboBoxCostFunct
private javax.swing.JComboBox comboBoxCostFunct
DOCUMENT ME!
-
comboBoxSearchAlgo
private javax.swing.JComboBox comboBoxSearchAlgo
-
comboBoxDOF
private javax.swing.JComboBox comboBoxDOF
DOCUMENT ME!
-
comboBoxImage
private javax.swing.JComboBox comboBoxImage
DOCUMENT ME!
-
comboBoxInterp
private javax.swing.JComboBox comboBoxInterp
DOCUMENT ME!
-
comboBoxInterp2
private javax.swing.JComboBox comboBoxInterp2
DOCUMENT ME!
-
cost
private int cost
DOCUMENT ME!
-
interp
private int interp
DOCUMENT ME!
-
interp2
private int interp2
DOCUMENT ME!
-
DOF
private int DOF
DOCUMENT ME!
-
costName
private java.lang.String costName
DOCUMENT ME!
-
displayTransform
private boolean displayTransform
DOCUMENT ME!
-
doColor
private boolean doColor
DOCUMENT ME!
-
doLS
private boolean doLS
DOCUMENT ME!
-
doMultiThread
private boolean doMultiThread
-
doSubsample
private boolean doSubsample
DOCUMENT ME!
-
doJTEM
private boolean doJTEM
When true, the full version of JTEM Powell search is used in the registration algorithm.
-
fastMode
private boolean fastMode
DOCUMENT ME!
-
fastModeCheckbox
private javax.swing.JCheckBox fastModeCheckbox
DOCUMENT ME!
-
fileNameWRef
private java.lang.String fileNameWRef
DOCUMENT ME!
-
directoryWRef
private java.lang.String directoryWRef
DOCUMENT ME!
-
fileNameWInput
private java.lang.String fileNameWInput
DOCUMENT ME!
-
directoryWInput
private java.lang.String directoryWInput
DOCUMENT ME!
-
finePanelX
private javax.swing.JPanel finePanelX
DOCUMENT ME!
-
finePanelY
private javax.swing.JPanel finePanelY
DOCUMENT ME!
-
finePanelZ
private javax.swing.JPanel finePanelZ
DOCUMENT ME!
-
fineRateTextX
private javax.swing.JTextField fineRateTextX
DOCUMENT ME!
-
fineRateTextY
private javax.swing.JTextField fineRateTextY
DOCUMENT ME!
-
fineRateTextZ
private javax.swing.JTextField fineRateTextZ
DOCUMENT ME!
-
gbc
private java.awt.GridBagConstraints gbc
DOCUMENT ME!
-
inputWeightImage
private ModelImage inputWeightImage
DOCUMENT ME!
-
refWeightImage
private ModelImage refWeightImage
DOCUMENT ME!
-
labelInterp2
private javax.swing.JLabel labelInterp2
DOCUMENT ME!
-
lsCompleted
private boolean lsCompleted
DOCUMENT ME!
-
lsImage
private ModelImage lsImage
DOCUMENT ME!
-
lsMatrix
private TransMatrix lsMatrix
DOCUMENT ME!
-
matchImage
private ModelImage matchImage
DOCUMENT ME!
-
maxIterations_def
private int maxIterations_def
DOCUMENT ME!
-
numMinima_def
private int numMinima_def
DOCUMENT ME!
-
maxIterations
private int maxIterations
DOCUMENT ME!
-
maxOfMinResol
private boolean maxOfMinResol
DOCUMENT ME!
-
minMaxCheckbox
private javax.swing.JCheckBox minMaxCheckbox
DOCUMENT ME!
-
noneRadio
private javax.swing.JRadioButton noneRadio
DOCUMENT ME!
-
numMinima
private int numMinima
DOCUMENT ME!
-
refImage
private ModelImage refImage
DOCUMENT ME!
-
reg3
private AlgorithmRegOAR3D reg3
DOCUMENT ME!
-
reg3E
private AlgorithmRegELSUNCOAR3D reg3E
-
resultImage
private ModelImage resultImage
DOCUMENT ME!
-
rotateBeginTextX
private javax.swing.JTextField rotateBeginTextX
DOCUMENT ME!
-
rotateBeginTextY
private javax.swing.JTextField rotateBeginTextY
DOCUMENT ME!
-
rotateBeginTextZ
private javax.swing.JTextField rotateBeginTextZ
DOCUMENT ME!
-
rotateBeginX
private float rotateBeginX
DOCUMENT ME!
-
rotateEndX
private float rotateEndX
DOCUMENT ME!
-
coarseRateX
private float coarseRateX
DOCUMENT ME!
-
fineRateX
private float fineRateX
DOCUMENT ME!
-
rotateBeginY
private float rotateBeginY
DOCUMENT ME!
-
rotateEndY
private float rotateEndY
DOCUMENT ME!
-
coarseRateY
private float coarseRateY
DOCUMENT ME!
-
fineRateY
private float fineRateY
DOCUMENT ME!
-
rotateBeginZ
private float rotateBeginZ
DOCUMENT ME!
-
rotateEndZ
private float rotateEndZ
DOCUMENT ME!
-
coarseRateZ
private float coarseRateZ
DOCUMENT ME!
-
fineRateZ
private float fineRateZ
DOCUMENT ME!
-
rotateEndTextX
private javax.swing.JTextField rotateEndTextX
DOCUMENT ME!
-
rotateEndTextY
private javax.swing.JTextField rotateEndTextY
DOCUMENT ME!
-
rotateEndTextZ
private javax.swing.JTextField rotateEndTextZ
DOCUMENT ME!
-
rotatePanel
private javax.swing.JPanel rotatePanel
DOCUMENT ME!
-
rotateRangePanelX
private javax.swing.JPanel rotateRangePanelX
DOCUMENT ME!
-
rotateRangePanelY
private javax.swing.JPanel rotateRangePanelY
DOCUMENT ME!
-
rotateRangePanelZ
private javax.swing.JPanel rotateRangePanelZ
DOCUMENT ME!
-
sampleCheckbox
private javax.swing.JCheckBox sampleCheckbox
DOCUMENT ME!
-
jtemCheckbox
private javax.swing.JCheckBox jtemCheckbox
Turns on the JTEM full version of Powell's algorithm on or off
-
textInput
private javax.swing.JTextField textInput
DOCUMENT ME!
-
textRef
private javax.swing.JTextField textRef
DOCUMENT ME!
-
transformCheckbox
private javax.swing.JCheckBox transformCheckbox
DOCUMENT ME!
-
UI
private ViewUserInterface UI
DOCUMENT ME!
-
universalCheckbox
private javax.swing.JCheckBox universalCheckbox
DOCUMENT ME!
-
voiRadio
private javax.swing.JRadioButton voiRadio
DOCUMENT ME!
-
voisOnly
private boolean voisOnly
DOCUMENT ME!
-
weighted
private boolean weighted
DOCUMENT ME!
-
weightRadio
private javax.swing.JRadioButton weightRadio
DOCUMENT ME!
-
xRadio
private javax.swing.JRadioButton xRadio
DOCUMENT ME!
-
xSelected
private boolean xSelected
DOCUMENT ME!
-
yRadio
private javax.swing.JRadioButton yRadio
DOCUMENT ME!
-
ySelected
private boolean ySelected
DOCUMENT ME!
-
zRadio
private javax.swing.JRadioButton zRadio
DOCUMENT ME!
-
outOfBoundsLabel
private javax.swing.JLabel outOfBoundsLabel
-
outOfBoundsComboBox
private javax.swing.JComboBox outOfBoundsComboBox
-
valueLabel
private javax.swing.JLabel valueLabel
-
valueText
private javax.swing.JTextField valueText
-
imageMin
private double imageMin
-
imageMax
private double imageMax
-
dataType
private int dataType
-
outOfBoundsIndex
private int outOfBoundsIndex
Tells how to select fill value for out of bounds data 0 for image minimum 1 for NaN for float, zero otherwise. 2 for user defined 3 for image maximum
-
fillValue
private float fillValue
-
matrixLabel
private javax.swing.JLabel matrixLabel
-
matrixComboBox
private javax.swing.JComboBox matrixComboBox
-
matrixDirectory
private java.lang.String matrixDirectory
-
userDirectoryLabel
private javax.swing.JLabel userDirectoryLabel
-
userDirectoryText
private javax.swing.JTextField userDirectoryText
-
-
Constructor Detail
-
JDialogRegistrationOAR3D
public JDialogRegistrationOAR3D()
Empty constructor needed for dynamic instantiation (used during scripting).
-
JDialogRegistrationOAR3D
public JDialogRegistrationOAR3D(java.awt.Frame theParentFrame, ModelImage im)Creates new dialog for user to choose type of linear image registration algorithm to run.- Parameters:
theParentFrame- Parent frame.im- Source image.
-
-
Method Detail
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent event)
Closes dialog box when the OK button is pressed, sets the variables, and calls the algorithm.- Specified by:
actionPerformedin interfacejava.awt.event.ActionListener- Overrides:
actionPerformedin classJDialogBase- Parameters:
event- Event that triggers function.
-
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 complete.- Specified by:
algorithmPerformedin interfaceAlgorithmInterface- Parameters:
algorithm- Algorithm that caused the event.
-
getResultImage
public ModelImage getResultImage()
Accessor to get the result image.- Returns:
- Result image.
-
itemStateChanged
public void itemStateChanged(java.awt.event.ItemEvent event)
Changes the interpolation box to enabled or disabled depending on if the transform box is checked or not.- Specified by:
itemStateChangedin interfacejava.awt.event.ItemListener- Overrides:
itemStateChangedin classJDialogBase- Parameters:
event- Event that triggered this function.
-
setAdvancedSettings
public void setAdvancedSettings(int maxIterations, int numMinima)Accessor to set the advanced settings.- Parameters:
maxIterations- DOCUMENT ME!numMinima- DOCUMENT ME!
-
setCalcCOG
public void setCalcCOG(boolean flag)
Accessor to set the whether or not to calculate the center of gravity (mass).- Parameters:
flag-truethen calculate center of gravity (mass).
-
setCoarseBeginX
public void setCoarseBeginX(float x)
Accessor to set the coarse sample beginX.- Parameters:
x- Coarse beginX
-
setCoarseBeginY
public void setCoarseBeginY(float y)
Accessor to set the coarse sample beginY.- Parameters:
y- Coarse beginY
-
setCoarseBeginZ
public void setCoarseBeginZ(float z)
Accessor to set the coarse sample beginZ.- Parameters:
z- Coarse beginZ
-
setCoarseEndX
public void setCoarseEndX(float x)
Accessor to set the coarse sample endX.- Parameters:
x- Coarse endX
-
setCoarseEndY
public void setCoarseEndY(float y)
Accessor to set the coarse sample endY.- Parameters:
y- Coarse endY
-
setCoarseEndZ
public void setCoarseEndZ(float z)
Accessor to set the coarse sample endZ.- Parameters:
z- Coarse endZ
-
setCoarseRateX
public void setCoarseRateX(float x)
Accessor to set the coarse sample rateX.- Parameters:
x- Coarse rateX
-
setCoarseRateY
public void setCoarseRateY(float y)
Accessor to set the coarse sample rateY.- Parameters:
y- Coarse rateY
-
setCoarseRateZ
public void setCoarseRateZ(float z)
Accessor to set the coarse sample rateZ.- Parameters:
z- Coarse rateZ
-
setCostChoice
public void setCostChoice(int x)
Accessor to set the choice of cost function.- Parameters:
x- Cost function.
-
setDisplayTransform
public void setDisplayTransform(boolean flag)
Accessor to set the display transform flag.- Parameters:
flag-truemeans display the transformed image.
-
setDOF
public void setDOF(int x)
Accessor to set the degrees of freedom.- Parameters:
x- Degrees of freedom
-
setFastMode
public void setFastMode(boolean flag)
Accessor to set whether or not to execute the fast mode (skip sub sample and goto last final optimization).- Parameters:
flag-truethen skip to level one (last ) optimization.
-
setFineRateX
public void setFineRateX(float x)
Accessor to set the fine sample rateX.- Parameters:
x- Fine rateX
-
setFineRateY
public void setFineRateY(float y)
Accessor to set the fine sample rateY.- Parameters:
y- Fine rateY
-
setFineRateZ
public void setFineRateZ(float z)
Accessor to set the fine sample rateZ.- Parameters:
z- Fine rateZ
-
setInputWeightImage
public void setInputWeightImage(ModelImage im)
Accessor to set the input weight image.- Parameters:
im- Input weight image.
-
setInterp
public void setInterp(int x)
Accessor to set the initial interpolation.- Parameters:
x- Interpolation
-
setInterp2
public void setInterp2(int x)
Accessor to set the final interpolation.- Parameters:
x- Interpolation
-
setMaxOfMinResol
public void setMaxOfMinResol(boolean flag)
Accessor to set the maximum resolutions flag.- Parameters:
flag-truethen use the maximum of minimums of the resolutions of the images.
-
setReferenceImage
public void setReferenceImage(ModelImage im)
Accessor to set the reference image.- Parameters:
im- Reference image.
-
setReferenceWeightImage
public void setReferenceWeightImage(ModelImage im)
Accessor to set the reference weight image.- Parameters:
im- Reference weight image.
-
setSubsample
public void setSubsample(boolean doSubsample)
Accessor to set whether or not subsampling occurs.- Parameters:
doSubsample- DOCUMENT ME!
-
setSearchAlgorithm
public void setSearchAlgorithm(int searchAlgorithm)
- Parameters:
searchAlgorithm-
-
setMultiThread
public void setMultiThread(boolean doMultiThread)
Accessor to set whether or not powell's algorithm uses multithreading- Parameters:
doMultiThread-
-
setVoisOnly
public void setVoisOnly(boolean flag)
Accessor to set the VOIs only flag.- Parameters:
flag-truethen only register the parts of the images in the VOIs.
-
setWeighted
public void setWeighted(boolean flag)
Accessor to set the weighted images flag.- Parameters:
flag-truemeans there are weighted images.
-
setOutOfBoundsIndex
public void setOutOfBoundsIndex(int outOfBoundsIndex)
tells how to select fill value for out of bounds data 0 for image minimum 1 for NaN for float, zero otherwise. 2 for user defined 3 for image max- Parameters:
outOfBoundsIndex-
-
setFillValue
public void setFillValue(float fillValue)
Accessor to set intensity value for out of bounds data- Parameters:
fillValue-
-
setMatrixDirectory
public void setMatrixDirectory(java.lang.String matrixDirectory)
Accessor to set directory in which the matrix file is stored- Parameters:
matrixDirectory-
-
callAlgorithm
protected void callAlgorithm()
Calls the algorithm with the set-up parameters.- Specified by:
callAlgorithmin classJDialogScriptableBase
-
doPostAlgorithmActions
protected void doPostAlgorithmActions()
Store the result image in the script runner's image table now that the action execution is finished.- Overrides:
doPostAlgorithmActionsin classJDialogScriptableBase
-
setGUIFromParams
protected void setGUIFromParams()
Set the dialog GUI using the script parameters while running this algorithm as part of a script.- Specified by:
setGUIFromParamsin classJDialogScriptableBase
-
storeParamsFromGUI
protected void storeParamsFromGUI() throws ParserExceptionRecord the parameters just used to run this algorithm in a script.- Specified by:
storeParamsFromGUIin classJDialogScriptableBase- Throws:
ParserException- If there is a problem creating/recording the new parameters.
-
buildAdvancedDialog
private javax.swing.JDialog buildAdvancedDialog(int maxIter, int numMinima)Build advanced settings dialog. Returns JDialog.- Parameters:
bracketBound- DOCUMENT ME!maxIter- DOCUMENT ME!numMinima- DOCUMENT ME!- Returns:
- DOCUMENT ME!
-
buildImgComboBox
private javax.swing.JComboBox buildImgComboBox(ModelImage image)
Builds a list of images. Returns combobox.- Parameters:
image- DOCUMENT ME!- Returns:
- Newly created combo box.
-
init
private void init()
Initializes the GUI components and displays the dialog.
-
setVariables
private boolean setVariables()
Sets the variables needed to call the registration algorithm based on the values entered in the dialog.- Returns:
trueif the variables are properly set,falseotherwise.
-
testType
private boolean testType(int type, float value)Determine if the value is in the image type range and within the float range since AlgorithmTransform does not use double buffers.- Parameters:
type- image typevalue- value tested- Returns:
- true if value is within acceptable range
-
showX
private void showX()
DOCUMENT ME!
-
showY
private void showY()
DOCUMENT ME!
-
showZ
private void showZ()
DOCUMENT ME!
-
getActionMetadata
public ActionMetadata getActionMetadata()
Return meta-information about this discoverable action for categorization and labeling purposes.- Specified by:
getActionMetadatain interfaceActionDiscovery- Returns:
- Metadata for this action.
-
createInputParameters
public ParameterTable createInputParameters()
Returns a table listing the input parameters of this algorithm (which should match up with the scripting parameters used insetGUIFromParams()).- Specified by:
createInputParametersin interfaceActionDiscovery- Returns:
- A parameter table listing the inputs of this algorithm.
-
createOutputParameters
public ParameterTable createOutputParameters()
Returns a table listing the output parameters of this algorithm (usually just labels used to obtain output image names later).- Specified by:
createOutputParametersin interfaceActionDiscovery- Returns:
- A parameter table listing the outputs of this algorithm.
-
getOutputImageName
public java.lang.String getOutputImageName(java.lang.String imageParamName)
Returns the name of an image output by this algorithm, the image returned depends on the parameter label given (which can be used to retrieve the image object from the image registry).- Specified by:
getOutputImageNamein interfaceActionDiscovery- Parameters:
imageParamName- The output image parameter label for which to get the image name.- Returns:
- The image name of the requested output image parameter label.
-
isActionComplete
public boolean isActionComplete()
Returns whether the action has successfully completed its execution.- Specified by:
isActionCompletein interfaceActionDiscovery- Returns:
- True, if the action is complete. False, if the action failed or is still running.
-
-