Package boofcv.alg.transform.wavelet
Class UtilWavelet
java.lang.Object
boofcv.alg.transform.wavelet.UtilWavelet
Various functions which are useful when working with or computing wavelet transforms.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic void
adjustForDisplay
(ImageGray transform, int numLevels, double valueRange) Adjusts the values inside a wavelet transform to make it easier to view.static int
borderForwardLower
(WlCoef desc) Returns the lower border for a forward wavelet transform.static int
borderForwardUpper
(WlCoef desc, int dataLength) Returns the upper border (offset from image edge) for a forward wavelet transform.static int
borderInverseLower
(WlBorderCoef<?> desc, BorderIndex1D border) Returns the lower border for an inverse wavelet transform.static int
borderInverseUpper
(WlBorderCoef<?> desc, BorderIndex1D border, int dataLength) Returns the upper border (offset from image edge) for an inverse wavelet transform.static int
checkInverseLower
(@Nullable WlCoef coef, int index, BorderIndex1D border, int current) static int
checkInverseUpper
(@Nullable WlCoef coef, int index, BorderIndex1D border, int current) static void
checkShape
(ImageGray original, ImageGray transformed) The original image can have an even or odd number of width/height.static void
checkShape
(WlCoef desc, ImageGray original, ImageGray transformed, int level) static int
computeDiv
(int level) Returns the number that the output image needs to be divisible by.static double
computeEnergy
(float[] array) Compute the energy of the specified array.static double
computeEnergy
(int[] array, int denominator) Compute the energy of the specified array.static int
computeScale
(int level) static BorderType
static int
round
(int top, int div2, int divisor) Specialized rounding for use with integer wavelet transform.static double
sumCoefficients
(float[] array) static int
sumCoefficients
(int[] array) static ImageDimension
transformDimension
(int width, int height, int level) static ImageDimension
transformDimension
(ImageBase orig, int level) Returns dimension which is required for the transformed image in a multilevel wavelet transform.
-
Constructor Details
-
UtilWavelet
public UtilWavelet()
-
-
Method Details
-
checkShape
The original image can have an even or odd number of width/height. While the transformed image must have an even number of pixels. If the original image is even then the sames are the same, otherwise the transformed image's shape is rounded up.- Parameters:
original
- Original input image.transformed
- Image which has been transformed.
-
checkShape
-
computeScale
public static int computeScale(int level) -
computeDiv
public static int computeDiv(int level) Returns the number that the output image needs to be divisible by. -
transformDimension
Returns dimension which is required for the transformed image in a multilevel wavelet transform. -
transformDimension
-
computeEnergy
public static double computeEnergy(float[] array) Compute the energy of the specified array.
E = sum( i=1..N , a[i]*a[i] )
-
computeEnergy
public static double computeEnergy(int[] array, int denominator) Compute the energy of the specified array.
E = sum( i=1..N , a[i]*a[i] ) / (N*d*d)
-
sumCoefficients
public static double sumCoefficients(float[] array) -
sumCoefficients
public static int sumCoefficients(int[] array) -
borderForwardLower
Returns the lower border for a forward wavelet transform. -
borderForwardUpper
Returns the upper border (offset from image edge) for a forward wavelet transform. -
borderInverseLower
Returns the lower border for an inverse wavelet transform. -
checkInverseLower
public static int checkInverseLower(@Nullable @Nullable WlCoef coef, int index, BorderIndex1D border, int current) -
borderInverseUpper
Returns the upper border (offset from image edge) for an inverse wavelet transform. -
checkInverseUpper
public static int checkInverseUpper(@Nullable @Nullable WlCoef coef, int index, BorderIndex1D border, int current) -
round
public static int round(int top, int div2, int divisor) Specialized rounding for use with integer wavelet transform. return (top +- div2) / divisor;- Parameters:
top
- Top part of the equation.div2
- The divisor divided by two.divisor
- The divisor.
-
convertToType
-
adjustForDisplay
Adjusts the values inside a wavelet transform to make it easier to view.- Parameters:
numLevels
- Number of levels in the transform
-