Package boofcv.factory.transform.pyramid
Class FactoryPyramid
java.lang.Object
boofcv.factory.transform.pyramid.FactoryPyramid
Factory for creating classes related to image pyramids.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic <T extends ImageBase<T>>
PyramidDiscrete<T>discreteGaussian
(ConfigDiscreteLevels configLevels, double sigma, int radius, boolean saveOriginalReference, ImageType<T> imageType) Creates an updater for discrete pyramids where a Gaussian is convolved across the input prior to sub-sampling.static <T extends ImageGray<T>>
PyramidFloat<T>floatGaussian
(double[] scaleFactors, double[] sigmas, Class<T> imageType) Creates a float pyramid where each layer is blurred using a Gaussian with the specified sigma.static <T extends ImageGray<T>>
PyramidFloat<T>scaleSpace
(double[] scaleSpace, Class<T> imageType) Constructs a scale-space image pyramid.static <T extends ImageGray<T>>
PyramidFloat<T>scaleSpacePyramid
(double[] scaleSpace, Class<T> imageType) Constructs an image pyramid which is designed to mimic aGaussianScaleSpace
.
-
Constructor Details
-
FactoryPyramid
public FactoryPyramid()
-
-
Method Details
-
discreteGaussian
public static <T extends ImageBase<T>> PyramidDiscrete<T> discreteGaussian(ConfigDiscreteLevels configLevels, double sigma, int radius, boolean saveOriginalReference, ImageType<T> imageType) Creates an updater for discrete pyramids where a Gaussian is convolved across the input prior to sub-sampling.- Parameters:
imageType
- Type of input image.sigma
- Gaussian sigma. If < 0 then a sigma is selected using the radius. Try -1.radius
- Radius of the Gaussian kernel. If < 0 then the radius is selected using sigma. Try 2.- Returns:
- PyramidDiscrete
-
floatGaussian
public static <T extends ImageGray<T>> PyramidFloat<T> floatGaussian(double[] scaleFactors, double[] sigmas, Class<T> imageType) Creates a float pyramid where each layer is blurred using a Gaussian with the specified sigma. Bilinear interpolation is used when sub-sampling.- Parameters:
scaleFactors
- The scale factor of each layer relative to the previous layer. Layer 0 is relative to the input image.sigmas
- Gaussian blur magnitude for each layer.imageType
- Type of image in the pyramid.- Returns:
- PyramidFloat
-
scaleSpacePyramid
public static <T extends ImageGray<T>> PyramidFloat<T> scaleSpacePyramid(double[] scaleSpace, Class<T> imageType) Constructs an image pyramid which is designed to mimic aGaussianScaleSpace
. Each layer in the pyramid should have the equivalent amount of blur that a space-space constructed with the same parameters would have.- Parameters:
scaleSpace
- The scale of each layer and the desired amount of blur relative to the original imageimageType
- Type of image- Returns:
- PyramidFloat
-
scaleSpace
public static <T extends ImageGray<T>> PyramidFloat<T> scaleSpace(double[] scaleSpace, Class<T> imageType) Constructs a scale-space image pyramid. Each layer in the pyramid is the same size as the input image but has a different amount of blur applied to it.- Type Parameters:
T
- Type of image- Parameters:
scaleSpace
- Amount of blur applied to each layer in the pyramid relative to the input image.imageType
- Type of image- Returns:
- Scale-space image pyramid
-