boofcv.alg.filter.derivative
Class GradientSobel
- java.lang.Object
-
- boofcv.alg.filter.derivative.GradientSobel
-
public class GradientSobel extends java.lang.ObjectComputes the image's first derivative along the x and y axises using the Sobel operator.
The Sobel kernel weights the inner most pixels more than ones farther away. This tends to produce better results, but not as good as a gaussian kernel with larger kernel. However, it can be optimized so that it is much faster than a Gaussian.
For integer images, the derivatives in the x and y direction are computed by convolving the following kernels:
y-axis
-0.25 -0.5 -0.25 0 0 0 0.25 0.5 0.25 -1 0 1 -2 0 2 -1 0 1
-
-
Field Summary
Fields Modifier and Type Field and Description static Kernel2D_F32kernelDerivX_F32static Kernel2D_I32kernelDerivX_I32static Kernel2D_F32kernelDerivY_F32static Kernel2D_I32kernelDerivY_I32
-
Constructor Summary
Constructors Constructor and Description GradientSobel()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static Kernel2DgetKernelX(boolean isInteger)Returns the kernel for computing the derivative along the x-axis.static voidprocess(GrayF32 orig, GrayF32 derivX, GrayF32 derivY, ImageBorder_F32 border)Computes the derivative in the X and Y direction using an integer Sobel edge detector.static voidprocess(GrayS16 orig, GrayS16 derivX, GrayS16 derivY, ImageBorder_S32<GrayS16> border)Computes the derivative in the X and Y direction using an integer Sobel edge detector.static voidprocess(GrayU8 orig, GrayS16 derivX, GrayS16 derivY, ImageBorder_S32<GrayU8> border)Computes the derivative in the X and Y direction using an integer Sobel edge detector.
-
-
-
Field Detail
-
kernelDerivX_I32
public static Kernel2D_I32 kernelDerivX_I32
-
kernelDerivY_I32
public static Kernel2D_I32 kernelDerivY_I32
-
kernelDerivX_F32
public static Kernel2D_F32 kernelDerivX_F32
-
kernelDerivY_F32
public static Kernel2D_F32 kernelDerivY_F32
-
-
Method Detail
-
getKernelX
public static Kernel2D getKernelX(boolean isInteger)
Returns the kernel for computing the derivative along the x-axis.
-
process
public static void process(GrayU8 orig, GrayS16 derivX, GrayS16 derivY, ImageBorder_S32<GrayU8> border)
Computes the derivative in the X and Y direction using an integer Sobel edge detector.- Parameters:
orig- Input image. Not modified.derivX- Storage for image derivative along the x-axis. Modified.derivY- Storage for image derivative along the y-axis. Modified.border- Specifies how the image border is handled. If null the border is not processed.
-
process
public static void process(GrayS16 orig, GrayS16 derivX, GrayS16 derivY, ImageBorder_S32<GrayS16> border)
Computes the derivative in the X and Y direction using an integer Sobel edge detector.- Parameters:
orig- Input image. Not modified.derivX- Storage for image derivative along the x-axis. Modified.derivY- Storage for image derivative along the y-axis. Modified.border- Specifies how the image border is handled. If null the border is not processed.
-
process
public static void process(GrayF32 orig, GrayF32 derivX, GrayF32 derivY, ImageBorder_F32 border)
Computes the derivative in the X and Y direction using an integer Sobel edge detector.- Parameters:
orig- Input image. Not modified.derivX- Storage for image derivative along the x-axis. Modified.derivY- Storage for image derivative along the y-axis. Modified.border- Specifies how the image border is handled. If null the border is not processed.
-
-
DataMelt 3.0 © DataMelt by jWork.ORG