Class BoofCVDetectLines

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

    public class BoofCVDetectLines
    extends AbstractTransformer
    Detects lines in images (Hough line detector based on polar parametrization).

    Input/output:
    - accepts:
       BoofCVImageContainer
    - generates:
       adams.data.spreadsheet.SpreadSheet


    Valid options are:

    -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: BoofCVDetectLines
     
    -annotation <adams.core.base.BaseText> (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 gets stopped in case this actor encounters an error;
         useful for critical actors.
        default: false
     
    -local-max-radius <int> (property: localMaxRadius)
        The Radius for local maximum suppression.
        default: 3
        minimum: 0
     
    -min-counts <int> (property: minCounts)
        The Minimum number of counts for detected line.
        default: 30
        minimum: 1
     
    -resolution-range <double> (property: resolutionRange)
        The Resolution of line range in pixels.
        default: 2.0
        minimum: 0.0
     
    -resolution-angle <double> (property: resolutionAngle)
        The Resolution of line angle in radius.
        default: 0.017453292519943295
        minimum: 0.0
     
    -edge-threshold <float> (property: edgeThreshold)
        The edge threshold to use.
        default: 25.0
        minimum: 0.0
     
    -max-lines <int> (property: maxLines)
        The maximum number of lines to detect.
        default: 10
        minimum: 1
     
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Detail

      • m_LocalMaxRadius

        protected int m_LocalMaxRadius
        Radius for local maximum suppression.
      • m_MinCounts

        protected int m_MinCounts
        Minimum number of counts for detected line.
      • m_MinDistanceFromOrigin

        protected int m_MinDistanceFromOrigin
        the minimum distance from the origin.
      • m_ResolutionRange

        protected double m_ResolutionRange
        Resolution of line range in pixels.
      • m_ResolutionAngle

        protected int m_ResolutionAngle
        Resolution of line angle in degrees.
      • m_EdgeThreshold

        protected float m_EdgeThreshold
        the edge threshold to use.
      • m_MaxLines

        protected int m_MaxLines
        the maximum number of lines to detec.
    • Constructor Detail

      • BoofCVDetectLines

        public BoofCVDetectLines()
    • Method Detail

      • setLocalMaxRadius

        public void setLocalMaxRadius​(int value)
        Sets the Radius for local maximum suppression.
        Parameters:
        value - the radius
      • getLocalMaxRadius

        public int getLocalMaxRadius()
        Returns the Radius for local maximum suppression.
        Returns:
        the radius
      • localMaxRadiusTipText

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

        public void setMinCounts​(int value)
        Sets the Minimum number of counts for detected line.
        Parameters:
        value - the minimum
      • getMinCounts

        public int getMinCounts()
        Returns the Minimum number of counts for detected line.
        Returns:
        the minimum
      • minCountsTipText

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

        public void setResolutionRange​(double value)
        Sets the Resolution of line range in pixels.
        Parameters:
        value - the range
      • getResolutionRange

        public double getResolutionRange()
        Returns Resolution of line range in pixels.
        Returns:
        the range
      • resolutionRangeTipText

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

        public void setResolutionAngle​(int value)
        Sets the Resolution of line angle in degrees.
        Parameters:
        value - the angle
      • getResolutionAngle

        public int getResolutionAngle()
        Returns the Resolution of line angle in degrees.
        Returns:
        the angle
      • resolutionAngleTipText

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

        public void setEdgeThreshold​(float value)
        Sets the edge threshold to use.
        Parameters:
        value - the threshold
      • getEdgeThreshold

        public float getEdgeThreshold()
        Returns the edge threshold to use.
        Returns:
        the threshold
      • edgeThresholdTipText

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

        public void setMaxLines​(int value)
        Sets the maximum number of lines to detect.
        Parameters:
        value - the maximum
      • getMaxLines

        public int getMaxLines()
        Returns the maximum number of lines to detect.
        Returns:
        the maximum
      • maxLinesTipText

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

        public void setMinDistanceFromOrigin​(int value)
        Sets the Radius for local maximum suppression.
        Parameters:
        value - the radius
      • getMinDistanceFromOrigin

        public int getMinDistanceFromOrigin()
        Returns the Radius for local maximum suppression.
        Returns:
        the radius
      • minDistanceFromOriginTipText

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

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

        public Class[] generates()
        Returns the class of objects that it generates.
        Returns:
        the Class of the generated tokens
      • doExecute

        protected String doExecute()
        Executes the flow item.
        Specified by:
        doExecute in class AbstractActor
        Returns:
        null if everything is fine, otherwise error message