Class CompareObjectLocations

  • All Implemented Interfaces:
    AdditionalInformationHandler, CleanUpHandler, Destroyable, GlobalInfoSupporter, LoggingLevelHandler, LoggingSupporter, OptionHandler, QuickInfoSupporter, ShallowCopySupporter<Actor>, SizeOfHandler, Stoppable, StoppableWithFeedback, VariablesInspectionHandler, VariableChangeListener, StorageUser, Actor, AutomatableInteraction, ErrorHandler, InputConsumer, InteractiveActor, OutputProducer, StopModeSupporter, Serializable, Comparable

    public class CompareObjectLocations
    extends AbstractInteractiveTransformerDialog
    implements StorageUser, AutomatableInteraction
    Visualizes object locations (annotations and predicted) for the incoming image side-by-side.
    Only forwards the image container when accepted.

    Input/output:
    - accepts:
       adams.data.image.AbstractImageContainer
    - generates:
       adams.data.image.AbstractImageContainer


    -logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel)
        The logging level for outputting errors and debugging output.
        default: WARNING
     
    -name <java.lang.String> (property: name)
        The name of the actor.
        default: CompareObjectLocations
     
    -annotation <adams.core.base.BaseAnnotation> (property: annotations)
        The annotations to attach to this actor.
        default:
     
    -skip <boolean> (property: skip)
        If set to true, transformation is skipped and the input token is just forwarded
        as it is.
        default: false
     
    -stop-flow-on-error <boolean> (property: stopFlowOnError)
        If set to true, the flow execution at this level gets stopped in case this
        actor encounters an error; the error gets propagated; useful for critical
        actors.
        default: false
     
    -silent <boolean> (property: silent)
        If enabled, then no errors are output in the console; Note: the enclosing
        actor handler must have this enabled as well.
        default: false
     
    -short-title <boolean> (property: shortTitle)
        If enabled uses just the name for the title instead of the actor's full
        name.
        default: false
     
    -width <int> (property: width)
        The width of the dialog.
        default: 800
        minimum: 1
     
    -height <int> (property: height)
        The height of the dialog.
        default: 600
        minimum: 1
     
    -x <int> (property: x)
        The X position of the dialog (>=0: absolute, -1: left, -2: center, -3: right
        ).
        default: -1
        minimum: -3
     
    -y <int> (property: y)
        The Y position of the dialog (>=0: absolute, -1: top, -2: center, -3: bottom
        ).
        default: -1
        minimum: -3
     
    -stop-if-canceled <boolean> (property: stopFlowIfCanceled)
        If enabled, the flow gets stopped in case the user cancels the dialog.
        default: false
     
    -custom-stop-message <java.lang.String> (property: customStopMessage)
        The custom stop message to use in case a user cancelation stops the flow
        (default is the full name of the actor)
        default:
     
    -stop-mode <GLOBAL|STOP_RESTRICTOR> (property: stopMode)
        The stop mode to use.
        default: GLOBAL
     
    -annotations-storage-name <adams.flow.control.StorageName> (property: annotationsStorageName)
        The name of the storage item containing the annotations (ground truth).
        default: storage
     
    -annotations-prefix <java.lang.String> (property: annotationsPrefix)
        The object prefix that the annotations use.
        default: Object.
     
    -annotations-label-suffix <java.lang.String> (property: annotationsLabelSuffix)
        The report suffix that the annotations use for storing the label.
        default: type
     
    -predictions-storage-name <adams.flow.control.StorageName> (property: predictionsStorageName)
        The name of the storage item containing the predictions.
        default: storage
     
    -predictions-prefix <java.lang.String> (property: predictionsPrefix)
        The object prefix that the predictions use.
        default: Object.
     
    -predictions-label-suffix <java.lang.String> (property: predictionsLabelSuffix)
        The report suffix that the predictions use for storing the label.
        default: type
     
    -comparison <adams.flow.transformer.compareobjectlocations.AbstractComparison> (property: comparison)
        The comparison view to use.
        default: adams.flow.transformer.compareobjectlocations.SideBySide -annotations-overlay \"adams.gui.visualization.image.ObjectLocationsOverlayFromReport -type-color-provider adams.gui.visualization.core.DefaultColorProvider\" -predictions-overlay \"adams.gui.visualization.image.ObjectLocationsOverlayFromReport -type-color-provider adams.gui.visualization.core.DefaultColorProvider\"
     
    -forward-screenshot <boolean> (property: forwardScreenshot)
        If enabled, a screenshot is forwarded to the specified actor when accepting
        the dialog.
        default: false
     
    -screenshot-queue <adams.flow.control.StorageName> (property: screenshotQueue)
        The storage name of the queue to receive the screenshot.
        default: storage
     
    -non-interactive <boolean> (property: nonInteractive)
        If enabled, the 'OK' button gets clicked automatically.
        default: false
     
    Author:
    FracPete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Detail

      • m_AnnotationsStorageName

        protected StorageName m_AnnotationsStorageName
        the storage item with the annotations.
      • m_AnnotationsPrefix

        protected String m_AnnotationsPrefix
        the annotations object prefix.
      • m_AnnotationsLabelSuffix

        protected String m_AnnotationsLabelSuffix
        the annotations label suffix.
      • m_PredictionsStorageName

        protected StorageName m_PredictionsStorageName
        the storage item with the predictions.
      • m_PredictionsPrefix

        protected String m_PredictionsPrefix
        the predictions object prefix.
      • m_PredictionsLabelSuffix

        protected String m_PredictionsLabelSuffix
        the predictions label suffix.
      • m_ForwardScreenshot

        protected boolean m_ForwardScreenshot
        whether to forward a screenshot to the callable actor.
      • m_ScreenshotQueue

        protected StorageName m_ScreenshotQueue
        the queue to send the screenshot to.
      • m_NonInteractive

        protected boolean m_NonInteractive
        whether the prompt is non-interactive.
      • m_Accepted

        protected boolean m_Accepted
        whether the dialog got accepted.
      • m_ButtonOK

        protected transient BaseButton m_ButtonOK
        the OK button.
    • Constructor Detail

      • CompareObjectLocations

        public CompareObjectLocations()
    • Method Detail

      • setAnnotationsStorageName

        public void setAnnotationsStorageName​(StorageName value)
        Sets the storage item containing the annotations.
        Parameters:
        value - the name
      • getAnnotationsStorageName

        public StorageName getAnnotationsStorageName()
        Returns the storage item containing the annotations.
        Returns:
        the name
      • annotationsStorageNameTipText

        public String annotationsStorageNameTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setAnnotationsPrefix

        public void setAnnotationsPrefix​(String value)
        Sets the object prefix to use for the annotations.
        Parameters:
        value - the object prefix
      • getAnnotationsPrefix

        public String getAnnotationsPrefix()
        Returns the object prefix to use for the annotations.
        Returns:
        the object prefix
      • annotationsPrefixTipText

        public String annotationsPrefixTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setAnnotationsLabelSuffix

        public void setAnnotationsLabelSuffix​(String value)
        Sets the report suffix that the annotations use for storing the label.
        Parameters:
        value - the suffix
      • getAnnotationsLabelSuffix

        public String getAnnotationsLabelSuffix()
        Returns the report suffix that the annotations use for storing the label.
        Returns:
        the suffix
      • annotationsLabelSuffixTipText

        public String annotationsLabelSuffixTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setPredictionsStorageName

        public void setPredictionsStorageName​(StorageName value)
        Sets the storage item containing the predictions.
        Parameters:
        value - the name
      • getPredictionsStorageName

        public StorageName getPredictionsStorageName()
        Returns the storage item containing the predictions.
        Returns:
        the name
      • predictionsStorageNameTipText

        public String predictionsStorageNameTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setPredictionsPrefix

        public void setPredictionsPrefix​(String value)
        Sets the object prefix to use for the predictions.
        Parameters:
        value - the object prefix
      • getPredictionsPrefix

        public String getPredictionsPrefix()
        Returns the object prefix to use for the predictions.
        Returns:
        the object prefix
      • predictionsPrefixTipText

        public String predictionsPrefixTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setPredictionsLabelSuffix

        public void setPredictionsLabelSuffix​(String value)
        Sets the report suffix that the predictions use for storing the label.
        Parameters:
        value - the suffix
      • getPredictionsLabelSuffix

        public String getPredictionsLabelSuffix()
        Returns the report suffix that the predictions use for storing the label.
        Returns:
        the suffix
      • predictionsLabelSuffixTipText

        public String predictionsLabelSuffixTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setComparison

        public void setComparison​(AbstractComparison value)
        Sets the comparison view to use.
        Parameters:
        value - the comparison
      • getComparison

        public AbstractComparison getComparison()
        Returns the comparison view to use.
        Returns:
        the comparison
      • comparisonTipText

        public String comparisonTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setForwardScreenshot

        public void setForwardScreenshot​(boolean value)
        Sets whether to forward a screenshot (if accepted).
        Parameters:
        value - true if to forward
      • getForwardScreenshot

        public boolean getForwardScreenshot()
        Returns whether to forward a screenshot (if accepted).
        Returns:
        true if to forward
      • forwardScreenshotTipText

        public String forwardScreenshotTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setScreenshotQueue

        public void setScreenshotQueue​(StorageName value)
        Sets the queue to receive the screenshot.
        Parameters:
        value - the storage name
      • getScreenshotQueue

        public StorageName getScreenshotQueue()
        Returns the queue to receive the screenshot.
        Returns:
        the storage name
      • screenshotQueueTipText

        public String screenshotQueueTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setNonInteractive

        public void setNonInteractive​(boolean value)
        Sets whether to enable/disable interactiveness.
        Specified by:
        setNonInteractive in interface AutomatableInteraction
        Parameters:
        value - if true actor is not interactive, but automated
      • isNonInteractive

        public boolean isNonInteractive()
        Returns whether interactiveness is enabled/disabled.
        Specified by:
        isNonInteractive in interface AutomatableInteraction
        Returns:
        true if actor is not interactive i.e., automated
      • nonInteractiveTipText

        public String nonInteractiveTipText()
        Returns the tip text for this property.
        Specified by:
        nonInteractiveTipText in interface AutomatableInteraction
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • isUsingStorage

        public boolean isUsingStorage()
        Returns whether storage items are being used.
        Specified by:
        isUsingStorage in interface StorageUser
        Returns:
        true if storage items are used
      • accepts

        public Class[] accepts()
        Returns the class that the consumer accepts.
        Specified by:
        accepts in interface InputConsumer
        Returns:
        the Class of objects that can be processed
      • generates

        public Class[] generates()
        Returns the class of objects that it generates.
        Specified by:
        generates in interface OutputProducer
        Returns:
        the Class of the generated tokens
      • sendScreenshot

        protected void sendScreenshot​(AbstractComparisonPanel panel,
                                      StorageName storageName)
        Sends the screenshot to the callable actor.
        Parameters:
        panel - the panel to take a screenshot of
        storageName - the queue to send the screenshot to
      • display

        protected boolean display​(Token token)
        Displays the token (the panel and dialog have already been created at this stage).
        Parameters:
        token - the token to display
        Returns:
        true if successfully displayed