Documentation of 'boofcv.alg.feature.detect.line.HoughTransformLineFootOfNorm' Java class
HoughTransformLineFootOfNorm
boofcv.alg.feature.detect.line

Class HoughTransformLineFootOfNorm



  • public class HoughTransformLineFootOfNorm
    extends java.lang.Object

    Hough transform based line detector. Lines are parameterized based upon the (x,y) coordinate of the closest point to the origin. This parametrization is more convenient since it corresponds directly with the image space. See [1] for more details.

    The line's direction is estimated using the gradient at each point flagged as belonging to a line. To minimize error the image center is used as the coordinate system's center. However lines which lie too close to the center can't have their orientation accurately estimated.

    [1] Section 9.3 of E.R. Davies, "Machine Vision Theory Algorithms Practicalities," 3rd Ed. 2005

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      FastQueue<LineParametric2D_F32> extractLines()
      Searches for local maximas and converts into lines.
      float[] getFoundIntensity()
      Returns the intensity/edge count for each returned line.
      GrayF32 getTransform()
      Returns the Hough transform image.
      void parameterize(int x, int y, float derivX, float derivY)
      Takes the detected point along the line and its gradient and converts it into transform space.
      <D extends ImageGray>
      void
      transform(D derivX, D derivY, GrayU8 binary)
      Computes the Hough transform using the image gradient and a binary image which flags pixels as being edges or not.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • HoughTransformLineFootOfNorm

        public HoughTransformLineFootOfNorm(NonMaxSuppression extractor,
                                            int minDistanceFromOrigin)
        Specifies parameters of transform.
        Parameters:
        extractor - Extracts local maxima from transform space. A set of candidates is provided, but can be ignored.
        minDistanceFromOrigin - Distance from the origin in which lines will not be estimated. In transform space. Try 5.
    • Method Detail

      • transform

        public <D extends ImageGray> void transform(D derivX,
                                                    D derivY,
                                                    GrayU8 binary)
        Computes the Hough transform using the image gradient and a binary image which flags pixels as being edges or not.
        Parameters:
        derivX - Image derivative along x-axis.
        derivY - Image derivative along y-axis.
        binary - Non-zero pixels are considered to be line pixels.
      • extractLines

        public FastQueue<LineParametric2D_F32> extractLines()
        Searches for local maximas and converts into lines.
        Returns:
        Found lines in the image.
      • parameterize

        public void parameterize(int x,
                                 int y,
                                 float derivX,
                                 float derivY)
        Takes the detected point along the line and its gradient and converts it into transform space.
        Parameters:
        x - point in image.
        y - point in image.
        derivX - gradient of point.
        derivY - gradient of point.
      • getTransform

        public GrayF32 getTransform()
        Returns the Hough transform image.
        Returns:
        Transform image.
      • getFoundIntensity

        public float[] getFoundIntensity()
        Returns the intensity/edge count for each returned line. Useful when doing post processing pruning.
        Returns:
        Array containing line intensities.

DataMelt 3.0 © DataMelt by jWork.ORG

Ads help maintain this website.