Class JDialogHaralickTexture

All Implemented Interfaces:
AlgorithmInterface, ScriptableActionInterface, DialogDefaultsInterface, ActionDiscovery, ActionListener, FocusListener, ItemListener, WindowListener, ImageObserver, MenuContainer, Serializable, EventListener, Accessible, RootPaneContainer, WindowConstants

public class JDialogHaralickTexture extends JDialogScriptableBase implements AlgorithmInterface, ActionDiscovery, ScriptableActionInterface
Dialog to get user input, then call the algorithm.
Version:
0.4 April 14, 2009
Author:
William Gandler
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      Use serialVersionUID for interoperability.
      See Also:
    • RED_OFFSET

      private static final int RED_OFFSET
      Red channel.
      See Also:
    • GREEN_OFFSET

      private static final int GREEN_OFFSET
      Green channel.
      See Also:
    • BLUE_OFFSET

      private static final int BLUE_OFFSET
      Blue channel.
      See Also:
    • colorPanel

      private JPanel colorPanel
      DOCUMENT ME!
    • colorGroup

      private ButtonGroup colorGroup
      DOCUMENT ME!
    • redButton

      private JRadioButton redButton
      DOCUMENT ME!
    • greenButton

      private JRadioButton greenButton
      DOCUMENT ME!
    • blueButton

      private JRadioButton blueButton
      DOCUMENT ME!
    • RGBOffset

      private int RGBOffset
      DOCUMENT ME!
    • asm

      private boolean asm
      DOCUMENT ME!
    • asmCheckBox

      private JCheckBox asmCheckBox
      DOCUMENT ME!
    • contrast

      private boolean contrast
      DOCUMENT ME!
    • contrastCheckBox

      private JCheckBox contrastCheckBox
      DOCUMENT ME!
    • correlation

      private boolean correlation
      DOCUMENT ME!
    • correlationCheckBox

      private JCheckBox correlationCheckBox
      DOCUMENT ME!
    • dissimilarity

      private boolean dissimilarity
      DOCUMENT ME!
    • dissimilarityCheckBox

      private JCheckBox dissimilarityCheckBox
      DOCUMENT ME!
    • energy

      private boolean energy
      DOCUMENT ME!
    • energyCheckBox

      private JCheckBox energyCheckBox
      DOCUMENT ME!
    • entropy

      private boolean entropy
      DOCUMENT ME!
    • entropyCheckBox

      private JCheckBox entropyCheckBox
      DOCUMENT ME!
    • ew

      private boolean ew
      DOCUMENT ME!
    • ewCheckBox

      private JCheckBox ewCheckBox
      DOCUMENT ME!
    • homogeneity

      private boolean homogeneity
      DOCUMENT ME!
    • homogeneityCheckBox

      private JCheckBox homogeneityCheckBox
      DOCUMENT ME!
    • image

      private ModelImage image
      DOCUMENT ME!
    • invariantCheckBox

      private JCheckBox invariantCheckBox
      DOCUMENT ME!
    • invariantDir

      private boolean invariantDir
      DOCUMENT ME!
    • inverseOrder1

      private boolean inverseOrder1
      DOCUMENT ME!
    • inverseOrder1CheckBox

      private JCheckBox inverseOrder1CheckBox
      DOCUMENT ME!
    • labelOffsetDistance

      private JLabel labelOffsetDistance
      DOCUMENT ME!
    • labelWindowSize

      private JLabel labelWindowSize
      DOCUMENT ME!
    • maxProbability

      private boolean maxProbability
      DOCUMENT ME!
    • maxProbabilityCheckBox

      private JCheckBox maxProbabilityCheckBox
      DOCUMENT ME!
    • mean

      private boolean mean
      DOCUMENT ME!
    • meanCheckBox

      private JCheckBox meanCheckBox
      DOCUMENT ME!
    • nesw

      private boolean nesw
      DOCUMENT ME!
    • neswCheckBox

      private JCheckBox neswCheckBox
      DOCUMENT ME!
    • ns

      private boolean ns
      DOCUMENT ME!
    • nsCheckBox

      private JCheckBox nsCheckBox
      DOCUMENT ME!
    • numDirections

      private int numDirections
      DOCUMENT ME!
    • numOperators

      private int numOperators
      DOCUMENT ME!
    • offsetDistance

      private int offsetDistance
      DOCUMENT ME!
    • resultImage

      private ModelImage[] resultImage
      DOCUMENT ME!
    • resultNumber

      private int resultNumber
      DOCUMENT ME!
    • scalePanel

      private JPanel scalePanel
      DOCUMENT ME!
    • senw

      private boolean senw
      DOCUMENT ME!
    • senwCheckBox

      private JCheckBox senwCheckBox
      DOCUMENT ME!
    • standardDeviation

      private boolean standardDeviation
      DOCUMENT ME!
    • standardDeviationCheckBox

      private JCheckBox standardDeviationCheckBox
      DOCUMENT ME!
    • textOffsetDistance

      private JTextField textOffsetDistance
      DOCUMENT ME!
    • textureAlgo

      private AlgorithmHaralickTexture textureAlgo
      DOCUMENT ME!
    • textWindowSize

      private JTextField textWindowSize
      DOCUMENT ME!
    • variance

      private boolean variance
      DOCUMENT ME!
    • varianceCheckBox

      private JCheckBox varianceCheckBox
      DOCUMENT ME!
    • shade

      private boolean shade
    • shadeCheckBox

      private JCheckBox shadeCheckBox
    • promenance

      private boolean promenance
    • promenanceCheckBox

      private JCheckBox promenanceCheckBox
    • windowSize

      private int windowSize
      DOCUMENT ME!
    • labelRescaling

      private JLabel labelRescaling
    • textRescaling

      private JTextField textRescaling
    • greyLevels

      private int greyLevels
      Number of grey levels used if data must be rescaled
    • concatenateCheckBox

      private JCheckBox concatenateCheckBox
    • concatenate

      private boolean concatenate
      If true, only one result image with the original source concatenated with the calculated features.
    • zscoreCheckBox

      private JCheckBox zscoreCheckBox
    • zscore

      private boolean zscore
      If true, produce z score = (value - mean)/(standard deviation) output of Haralick features
  • Constructor Details

    • JDialogHaralickTexture

      public JDialogHaralickTexture()
      Empty constructor needed for dynamic instantiation.
    • JDialogHaralickTexture

      public JDialogHaralickTexture(Frame theParentFrame, ModelImage im)
      Creates a new JDialogHaralickTexture object.
      Parameters:
      theParentFrame - Parent frame.
      im - Source image.
  • Method Details

    • actionPerformed

      public void actionPerformed(ActionEvent event)
      Closes dialog box when the OK button is pressed and calls the algorithm.
      Specified by:
      actionPerformed in interface 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 algorithm 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.
    • setASM

      public void setASM(boolean asm)
      Accessor that sets if asm operator is calculated.
      Parameters:
      asm - boolean
    • setContrast

      public void setContrast(boolean contrast)
      Accessor that sets if the contrast operator is calculated.
      Parameters:
      contrast - boolean
    • setCorrelation

      public void setCorrelation(boolean correlation)
      Accessor that sets if gray level coordinate matrix correlation is calculated.
      Parameters:
      correlation - boolean
    • setDissimilarity

      public void setDissimilarity(boolean dissimilarity)
      Accessor that sets if dissimilarity operator is calculated.
      Parameters:
      dissimilarity - boolean
    • setEnergy

      public void setEnergy(boolean energy)
      Accessor that sets if energy operator is calculated.
      Parameters:
      energy - boolean
    • setEntropy

      public void setEntropy(boolean entropy)
      Accessor that sets if entropy operator is calculated.
      Parameters:
      entropy - boolean
    • setEW

      public void setEW(boolean ew)
      Accessor that sets if east west offset direction is calculated.
      Parameters:
      ew - boolean
    • setHomogeneity

      public void setHomogeneity(boolean homogeneity)
      Accessor that sets if homogeneity operator is calculated.
      Parameters:
      homogeneity - boolean
    • setInvariant

      public void setInvariant(boolean invariantDir)
      Accessor that sets if spatially invariant offset direction is performed.
      Parameters:
      invariantDir - boolean
    • setInverseOrder1

      public void setInverseOrder1(boolean inverseOrder1)
      Accessor that sets if the inverse difference moment of order 1 operator is called.
      Parameters:
      inverseOrder1 - boolean
    • setMaxProbability

      public void setMaxProbability(boolean maxProbability)
      Accessor that sets if maximum probability operator is calculated.
      Parameters:
      maxProbability - boolean
    • setMean

      public void setMean(boolean mean)
      Accessor that set if the gray level coordinate matrix mean is calculated.
      Parameters:
      mean - boolean
    • setNESW

      public void setNESW(boolean nesw)
      Accessor that sets if northeast-southest offset direction is calculated.
      Parameters:
      nesw - boolean
    • setNS

      public void setNS(boolean ns)
      Accessor that sets if north south offset direction is calculated.
      Parameters:
      ns - boolean
    • setOffsetDistance

      public void setOffsetDistance(int offsetDistance)
      Accessor that sets the offset distance.
      Parameters:
      offsetDistance - int
    • setSENW

      public void setSENW(boolean senw)
      Accessor that sets if southeast-northwest offset direction is calculated.
      Parameters:
      senw - boolean
    • setStandardDeviation

      public void setStandardDeviation(boolean standardDeviation)
      Accessor that sets if gray level coordinate matrix standard deviation is calculated.
      Parameters:
      standardDeviation - boolean
    • setVariance

      public void setVariance(boolean variance)
      Accessor that sets if the gray level coordinate matrix variance is calculated.
      Parameters:
      variance - boolean
    • setShade

      public void setShade(boolean shade)
      Accessor that sets if the cluster shade is calculated
      Parameters:
      shade -
    • setPromenance

      public void setPromenance(boolean promenance)
      Accessor that sets if the cluster promenance is calculated
      Parameters:
      promenance -
    • setConcatenate

      public void setConcatenate(boolean concatenate)
      Accessor that sets if there is only 1 result image with the original source concatenated with the calculated features
      Parameters:
      concatenate -
    • setZscore

      public void setZscore(boolean zscore)
    • setWindowSize

      public void setWindowSize(int windowSize)
      Accessor that sets the window size.
      Parameters:
      windowSize - int
    • setGreyLevels

      public void setGreyLevels(int greyLevels)
      Accessor that sets the number of grey levels if rescaling used
      Parameters:
      greyLevels -
    • setRGBOffset

      public void setRGBOffset(int RGBoffset)
      Accessor that sets the RGBOffset.
      Parameters:
      RGBoffset - DOCUMENT ME!
    • callAlgorithm

      protected void callAlgorithm()
      Once all the necessary variables are set, call the Gaussian Haralick feature algorithm.
      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
    • storeParamsFromGUI

      protected void storeParamsFromGUI() throws ParserException
      Record the parameters just used to run this algorithm in a script.
      Specified by:
      storeParamsFromGUI in class JDialogScriptableBase
      Throws:
      ParserException - If there is a problem creating/recording the new parameters.
    • getNumDirections

      private int getNumDirections()
      DOCUMENT ME!
      Returns:
      DOCUMENT ME!
    • getNumOperators

      private int getNumOperators()
      DOCUMENT ME!
      Returns:
      DOCUMENT ME!
    • init

      private void init()
      Sets up the GUI (panels, buttons, etc) and displays it on the screen.
    • 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 String getOutputImageName(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.