Class JDialogKernelRegression

    • Nested Class Summary

      • 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
      • Nested classes/interfaces inherited from class java.awt.Container

        java.awt.Container.AccessibleAWTContainer
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void actionPerformed​(java.awt.event.ActionEvent event)
      Closes dialog box when the OK button is pressed, sets variables and calls algorithm.
      void algorithmPerformed​(AlgorithmBase algorithm)
      This method is required if the AlgorithmPerformed interface is implemented.
      protected void callAlgorithm()
      Once all the necessary variables are set, call the Kernel Regression algorithm based on what type of image this is and whether or not there is a separate destination image.
      ParameterTable createInputParameters()
      Returns a table listing the input parameters of this algorithm (which should match up with the scripting parameters used in setGUIFromParams()).
      ParameterTable createOutputParameters()
      Returns a table listing the output parameters of this algorithm (usually just labels used to obtain output image names later).
      protected void doPostAlgorithmActions()
      Store the result image in the script runner's image table now that the action execution is finished.
      ActionMetadata getActionMetadata()
      Return meta-information about this discoverable action for categorization and labeling purposes.
      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).
      ModelImage getResultImage()
      Accessor that returns the image.
      private void init()
      Initializes the GUI by creating the components, placing them in the dialog, and displaying them.
      boolean isActionComplete()
      Returns whether the action has successfully completed its execution.
      void setAlpha​(float alpha)  
      void setClassicStepSize​(float classicStepSize)  
      void setDisplayLocNew()
      Accessor that sets the display loc variable to new, so that a new image is created once the algorithm completes.
      void setDisplayLocReplace()
      Accessor that sets the display loc variable to replace, so the current image is replaced once the algorithm completes.
      void setEqualValue​(double equalValue)  
      void setGreaterEqualValue​(double greaterEqualValue)  
      protected void setGUIFromParams()
      Set the dialog GUI using the script parameters while running this algorithm as part of a script.
      void setHasEqual​(boolean hasEqual)  
      void setHasGreaterEqual​(boolean hasGreaterEqual)  
      void setHasInfinity​(boolean hasInfinity)  
      void setHasLesserEqual​(boolean hasLesserEqual)  
      void setHasNaN​(boolean hasNaN)  
      void setImage25D​(boolean image25D)
      Accessor that sets whether 3D images are 3D or 2.5D filtered.
      void setInitialGlobalSmoothing​(float initialGlobalSmoothing)  
      void setInitialKernelSize​(int initialKernelSize)  
      void setIterations​(int iterations)  
      void setIterations2​(int iterations2)  
      void setIterativeGlobalSmoothing​(float iterativeGlobalSmoothing)  
      void setIterativeGlobalSmoothing2​(float iterativeGlobalSmoothing2)  
      void setIterativeKernelSize​(int iterativeKernelSize)  
      void setLambda​(float lambda)  
      void setLesserEqualValue​(double lesserEqualValue)  
      void setMethod​(int method)  
      void setSteeringStepSize​(float steeringStepSize)  
      void setUpscale​(int upscale)  
      private boolean setVariables()
      Use the GUI results to set up the variables needed to run the algorithm.
      void setWindowSize​(int windowSize)  
      protected void storeParamsFromGUI()
      Record the parameters just used to run this algorithm in a script.
      • 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
    • Field Detail

      • destinationGroup

        private javax.swing.ButtonGroup destinationGroup
        DOCUMENT ME!
      • destinationPanel

        private javax.swing.JPanel destinationPanel
        DOCUMENT ME!
      • displayLoc

        private int displayLoc
        DOCUMENT ME!
      • image25D

        private boolean image25D
        DOCUMENT ME!
      • image25DCheckBox

        private javax.swing.JCheckBox image25DCheckBox
        DOCUMENT ME!
      • method

        private int method
      • labelInitialGlobal

        private javax.swing.JLabel labelInitialGlobal
      • textInitialGlobal

        private javax.swing.JTextField textInitialGlobal
      • initialGlobalSmoothing

        private float initialGlobalSmoothing
        0.8 for STEERING_KERNEL_SECOND_ORDER_L1_NORM
      • labelIterativeGlobal

        private javax.swing.JLabel labelIterativeGlobal
      • textIterativeGlobal

        private javax.swing.JTextField textIterativeGlobal
      • iterativeGlobalSmoothing

        private float iterativeGlobalSmoothing
        1.5 for STEERING_KERNEL_SECOND_ORDER_L1_NORM
      • labelIterativeGlobal2

        private javax.swing.JLabel labelIterativeGlobal2
      • textIterativeGlobal2

        private javax.swing.JTextField textIterativeGlobal2
      • iterativeGlobalSmoothing2

        private float iterativeGlobalSmoothing2
      • labelUpscale

        private javax.swing.JLabel labelUpscale
      • textUpscale

        private javax.swing.JTextField textUpscale
      • upscale

        private int upscale
        Upscaling factor
      • labelInitialKernel

        private javax.swing.JLabel labelInitialKernel
      • textInitialKernel

        private javax.swing.JTextField textInitialKernel
      • initialKernelSize

        private int initialKernelSize
      • labelIterativeKernel

        private javax.swing.JLabel labelIterativeKernel
      • textIterativeKernel

        private javax.swing.JTextField textIterativeKernel
      • iterativeKernelSize

        private int iterativeKernelSize
      • labelIterations

        private javax.swing.JLabel labelIterations
      • textIterations

        private javax.swing.JTextField textIterations
      • iterations

        private int iterations
        Total number of iterations
      • labelIterations2

        private javax.swing.JLabel labelIterations2
      • textIterations2

        private javax.swing.JTextField textIterations2
      • iterations2

        private int iterations2
        Iterations in skr2L1_regular for steepest descent method in L1 steering kernel regression in STEERING_KERNEL_SECOND_ORDER_L1_NORM.
      • labelWindowSize

        private javax.swing.JLabel labelWindowSize
      • textWindowSize

        private javax.swing.JTextField textWindowSize
      • windowSize

        private int windowSize
        Size of local orientation analysis window
      • labelLambda

        private javax.swing.JLabel labelLambda
      • textLambda

        private javax.swing.JTextField textLambda
      • lambda

        private float lambda
        Regularization for the elongation parameter
      • labelAlpha

        private javax.swing.JLabel labelAlpha
      • textAlpha

        private javax.swing.JTextField textAlpha
      • alpha

        private float alpha
        Structure sensitive parameter
      • methodGroup

        private javax.swing.ButtonGroup methodGroup
      • iterSteering2

        private javax.swing.JRadioButton iterSteering2
      • iterIrregular

        private javax.swing.JRadioButton iterIrregular
      • regSampled2Classic

        private javax.swing.JRadioButton regSampled2Classic
      • steering2L1Norm

        private javax.swing.JRadioButton steering2L1Norm
      • labelClassicStep

        private javax.swing.JLabel labelClassicStep
      • textClassicStep

        private javax.swing.JTextField textClassicStep
      • classicStepSize

        private float classicStepSize
      • labelSteeringStep

        private javax.swing.JLabel labelSteeringStep
      • textSteeringStep

        private javax.swing.JTextField textSteeringStep
      • steeringStepSize

        private float steeringStepSize
      • NaNCheckBox

        private javax.swing.JCheckBox NaNCheckBox
      • hasNaN

        private boolean hasNaN
      • infinityCheckBox

        private javax.swing.JCheckBox infinityCheckBox
      • hasInfinity

        private boolean hasInfinity
      • greaterEqualCheckBox

        private javax.swing.JCheckBox greaterEqualCheckBox
      • hasGreaterEqual

        private boolean hasGreaterEqual
      • textGreaterEqual

        private javax.swing.JTextField textGreaterEqual
      • greaterEqualValue

        private double greaterEqualValue
      • equalCheckBox

        private javax.swing.JCheckBox equalCheckBox
      • hasEqual

        private boolean hasEqual
      • textEqual

        private javax.swing.JTextField textEqual
      • equalValue

        private double equalValue
      • lesserEqualCheckBox

        private javax.swing.JCheckBox lesserEqualCheckBox
      • hasLesserEqual

        private boolean hasLesserEqual
      • textLesserEqual

        private javax.swing.JTextField textLesserEqual
      • lesserEqualValue

        private double lesserEqualValue
      • newImage

        private javax.swing.JRadioButton newImage
        DOCUMENT ME!
      • paramPanel

        private javax.swing.JPanel paramPanel
        DOCUMENT ME!
      • replaceImage

        private javax.swing.JRadioButton replaceImage
        DOCUMENT ME!
      • resultImage

        private ModelImage resultImage
        DOCUMENT ME!
      • titles

        private java.lang.String[] titles
        DOCUMENT ME!
    • Constructor Detail

      • JDialogKernelRegression

        public JDialogKernelRegression()
        Empty constructor needed for dynamic instantiation (used during scripting).
      • JDialogKernelRegression

        public JDialogKernelRegression​(java.awt.Frame theParentFrame,
                                       ModelImage im)
        Creates a new JDialogKernelRegression object.
        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 variables and calls algorithm.
        Specified by:
        actionPerformed in interface java.awt.event.ActionListener
        Overrides:
        actionPerformed in class JDialogBase
        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 to complete, so that the dialog can be display the result image and/or clean up.
        Specified by:
        algorithmPerformed in interface AlgorithmInterface
        Parameters:
        algorithm - Algorithm that caused the event.
      • getResultImage

        public ModelImage getResultImage()
        Accessor that returns the image.
        Returns:
        The result image.
      • setDisplayLocNew

        public void setDisplayLocNew()
        Accessor that sets the display loc variable to new, so that a new image is created once the algorithm completes.
      • setDisplayLocReplace

        public void setDisplayLocReplace()
        Accessor that sets the display loc variable to replace, so the current image is replaced once the algorithm completes.
      • setImage25D

        public void setImage25D​(boolean image25D)
        Accessor that sets whether 3D images are 3D or 2.5D filtered.
        Parameters:
        image25D - true for 2.5D filtering
      • setMethod

        public void setMethod​(int method)
        Parameters:
        method -
      • setInitialGlobalSmoothing

        public void setInitialGlobalSmoothing​(float initialGlobalSmoothing)
        Parameters:
        initialGlobalSmoothing -
      • setIterativeGlobalSmoothing

        public void setIterativeGlobalSmoothing​(float iterativeGlobalSmoothing)
        Parameters:
        iterativeGlobalSmoothing -
      • setIterativeGlobalSmoothing2

        public void setIterativeGlobalSmoothing2​(float iterativeGlobalSmoothing2)
        Parameters:
        iterativeGlobalSmoothing2 -
      • setUpscale

        public void setUpscale​(int upscale)
        Parameters:
        upscale -
      • setInitialKernelSize

        public void setInitialKernelSize​(int initialKernelSize)
        Parameters:
        initialKernelSize -
      • setIterativeKernelSize

        public void setIterativeKernelSize​(int iterativeKernelSize)
        Parameters:
        iterativeKernelSize -
      • setIterations

        public void setIterations​(int iterations)
        Parameters:
        iterations -
      • setIterations2

        public void setIterations2​(int iterations2)
        Parameters:
        iterations2 -
      • setWindowSize

        public void setWindowSize​(int windowSize)
        Parameters:
        windowSize -
      • setLambda

        public void setLambda​(float lambda)
        Parameters:
        lambda -
      • setAlpha

        public void setAlpha​(float alpha)
        Parameters:
        alpha -
      • setClassicStepSize

        public void setClassicStepSize​(float classicStepSize)
        Parameters:
        classicStepSize -
      • setSteeringStepSize

        public void setSteeringStepSize​(float steeringStepSize)
        Parameters:
        steeringStepSize -
      • setHasNaN

        public void setHasNaN​(boolean hasNaN)
        Parameters:
        hasNaN -
      • setHasInfinity

        public void setHasInfinity​(boolean hasInfinity)
        Parameters:
        hasInfinity -
      • setHasGreaterEqual

        public void setHasGreaterEqual​(boolean hasGreaterEqual)
        Parameters:
        hasGreaterEqual -
      • setGreaterEqualValue

        public void setGreaterEqualValue​(double greaterEqualValue)
        Parameters:
        greaterEqualValue -
      • setHasEqual

        public void setHasEqual​(boolean hasEqual)
        Parameters:
        hasEqual -
      • setEqualValue

        public void setEqualValue​(double equalValue)
        Parameters:
        equalValue -
      • setHasLesserEqual

        public void setHasLesserEqual​(boolean hasLesserEqual)
        Parameters:
        hasLesserEqual -
      • setLesserEqualValue

        public void setLesserEqualValue​(double lesserEqualValue)
        Parameters:
        lesserEqualValue -
      • callAlgorithm

        protected void callAlgorithm()
        Once all the necessary variables are set, call the Kernel Regression algorithm based on what type of image this is and whether or not there is a separate destination image.
        Specified by:
        callAlgorithm in class JDialogScriptableBase
      • doPostAlgorithmActions

        protected void doPostAlgorithmActions()
        Store the result image in the script runner's image table now that the action execution is finished.
        Overrides:
        doPostAlgorithmActions in class JDialogScriptableBase
      • setGUIFromParams

        protected void setGUIFromParams()
        Set the dialog GUI using the script parameters while running this algorithm as part of a script.
        Specified by:
        setGUIFromParams in class JDialogScriptableBase
      • init

        private void init()
        Initializes the GUI by creating the components, placing them in the dialog, and displaying them.
      • setVariables

        private boolean setVariables()
        Use the GUI results to set up the variables needed to run the algorithm.
        Returns:
        true if parameters set successfully, false otherwise.
      • getActionMetadata

        public ActionMetadata getActionMetadata()
        Return meta-information about this discoverable action for categorization and labeling purposes.
        Specified by:
        getActionMetadata in interface ActionDiscovery
        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 in setGUIFromParams()).
        Specified by:
        createInputParameters in interface ActionDiscovery
        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:
        createOutputParameters in interface ActionDiscovery
        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:
        getOutputImageName in 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.
      • isActionComplete

        public boolean isActionComplete()
        Returns whether the action has successfully completed its execution.
        Specified by:
        isActionComplete in interface ActionDiscovery
        Returns:
        True, if the action is complete. False, if the action failed or is still running.