Class PyramidFloat<T extends ImageBase<T>>

java.lang.Object
boofcv.struct.pyramid.ImagePyramidBase<T>
boofcv.struct.pyramid.PyramidFloat<T>
All Implemented Interfaces:
ImagePyramid<T>
Direct Known Subclasses:
PyramidFloatGaussianScale, PyramidFloatScale

public abstract class PyramidFloat<T extends ImageBase<T>> extends ImagePyramidBase<T>

An image pyramid where each level can be an arbitrary scale. Higher levels in the pyramid are sub-sampled from lower levels in the pyramid allowing fractions of a pixel change. This added flexibility comes at the cost of some performance relative to PyramidDiscrete.

An ImagePyramid where the scale factor between each level is specified using a floating point number.

  • Field Details

    • scale

      public double[] scale
  • Constructor Details

    • PyramidFloat

      protected PyramidFloat(ImageType<T> imageType, double... scaleFactors)
      Defines the image pyramid.
      Parameters:
      imageType - Type of image
      scaleFactors - (optional) Specifies the scale of each layer in the pyramid. See restrictions on scaleFactor in setScaleFactors(double...).
    • PyramidFloat

      protected PyramidFloat(PyramidFloat<T> orig)
  • Method Details

    • setScaleFactors

      public void setScaleFactors(double... scaleFactors)
      Specifies the pyramid's structure.
      Parameters:
      scaleFactors - Change in scale factor for each layer in the pyramid.
    • getScale

      public double getScale(int layer)
      Description copied from interface: ImagePyramid
      Returns the scale of the specified layer in the pyramid. Larger the scale smaller the image is relative to the input image.
      Parameters:
      layer - Which layer is being inspected.
      Returns:
      The layer's scale.
    • getNumLayers

      public int getNumLayers()
      Description copied from interface: ImagePyramid
      Returns the number of layers in the pyramid.