Package gov.nih.mipav.view.dialogs
Class JDialogFaceAnonymizerBET
- 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.JDialogFaceAnonymizerBET
 
 
 
 
 
 
 
 
- 
- 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 JDialogFaceAnonymizerBET extends JDialogScriptableBase implements AlgorithmInterface, ActionDiscovery, ScriptableActionInterface Dialog used to input parameters and start the BET-based face anonymizer.- Author:
- mccreedy
- See Also:
- Serialized Form
 
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from class gov.nih.mipav.view.dialogs.JDialogBaseJDialogBase.CancelAction, JDialogBase.HelpAction, JDialogBase.OKAction
 - 
Nested classes/interfaces inherited from class javax.swing.JDialogjavax.swing.JDialog.AccessibleJDialog
 - 
Nested classes/interfaces inherited from class java.awt.Dialogjava.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
 - 
Nested classes/interfaces inherited from class java.awt.Windowjava.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
 
- 
 - 
Field SummaryFields Modifier and Type Field Description private AlgorithmFaceAnonymizerBETdefaceAlgoThe algorithm corresponding to this dialog box.private booleanestimateWithSphereBETFlag indicates BET should approximate initial brain by sphere.private javax.swing.JCheckBoxestimateWithSphereCheckboxCheck box corresponding toestimateSphereBET.private javax.swing.JTextFieldextraBrainPaddingFieldText field corresponding to brain padding parameter.private intextraMMsToPadFaceAnonymizer parameter.private intfaceOrientationIndicates face orientation of the image.private static intFACING_DOWNIndicates axial image with y-axis oriented posterior to anterior.private static intFACING_INTO_SCREENIndicates coronal image with z-axis oriented posterior to anterior.private static intFACING_LEFTIndicates sagittal image with x-axis oriented anterior to posterior.private static intFACING_OUT_OF_SCREENIndicates coronal image with z-axis oriented anterior to posterior.private static intFACING_RIGHTIndicates sagittal image with x-axis oriented posterior to anterior.private static intFACING_UNKNOWNFace orientation not obtained from file information.private static intFACING_UPIndicates axial with y-axis oriented anterior to posterior.private javax.swing.JRadioButtonfacingDownRadioButton for facing down image.private javax.swing.JRadioButtonfacingIntoRadioButton for facing into the screen image.private javax.swing.JRadioButtonfacingLeftRadioButton for facing left image.private javax.swing.JRadioButtonfacingOutRadioButton for facing out image.private javax.swing.JRadioButtonfacingRightRadioButton for facing right image.private javax.swing.JRadioButtonfacingUpRadioButton for facing up image.private floatimageInfluenceBETthe depth to calculate in approximating brain maximum and minimum intensities.private javax.swing.JTextFieldimageInfluenceFieldThe text field corresponding toimageInfluenceField.private static java.lang.StringPARAM_BET_DO_SPHERE_ESTIMATIONFlag indicates BET should approximate initial brain by sphere.private static java.lang.StringPARAM_BET_IMG_INFLUENCEBET based parameter for the depth to calculate in approximating brain maximum and minimum intensities.private static java.lang.StringPARAM_BET_STIFFNESSControls the stiffness of the brain approximation mesh.private static java.lang.StringPARAM_EXTRA_MMS_TO_PADMillimeters to add to brain mask.private static java.lang.StringPARAM_FACE_ORIENTATIONThe face orientation parameter.private static longserialVersionUIDUse serialVersionUID for interoperability.private ModelImagesrcImageThe image that face anonymization will be performed on.private floatstiffnessBETControls the stiffness of the brain approximation mesh.private javax.swing.JTextFieldstiffnessFieldThe text field corresponding tostiffnessBET.- 
Fields inherited from class gov.nih.mipav.view.dialogs.JDialogScriptableBasedisplayInNewFrame, isComplete, scriptParameters
 - 
Fields inherited from class gov.nih.mipav.view.dialogs.JDialogBaseapplyButton, bar, cancelButton, cancelFlag, closeButton, HELP, helpButton, mainDialogPanel, NEW, OKButton, parentFrame, progressBar, REPLACE, runInSeparateThread, runningScriptFlag, runQuiet, serif12, serif12B, voiManager
 - 
Fields inherited from class javax.swing.JDialogaccessibleContext, rootPane, rootPaneCheckingEnabled
 - 
Fields inherited from class java.awt.ComponentBOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
- 
 - 
Constructor SummaryConstructors Constructor Description JDialogFaceAnonymizerBET()Empty constructor needed for dynamic instantiation (used during scripting).JDialogFaceAnonymizerBET(java.awt.Frame theParentFrame, ModelImage im)Creates the face anonymizer dialog.
 - 
Method SummaryAll Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactionPerformed(java.awt.event.ActionEvent event)Presently only the script function calls this method.voidalgorithmPerformed(AlgorithmBase algorithm)This method is required if the AlgorithmPerformed interface is implemented.protected voidcallAlgorithm()Calls the algorithm.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).ActionMetadatagetActionMetadata()Return meta-information about this discoverable action for categorization and labeling purposes.private static intgetFaceOrientation(ModelImage img)Return the guess at the face's orientation based on the image orientation information.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).private voidinit()Makes the GUI elements of the dialog.booleanisActionComplete()Returns whether the action has successfully completed its execution.voidsetGUIFromParams()Set the dialog GUI using the script parameters while running this algorithm as part of a script.private booleansetVariables()Use the GUI results to set up the variables needed to run the algorithm.voidstoreParamsFromGUI()Record the parameters just used to run this algorithm in a script.- 
Methods inherited from class gov.nih.mipav.view.dialogs.JDialogScriptableBasedoPostAlgorithmActions, getDialogActionString, insertScriptLine, isComplete, scriptRun, setComplete
 - 
Methods inherited from class gov.nih.mipav.view.dialogs.JDialogBasebuildApplyButton, 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.JDialogaddImpl, 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.DialogaddNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, show, toBack
 - 
Methods inherited from class java.awt.WindowaddPropertyChangeListener, 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.Containeradd, 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.Componentaction, 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.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 - 
Methods inherited from interface gov.nih.mipav.view.dialogs.ActionDiscoveryscriptRun
 - 
Methods inherited from interface gov.nih.mipav.model.scripting.ScriptableActionInterfaceinsertScriptLine, scriptRun
 
- 
 
- 
- 
- 
Field Detail- 
serialVersionUIDprivate static final long serialVersionUID Use serialVersionUID for interoperability.- See Also:
- Constant Field Values
 
 - 
FACING_UNKNOWNprivate static final int FACING_UNKNOWN Face orientation not obtained from file information.- See Also:
- Constant Field Values
 
 - 
FACING_RIGHTprivate static final int FACING_RIGHT Indicates sagittal image with x-axis oriented posterior to anterior.- See Also:
- Constant Field Values
 
 - 
FACING_LEFTprivate static final int FACING_LEFT Indicates sagittal image with x-axis oriented anterior to posterior.- See Also:
- Constant Field Values
 
 - 
FACING_DOWNprivate static final int FACING_DOWN Indicates axial image with y-axis oriented posterior to anterior.- See Also:
- Constant Field Values
 
 - 
FACING_UPprivate static final int FACING_UP Indicates axial with y-axis oriented anterior to posterior.- See Also:
- Constant Field Values
 
 - 
FACING_INTO_SCREENprivate static final int FACING_INTO_SCREEN Indicates coronal image with z-axis oriented posterior to anterior.- See Also:
- Constant Field Values
 
 - 
FACING_OUT_OF_SCREENprivate static final int FACING_OUT_OF_SCREEN Indicates coronal image with z-axis oriented anterior to posterior.- See Also:
- Constant Field Values
 
 - 
PARAM_FACE_ORIENTATIONprivate static final java.lang.String PARAM_FACE_ORIENTATION The face orientation parameter.- See Also:
- Constant Field Values
 
 - 
PARAM_EXTRA_MMS_TO_PADprivate static final java.lang.String PARAM_EXTRA_MMS_TO_PAD Millimeters to add to brain mask.- See Also:
- Constant Field Values
 
 - 
PARAM_BET_DO_SPHERE_ESTIMATIONprivate static final java.lang.String PARAM_BET_DO_SPHERE_ESTIMATION Flag indicates BET should approximate initial brain by sphere.- See Also:
- Constant Field Values
 
 - 
PARAM_BET_IMG_INFLUENCEprivate static final java.lang.String PARAM_BET_IMG_INFLUENCE BET based parameter for the depth to calculate in approximating brain maximum and minimum intensities.- See Also:
- Constant Field Values
 
 - 
PARAM_BET_STIFFNESSprivate static final java.lang.String PARAM_BET_STIFFNESS Controls the stiffness of the brain approximation mesh.- See Also:
- Constant Field Values
 
 - 
defaceAlgoprivate AlgorithmFaceAnonymizerBET defaceAlgo The algorithm corresponding to this dialog box.
 - 
estimateWithSphereBETprivate boolean estimateWithSphereBET Flag indicates BET should approximate initial brain by sphere. Initially set to false.
 - 
estimateWithSphereCheckboxprivate javax.swing.JCheckBox estimateWithSphereCheckbox Check box corresponding toestimateSphereBET.
 - 
extraBrainPaddingFieldprivate javax.swing.JTextField extraBrainPaddingField Text field corresponding to brain padding parameter.
 - 
extraMMsToPadprivate int extraMMsToPad FaceAnonymizer parameter. Guarantees that the extracted brain will be avoided by the specified number of millimeters. Initially set to 20.
 - 
faceOrientationprivate int faceOrientation Indicates face orientation of the image.
 - 
facingDownRadioprivate javax.swing.JRadioButton facingDownRadio Button for facing down image.
 - 
facingIntoRadioprivate javax.swing.JRadioButton facingIntoRadio Button for facing into the screen image.
 - 
facingLeftRadioprivate javax.swing.JRadioButton facingLeftRadio Button for facing left image.
 - 
facingOutRadioprivate javax.swing.JRadioButton facingOutRadio Button for facing out image.
 - 
facingRightRadioprivate javax.swing.JRadioButton facingRightRadio Button for facing right image.
 - 
facingUpRadioprivate javax.swing.JRadioButton facingUpRadio Button for facing up image.
 - 
imageInfluenceBETprivate float imageInfluenceBET the depth to calculate in approximating brain maximum and minimum intensities. Initially set to .1
 - 
imageInfluenceFieldprivate javax.swing.JTextField imageInfluenceField The text field corresponding toimageInfluenceField.
 - 
srcImageprivate ModelImage srcImage The image that face anonymization will be performed on.
 - 
stiffnessBETprivate float stiffnessBET Controls the stiffness of the brain approximation mesh. Initially set to 0.15.
 - 
stiffnessFieldprivate javax.swing.JTextField stiffnessField The text field corresponding tostiffnessBET.
 
- 
 - 
Constructor Detail- 
JDialogFaceAnonymizerBETpublic JDialogFaceAnonymizerBET() Empty constructor needed for dynamic instantiation (used during scripting).
 - 
JDialogFaceAnonymizerBETpublic JDialogFaceAnonymizerBET(java.awt.Frame theParentFrame, ModelImage im)Creates the face anonymizer dialog.- Parameters:
- theParentFrame- Parent frame.
- im- Source image.
 
 
- 
 - 
Method Detail- 
actionPerformedpublic void actionPerformed(java.awt.event.ActionEvent event) Presently only the script function calls this method. When the script sends this dialog the action command, this method calls run.- Specified by:
- actionPerformedin interface- java.awt.event.ActionListener
- Overrides:
- actionPerformedin class- JDialogBase
- Parameters:
- event- event that triggers function
 
 - 
algorithmPerformedpublic 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 display the result image and/or clean up.- Specified by:
- algorithmPerformedin interface- AlgorithmInterface
- Parameters:
- algorithm- Algorithm that caused the event.
 
 - 
setGUIFromParamspublic void setGUIFromParams() Set the dialog GUI using the script parameters while running this algorithm as part of a script.- Specified by:
- setGUIFromParamsin class- JDialogScriptableBase
 
 - 
storeParamsFromGUIpublic void storeParamsFromGUI() throws ParserExceptionRecord the parameters just used to run this algorithm in a script.- Specified by:
- storeParamsFromGUIin class- JDialogScriptableBase
- Throws:
- ParserException- If there is a problem creating/recording the new parameters.
 
 - 
callAlgorithmprotected void callAlgorithm() Calls the algorithm.- Specified by:
- callAlgorithmin class- JDialogScriptableBase
 
 - 
getFaceOrientationprivate static int getFaceOrientation(ModelImage img) Return the guess at the face's orientation based on the image orientation information.- Parameters:
- img- the image to guess from
- Returns:
- the direction the face is likely pointing in (or FACING_UNKNOWN if a guess cannot be made)
 
 - 
initprivate void init() Makes the GUI elements of the dialog. Not called at present because it is not necessary.
 - 
setVariablesprivate boolean setVariables() Use the GUI results to set up the variables needed to run the algorithm.- Returns:
- trueif parameters set successfully,- falseotherwise.
 
 - 
getActionMetadatapublic ActionMetadata getActionMetadata() Return meta-information about this discoverable action for categorization and labeling purposes.- Specified by:
- getActionMetadatain interface- ActionDiscovery
- Returns:
- Metadata for this action.
 
 - 
createInputParameterspublic 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 interface- ActionDiscovery
- Returns:
- A parameter table listing the inputs of this algorithm.
 
 - 
createOutputParameterspublic 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 interface- ActionDiscovery
- Returns:
- A parameter table listing the outputs of this algorithm.
 
 - 
getOutputImageNamepublic 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 interface- ActionDiscovery
- 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.
 
 - 
isActionCompletepublic boolean isActionComplete() Returns whether the action has successfully completed its execution.- Specified by:
- isActionCompletein interface- ActionDiscovery
- Returns:
- True, if the action is complete. False, if the action failed or is still running.
 
 
- 
 
-