Class IntegralImageOps
- java.lang.Object
-
- boofcv.alg.transform.ii.IntegralImageOps
-
public class IntegralImageOps extends java.lang.ObjectCommon operations for dealing with integral images.
-
-
Constructor Summary
Constructors Constructor and Description IntegralImageOps()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static floatblock_unsafe(GrayF32 integral, int x0, int y0, int x1, int y1)Computes the value of a block inside an integral image without bounds checking.static doubleblock_unsafe(GrayF64 integral, int x0, int y0, int x1, int y1)Computes the value of a block inside an integral image without bounds checking.static intblock_unsafe(GrayS32 integral, int x0, int y0, int x1, int y1)Computes the value of a block inside an integral image without bounds checking.static longblock_unsafe(GrayS64 integral, int x0, int y0, int x1, int y1)Computes the value of a block inside an integral image without bounds checking.static floatblock_zero(GrayF32 integral, int x0, int y0, int x1, int y1)Computes the value of a block inside an integral image and treats pixels outside of the image as zero.static doubleblock_zero(GrayF64 integral, int x0, int y0, int x1, int y1)Computes the value of a block inside an integral image and treats pixels outside of the image as zero.static intblock_zero(GrayS32 integral, int x0, int y0, int x1, int y1)Computes the value of a block inside an integral image and treats pixels outside of the image as zero.static longblock_zero(GrayS64 integral, int x0, int y0, int x1, int y1)Computes the value of a block inside an integral image and treats pixels outside of the image as zero.static GrayF32convolve(GrayF32 integral, IntegralKernel kernel, GrayF32 output)General code for convolving a box filter across an image using the integral image.static GrayF64convolve(GrayF64 integral, IntegralKernel kernel, GrayF64 output)General code for convolving a box filter across an image using the integral image.static GrayS32convolve(GrayS32 integral, IntegralKernel kernel, GrayS32 output)General code for convolving a box filter across an image using the integral image.static GrayS64convolve(GrayS64 integral, IntegralKernel kernel, GrayS64 output)General code for convolving a box filter across an image using the integral image.static GrayF32convolveBorder(GrayF32 integral, IntegralKernel kernel, GrayF32 output, int borderX, int borderY)Convolves the kernel only across the image's border.static GrayF64convolveBorder(GrayF64 integral, IntegralKernel kernel, GrayF64 output, int borderX, int borderY)Convolves the kernel only across the image's border.static GrayS32convolveBorder(GrayS32 integral, IntegralKernel kernel, GrayS32 output, int borderX, int borderY)Convolves the kernel only across the image's border.static GrayS64convolveBorder(GrayS64 integral, IntegralKernel kernel, GrayS64 output, int borderX, int borderY)Convolves the kernel only across the image's border.static floatconvolveSparse(GrayF32 integral, IntegralKernel kernel, int x, int y)Convolves a kernel around a single point in the integral image.static doubleconvolveSparse(GrayF64 integral, IntegralKernel kernel, int x, int y)Convolves a kernel around a single point in the integral image.static intconvolveSparse(GrayS32 integral, IntegralKernel kernel, int x, int y)Convolves a kernel around a single point in the integral image.static longconvolveSparse(GrayS64 integral, IntegralKernel kernel, int x, int y)Convolves a kernel around a single point in the integral image.static booleanisInBounds(int x, int y, IntegralKernel kernel, int width, int height)Checks to see if the kernel is applied at this specific spot if all the pixels would be inside the image bounds or notstatic voidprint(IntegralKernel kernel)Prints out the kernel.static GrayF32transform(GrayF32 input, GrayF32 transformed)Converts a regular image into an integral image.static GrayF64transform(GrayF64 input, GrayF64 transformed)Converts a regular image into an integral image.static GrayS32transform(GrayS32 input, GrayS32 transformed)Converts a regular image into an integral image.static GrayS64transform(GrayS64 input, GrayS64 transformed)Converts a regular image into an integral image.static GrayS32transform(GrayU8 input, GrayS32 transformed)Converts a regular image into an integral image.
-
-
-
Method Detail
-
transform
public static GrayF32 transform(GrayF32 input, GrayF32 transformed)
Converts a regular image into an integral image.- Parameters:
input- Regular image. Not modified.transformed- Integral image. If null a new image will be created. Modified.- Returns:
- Integral image.
-
transform
public static GrayF64 transform(GrayF64 input, GrayF64 transformed)
Converts a regular image into an integral image.- Parameters:
input- Regular image. Not modified.transformed- Integral image. If null a new image will be created. Modified.- Returns:
- Integral image.
-
transform
public static GrayS32 transform(GrayU8 input, GrayS32 transformed)
Converts a regular image into an integral image.- Parameters:
input- Regular image. Not modified.transformed- Integral image. If null a new image will be created. Modified.- Returns:
- Integral image.
-
transform
public static GrayS32 transform(GrayS32 input, GrayS32 transformed)
Converts a regular image into an integral image.- Parameters:
input- Regular image. Not modified.transformed- Integral image. If null a new image will be created. Modified.- Returns:
- Integral image.
-
transform
public static GrayS64 transform(GrayS64 input, GrayS64 transformed)
Converts a regular image into an integral image.- Parameters:
input- Regular image. Not modified.transformed- Integral image. If null a new image will be created. Modified.- Returns:
- Integral image.
-
convolve
public static GrayF32 convolve(GrayF32 integral, IntegralKernel kernel, GrayF32 output)
General code for convolving a box filter across an image using the integral image.- Parameters:
integral- Integral image.kernel- Convolution kernel.output- The convolved image. If null a new image will be declared and returned. Modified.- Returns:
- Convolved image.
-
convolve
public static GrayF64 convolve(GrayF64 integral, IntegralKernel kernel, GrayF64 output)
General code for convolving a box filter across an image using the integral image.- Parameters:
integral- Integral image.kernel- Convolution kernel.output- The convolved image. If null a new image will be declared and returned. Modified.- Returns:
- Convolved image.
-
convolve
public static GrayS32 convolve(GrayS32 integral, IntegralKernel kernel, GrayS32 output)
General code for convolving a box filter across an image using the integral image.- Parameters:
integral- Integral image.kernel- Convolution kernel.output- The convolved image. If null a new image will be declared and returned. Modified.- Returns:
- Convolved image.
-
convolve
public static GrayS64 convolve(GrayS64 integral, IntegralKernel kernel, GrayS64 output)
General code for convolving a box filter across an image using the integral image.- Parameters:
integral- Integral image.kernel- Convolution kernel.output- The convolved image. If null a new image will be declared and returned. Modified.- Returns:
- Convolved image.
-
convolveBorder
public static GrayF32 convolveBorder(GrayF32 integral, IntegralKernel kernel, GrayF32 output, int borderX, int borderY)
Convolves the kernel only across the image's border.- Parameters:
integral- Integral image. Not modified.kernel- Convolution kernel.output- The convolved image. If null a new image will be created. Modified.borderX- Size of the image border along the horizontal axis.borderY- size of the image border along the vertical axis.
-
convolveBorder
public static GrayF64 convolveBorder(GrayF64 integral, IntegralKernel kernel, GrayF64 output, int borderX, int borderY)
Convolves the kernel only across the image's border.- Parameters:
integral- Integral image. Not modified.kernel- Convolution kernel.output- The convolved image. If null a new image will be created. Modified.borderX- Size of the image border along the horizontal axis.borderY- size of the image border along the vertical axis.
-
convolveBorder
public static GrayS32 convolveBorder(GrayS32 integral, IntegralKernel kernel, GrayS32 output, int borderX, int borderY)
Convolves the kernel only across the image's border.- Parameters:
integral- Integral image. Not modified.kernel- Convolution kernel.output- The convolved image. If null a new image will be created. Modified.borderX- Size of the image border along the horizontal axis.borderY- size of the image border along the vertical axis.
-
convolveBorder
public static GrayS64 convolveBorder(GrayS64 integral, IntegralKernel kernel, GrayS64 output, int borderX, int borderY)
Convolves the kernel only across the image's border.- Parameters:
integral- Integral image. Not modified.kernel- Convolution kernel.output- The convolved image. If null a new image will be created. Modified.borderX- Size of the image border along the horizontal axis.borderY- size of the image border along the vertical axis.
-
convolveSparse
public static float convolveSparse(GrayF32 integral, IntegralKernel kernel, int x, int y)
Convolves a kernel around a single point in the integral image.- Parameters:
integral- Input integral image. Not modified.kernel- Convolution kernel.x- Pixel the convolution is performed at.y- Pixel the convolution is performed at.- Returns:
- Value of the convolution
-
convolveSparse
public static double convolveSparse(GrayF64 integral, IntegralKernel kernel, int x, int y)
Convolves a kernel around a single point in the integral image.- Parameters:
integral- Input integral image. Not modified.kernel- Convolution kernel.x- Pixel the convolution is performed at.y- Pixel the convolution is performed at.- Returns:
- Value of the convolution
-
convolveSparse
public static int convolveSparse(GrayS32 integral, IntegralKernel kernel, int x, int y)
Convolves a kernel around a single point in the integral image.- Parameters:
integral- Input integral image. Not modified.kernel- Convolution kernel.x- Pixel the convolution is performed at.y- Pixel the convolution is performed at.- Returns:
- Value of the convolution
-
convolveSparse
public static long convolveSparse(GrayS64 integral, IntegralKernel kernel, int x, int y)
Convolves a kernel around a single point in the integral image.- Parameters:
integral- Input integral image. Not modified.kernel- Convolution kernel.x- Pixel the convolution is performed at.y- Pixel the convolution is performed at.- Returns:
- Value of the convolution
-
block_unsafe
public static double block_unsafe(GrayF64 integral, int x0, int y0, int x1, int y1)
Computes the value of a block inside an integral image without bounds checking. The block is defined as follows: x0 < x ≤ x1 and y0 < y ≤ y1.
- Parameters:
integral- Integral image.x0- Lower bound of the block. Exclusive.y0- Lower bound of the block. Exclusive.x1- Upper bound of the block. Inclusive.y1- Upper bound of the block. Inclusive.- Returns:
- Value inside the block.
-
block_unsafe
public static float block_unsafe(GrayF32 integral, int x0, int y0, int x1, int y1)
Computes the value of a block inside an integral image without bounds checking. The block is defined as follows: x0 < x ≤ x1 and y0 < y ≤ y1.
- Parameters:
integral- Integral image.x0- Lower bound of the block. Exclusive.y0- Lower bound of the block. Exclusive.x1- Upper bound of the block. Inclusive.y1- Upper bound of the block. Inclusive.- Returns:
- Value inside the block.
-
block_unsafe
public static int block_unsafe(GrayS32 integral, int x0, int y0, int x1, int y1)
Computes the value of a block inside an integral image without bounds checking. The block is defined as follows: x0 < x ≤ x1 and y0 < y ≤ y1.
- Parameters:
integral- Integral image.x0- Lower bound of the block. Exclusive.y0- Lower bound of the block. Exclusive.x1- Upper bound of the block. Inclusive.y1- Upper bound of the block. Inclusive.- Returns:
- Value inside the block.
-
block_unsafe
public static long block_unsafe(GrayS64 integral, int x0, int y0, int x1, int y1)
Computes the value of a block inside an integral image without bounds checking. The block is defined as follows: x0 < x ≤ x1 and y0 < y ≤ y1.
- Parameters:
integral- Integral image.x0- Lower bound of the block. Exclusive.y0- Lower bound of the block. Exclusive.x1- Upper bound of the block. Inclusive.y1- Upper bound of the block. Inclusive.- Returns:
- Value inside the block.
-
block_zero
public static float block_zero(GrayF32 integral, int x0, int y0, int x1, int y1)
Computes the value of a block inside an integral image and treats pixels outside of the image as zero. The block is defined as follows: x0 < x ≤ x1 and y0 < y ≤ y1.
- Parameters:
integral- Integral image.x0- Lower bound of the block. Exclusive.y0- Lower bound of the block. Exclusive.x1- Upper bound of the block. Inclusive.y1- Upper bound of the block. Inclusive.- Returns:
- Value inside the block.
-
block_zero
public static double block_zero(GrayF64 integral, int x0, int y0, int x1, int y1)
Computes the value of a block inside an integral image and treats pixels outside of the image as zero. The block is defined as follows: x0 < x ≤ x1 and y0 < y ≤ y1.
- Parameters:
integral- Integral image.x0- Lower bound of the block. Exclusive.y0- Lower bound of the block. Exclusive.x1- Upper bound of the block. Inclusive.y1- Upper bound of the block. Inclusive.- Returns:
- Value inside the block.
-
block_zero
public static int block_zero(GrayS32 integral, int x0, int y0, int x1, int y1)
Computes the value of a block inside an integral image and treats pixels outside of the image as zero. The block is defined as follows: x0 < x ≤ x1 and y0 < y ≤ y1.
- Parameters:
integral- Integral image.x0- Lower bound of the block. Exclusive.y0- Lower bound of the block. Exclusive.x1- Upper bound of the block. Inclusive.y1- Upper bound of the block. Inclusive.- Returns:
- Value inside the block.
-
block_zero
public static long block_zero(GrayS64 integral, int x0, int y0, int x1, int y1)
Computes the value of a block inside an integral image and treats pixels outside of the image as zero. The block is defined as follows: x0 < x ≤ x1 and y0 < y ≤ y1.
- Parameters:
integral- Integral image.x0- Lower bound of the block. Exclusive.y0- Lower bound of the block. Exclusive.x1- Upper bound of the block. Inclusive.y1- Upper bound of the block. Inclusive.- Returns:
- Value inside the block.
-
print
public static void print(IntegralKernel kernel)
Prints out the kernel.- Parameters:
kernel- THe kernel which is to be printed.
-
isInBounds
public static boolean isInBounds(int x, int y, IntegralKernel kernel, int width, int height)Checks to see if the kernel is applied at this specific spot if all the pixels would be inside the image bounds or not- Parameters:
x- location where the kernel is applied. x-axisy- location where the kernel is applied. y-axiskernel- The kernelwidth- Image's widthheight- Image's height- Returns:
- true if in bounds and false if out of bounds
-
-
DataMelt 3.0 © DataMelt by jWork.ORG