Class OrientationAverage<D extends ImageGray<D>>

All Implemented Interfaces:
OrientationGradient<D>, RegionOrientation
Direct Known Subclasses:
ImplOrientationAverage_F32, ImplOrientationAverage_S16, ImplOrientationAverage_S32

public abstract class OrientationAverage<D extends ImageGray<D>> extends Object implements OrientationGradient<D>

Computes the orientation of a region by summing up the derivative along each axis independently then computing the direction fom the sum. If weighted a Gaussian kernel centered around the targeted pixel is used.

  • Field Details

    • derivX

      protected D extends ImageGray<D> derivX
    • derivY

      protected D extends ImageGray<D> derivY
    • rect

      protected ImageRectangle rect
    • objectToSample

      protected double objectToSample
    • sampleRadius

      protected int sampleRadius
    • radiusScale

      protected int radiusScale
    • isWeighted

      protected boolean isWeighted
    • weights

      protected Kernel2D_F32 weights
  • Constructor Details

    • OrientationAverage

      protected OrientationAverage(double objectRadiusToScale, boolean weighted)
  • Method Details

    • getSampleRadius

      public int getSampleRadius()
    • setSampleRadius

      public void setSampleRadius(int sampleRadius)
    • getWeights

      public Kernel2D_F32 getWeights()
    • setObjectRadius

      public void setObjectRadius(double radius)
      Description copied from interface: RegionOrientation
      Specifies the circle's radius that the orientation should be
      Specified by:
      setObjectRadius in interface RegionOrientation
      radius - Object's radius.
    • setImage

      public void setImage(D derivX, D derivY)
      Description copied from interface: OrientationGradient
      Specifies input image data for estimating orientation.
      Specified by:
      setImage in interface OrientationGradient<D extends ImageGray<D>>
      derivX - Image derivative along x-axis.
      derivY - Image derivative along y-axis.
    • compute

      public double compute(double X, double Y)
      Description copied from interface: RegionOrientation
      Computes the orientation of a region about its center.
      Specified by:
      compute in interface RegionOrientation
      X - Center of the region in image pixels.
      Y - Center of the region in image pixels.
      Orientation in radians. Angle zero points along x-axis and pi/2 along y-axis.
    • computeUnweightedScore

      protected abstract double computeUnweightedScore()
      Compute the score without using the optional weights
    • computeWeightedScore

      protected abstract double computeWeightedScore(int c_x, int c_y)
      Compute the score using the weighting kernel.