Class JDialogSIFT

  • All Implemented Interfaces:
    AlgorithmInterface, ScriptableActionInterface, 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.event.ListSelectionListener, javax.swing.RootPaneContainer, javax.swing.WindowConstants

    public class JDialogSIFT
    extends JDialogScriptableBase
    implements AlgorithmInterface, javax.swing.event.ListSelectionListener
    Dialog to get user input, then call the algorithm.
    See Also:
    Serialized Form
    • 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
    • Constructor Summary

      Constructors 
      Constructor Description
      JDialogSIFT()
      Empty constructor needed for dynamic instantiation (used during scripting).
      JDialogSIFT​(java.awt.Frame theParentFrame, ModelImage im)
      Creates a new JDialogMSFuzzyCMeans object.
    • 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 and calls the algorithm.
      void algorithmPerformed​(AlgorithmBase algorithm)
      This method is required if the AlgorithmPerformed interface is implemented.
      protected void callAlgorithm()
      Starts the algorithm.
      private javax.swing.filechooser.FileFilter getFileFilter​(javax.swing.JFileChooser chooser, int index)
      A private helper function to get the current used FileFilter from JFileChooser.
      private void init()
      Sets up the GUI (panels, buttons, etc) and displays it on the screen.
      private void selectFileName()
      Open an image based on the suffix of the file.
      protected void setGUIFromParams()
      Set the dialog GUI using the script parameters while running this algorithm as part of a script.
      private boolean setVariables()  
      protected void storeParamsFromGUI()
      Record the parameters just used to run this algorithm in a script.
      void valueChanged​(javax.swing.event.ListSelectionEvent evt)
      Sets the remove index based on the selected index in the list.
      • 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

      • serialVersionUID

        private static final long serialVersionUID
        Use serialVersionUID for interoperability.
        See Also:
        Constant Field Values
      • fileDir

        private java.lang.String[] fileDir
      • fileName

        private java.lang.String[] fileName
      • selectedDirectory

        private java.lang.String selectedDirectory
      • selectedFileName

        private java.lang.String selectedFileName
      • tempFileDir

        private java.lang.String[] tempFileDir
      • tempFileName

        private java.lang.String[] tempFileName
      • SIFTAlgo

        private SIFT SIFTAlgo
      • verbose

        private boolean verbose
      • outarg

        private java.lang.String outarg
      • framesarg

        private java.lang.String framesarg
      • descriptorarg

        private java.lang.String descriptorarg
      • metaarg

        private java.lang.String metaarg
      • read_framesarg

        private java.lang.String read_framesarg
      • gssarg

        private java.lang.String gssarg
      • O

        private int O
      • S

        private int S
      • omin

        private int omin
      • edge_thresh

        private double edge_thresh
      • peak_thresh

        private double peak_thresh
      • norm_thresh

        private double norm_thresh
      • magnif

        private double magnif
      • window_size

        private double window_size
      • force_orientations

        private boolean force_orientations
      • writeFrames

        private boolean writeFrames
      • readFrames

        private boolean readFrames
      • writeDescriptor

        private boolean writeDescriptor
      • writeMeta

        private boolean writeMeta
      • writeGss

        private boolean writeGss
      • mosaic

        private boolean mosaic
      • changeRemoveIndex

        private boolean changeRemoveIndex
      • removeButton

        private javax.swing.JButton removeButton
      • removeIndex

        private int removeIndex
      • srcNumber

        private int srcNumber
      • model

        private javax.swing.DefaultListModel<java.lang.String> model
      • labelRegister

        private javax.swing.JLabel labelRegister
      • imageList

        private javax.swing.JList imageList
      • imagePanel

        private javax.swing.JPanel imagePanel
      • chooserButton

        private javax.swing.JButton chooserButton
      • paramPanel

        private javax.swing.JPanel paramPanel
      • labelNOctaves

        private javax.swing.JLabel labelNOctaves
      • textNOctaves

        private javax.swing.JTextField textNOctaves
      • labelNLevels

        private javax.swing.JLabel labelNLevels
      • textNLevels

        private javax.swing.JTextField textNLevels
      • labelFirstOctave

        private javax.swing.JLabel labelFirstOctave
      • textFirstOctave

        private javax.swing.JTextField textFirstOctave
      • labelEdgeThresh

        private javax.swing.JLabel labelEdgeThresh
      • textEdgeThresh

        private javax.swing.JTextField textEdgeThresh
      • labelPeakThresh

        private javax.swing.JLabel labelPeakThresh
      • textPeakThresh

        private javax.swing.JTextField textPeakThresh
      • labelNormThresh

        private javax.swing.JLabel labelNormThresh
      • textNormThresh

        private javax.swing.JTextField textNormThresh
      • labelMagnification

        private javax.swing.JLabel labelMagnification
      • textMagnification

        private javax.swing.JTextField textMagnification
      • labelWindowSize

        private javax.swing.JLabel labelWindowSize
      • textWindowSize

        private javax.swing.JTextField textWindowSize
      • orientationsCheckBox

        private javax.swing.JCheckBox orientationsCheckBox
      • verboseCheckBox

        private javax.swing.JCheckBox verboseCheckBox
      • writeFramesCheckBox

        private javax.swing.JCheckBox writeFramesCheckBox
      • readFramesCheckBox

        private javax.swing.JCheckBox readFramesCheckBox
      • writeDescriptorCheckBox

        private javax.swing.JCheckBox writeDescriptorCheckBox
      • writeMetaCheckBox

        private javax.swing.JCheckBox writeMetaCheckBox
      • writeGssCheckBox

        private javax.swing.JCheckBox writeGssCheckBox
      • mosaicCheckBox

        private javax.swing.JCheckBox mosaicCheckBox
    • Constructor Detail

      • JDialogSIFT

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

        public JDialogSIFT​(java.awt.Frame theParentFrame,
                           ModelImage im)
        Creates a new JDialogMSFuzzyCMeans object.
        Parameters:
        theParentFrame - parent frame
        im - source image
    • Method Detail

      • init

        private void init()
        Sets up the GUI (panels, buttons, etc) and displays it on the screen.
      • actionPerformed

        public void actionPerformed​(java.awt.event.ActionEvent event)
        Closes dialog box when the OK button is pressed and calls the algorithm.
        Specified by:
        actionPerformed in interface java.awt.event.ActionListener
        Overrides:
        actionPerformed in class JDialogBase
        Parameters:
        event - Event that triggers function.
      • selectFileName

        private void selectFileName()
        Open an image based on the suffix of the file.
      • getFileFilter

        private javax.swing.filechooser.FileFilter getFileFilter​(javax.swing.JFileChooser chooser,
                                                                 int index)
        A private helper function to get the current used FileFilter from JFileChooser.
        Parameters:
        chooser - DOCUMENT ME!
        index - the index of the choosable file filters.
        Returns:
        the current used file filter.
      • valueChanged

        public void valueChanged​(javax.swing.event.ListSelectionEvent evt)
        Sets the remove index based on the selected index in the list.
        Specified by:
        valueChanged in interface javax.swing.event.ListSelectionListener
        Parameters:
        evt - Event that caused this method to fire.
      • callAlgorithm

        protected void callAlgorithm()
        Description copied from class: JDialogScriptableBase
        Starts the algorithm. Already exists in most algorithm dialogs. Should be called during scripted execution and regular operation.
        Specified by:
        callAlgorithm in class JDialogScriptableBase
      • 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.
      • setVariables

        private boolean setVariables()