Package boofcv.alg.filter.kernel
Class KernelMath
java.lang.Object
boofcv.alg.filter.kernel.KernelMath
public class KernelMath extends Object
Operations for manipulating different convolution kernels.
-
Constructor Summary
Constructors Constructor Description KernelMath()
-
Method Summary
Modifier and Type Method Description static void
convert(double[] input, int[] output, int size, double minFrac)
static void
convert(float[] input, int[] output, int size, float minFrac)
static Kernel1D_S32
convert(Kernel1D_F32 original, float minFrac)
static Kernel1D_S32
convert(Kernel1D_F64 original, double minFrac)
static Kernel2D_S32
convert(Kernel2D_F32 original, float minFrac)
static GrayF32
convertToImage(Kernel2D_F32 kernel)
static GrayS32
convertToImage(Kernel2D_S32 kernel)
static Kernel2D_F32
convertToKernel(GrayF32 image)
static Kernel2D_S32
convertToKernel(GrayI image)
static Kernel1D
convolve1D(Kernel1D a, Kernel1D b)
static Kernel1D_F32
convolve1D_F32(Kernel1D_F32 a, Kernel1D_F32 b)
static Kernel1D_S32
convolve1D_I32(Kernel1D_S32 a, Kernel1D_S32 b)
static Kernel2D_F32
convolve2D(Kernel1D_F32 a, Kernel1D_F32 b)
Convolve two 1D kernels together to form a 2D kernel.static Kernel2D_F64
convolve2D(Kernel1D_F64 a, Kernel1D_F64 b)
Convolve two 1D kernels together to form a 2D kernel.static Kernel2D_S32
convolve2D(Kernel1D_S32 a, Kernel1D_S32 b)
Convolve two 1D kernels together to form a 2D kernel.static Kernel2D
convolve2D(Kernel1D a, Kernel1D b)
Convolve two 1D kernels together to form a 2D kernel.static Kernel2D_F32
convolve2D(Kernel2D_F32 a, Kernel2D_F32 b)
static Kernel2D_S32
convolve2D(Kernel2D_S32 a, Kernel2D_S32 b)
static Kernel2D
convolve2D(Kernel2D a, Kernel2D b)
static void
convolveSmooth(Kernel1D_F32 kernel, float[] src, float[] dst, int length)
Applies a smoothing kernel the the array.static void
divide(Kernel1D_F32 kernel, float value)
static void
divide(Kernel1D_F64 kernel, double value)
static void
divide(Kernel2D_F32 kernel, float value)
static void
divide(Kernel2D_F64 kernel, double value)
static void
fill(Kernel2D_F32 kernel, float value)
static void
fill(Kernel2D_S32 kernel, int value)
static boolean
isEquals(float[] expected, float[] found, int size, float tol)
static boolean
isEquals(int[] expected, int[] found, int size)
static boolean
isEqualsFrac(float[] expected, float[] found, int size, float fracTol, float zero)
static double
maxAbs(double[] data, int size)
static float
maxAbs(float[] data, int size)
static double
minAbs(double[] data, int size, double minValue)
static float
minAbs(float[] data, int size, float minValue)
static void
normalizeAbsSumToOne(Kernel2D_F32 kernel)
Normalizes the array such that the absolute value sums up to one.static void
normalizeF(Kernel2D_F64 kernel)
static void
normalizeMaxOne(Kernel2D_F64 kernel)
Normalizes it such that the largest element is equal to onestatic void
normalizeSumToOne(Kernel1D_F32 kernel)
Normalizes the array such that it sums up to one.static void
normalizeSumToOne(Kernel1D_F64 kernel)
static void
normalizeSumToOne(Kernel2D_F32 kernel)
Normalizes the array such that it sums up to one.static void
normalizeSumToOne(Kernel2D_F64 kernel)
static void
scale(Kernel1D_F32 kernel, float value)
static void
scale(Kernel1D_F64 kernel, double value)
static float
sum(Kernel2D_F32 kernel)
static double
sum(Kernel2D_F64 kernel)
static Kernel2D_F32
transpose(Kernel2D_F32 a)
static Kernel2D_S32
transpose(Kernel2D_S32 a)
-
Constructor Details
-
KernelMath
public KernelMath()
-
-
Method Details
-
scale
-
scale
-
divide
-
divide
-
divide
-
divide
-
fill
-
fill
-
transpose
-
transpose
-
convolve1D
-
convolve1D_I32
-
convolve1D_F32
-
convolveSmooth
Applies a smoothing kernel the the array. The kernel must sum to 1. Array borders are handling by normalizing based on the overlap of the kernel with the image at that point- Parameters:
kernel
- Smothing kernel that sums to 1src
- Input arraydst
- Output arraylength
- Effective length of the array
-
convolve2D
-
convolve2D
-
convolve2D
-
convolve2D
Convolve two 1D kernels together to form a 2D kernel.- Parameters:
a
- Input vertical 1D kernelb
- Input horizontal 1D kernel- Returns:
- Resulting 2D kernel
-
convolve2D
Convolve two 1D kernels together to form a 2D kernel.- Parameters:
a
- Input vertical 1D kernelb
- Input horizontal 1D kernel- Returns:
- Resulting 2D kernel
-
convolve2D
Convolve two 1D kernels together to form a 2D kernel.- Parameters:
a
- Input vertical 1D kernelb
- Input horizontal 1D kernel- Returns:
- Resulting 2D kernel
-
convolve2D
Convolve two 1D kernels together to form a 2D kernel.- Parameters:
a
- Input vertical 1D kernelb
- Input horizontal 1D kernel- Returns:
- Resulting 2D kernel
-
normalizeSumToOne
Normalizes the array such that it sums up to one.- Parameters:
kernel
- The kernel being normalized.
-
normalizeSumToOne
-
normalizeSumToOne
Normalizes the array such that it sums up to one.- Parameters:
kernel
- The kernel being normalized.
-
normalizeSumToOne
-
normalizeAbsSumToOne
Normalizes the array such that the absolute value sums up to one.- Parameters:
kernel
- The kernel being normalized.
-
sum
-
sum
-
normalizeF
-
normalizeMaxOne
Normalizes it such that the largest element is equal to one -
convertToImage
-
convertToImage
-
convertToKernel
-
convertToKernel
-
convert
-
convert
-
convert
-
convert
public static void convert(float[] input, int[] output, int size, float minFrac) -
convert
public static void convert(double[] input, int[] output, int size, double minFrac) -
maxAbs
public static float maxAbs(float[] data, int size) -
maxAbs
public static double maxAbs(double[] data, int size) -
minAbs
public static float minAbs(float[] data, int size, float minValue) -
minAbs
public static double minAbs(double[] data, int size, double minValue) -
isEqualsFrac
public static boolean isEqualsFrac(float[] expected, float[] found, int size, float fracTol, float zero) -
isEquals
public static boolean isEquals(float[] expected, float[] found, int size, float tol) -
isEquals
public static boolean isEquals(int[] expected, int[] found, int size)
-