Package boofcv.alg.filter.derivative
Class HessianSobel
java.lang.Object
boofcv.alg.filter.derivative.HessianSobel
Computes the second derivative (Hessian) of an image using. This hessian is derived using the GradientSobel
gradient function.
WARNING: It is computationally more expensive to compute the Hessian with this operation than applying the Sobel gradient operator multiple times. However, this does not require the creation additional storage to save intermediate results.
Kernel for ∂ 2f/∂ y2:
</table} [1 0 -2 0 1] and ∂2f/∂ x∂y is:1 | 4 | 6 | 4 | 1 |
0 | 0 | 0 | 0 | 0 |
-2 | -8 | -12 | -8 | -2 |
0 | 0 | 0 | 0 | 0 |
1 | 4 | 6 | 4 | 1 |
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic Kernel2D_F32
static Kernel2D_S32
static Kernel2D_F32
static Kernel2D_S32
static Kernel2D_F32
static Kernel2D_S32
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic void
process
(GrayF32 orig, GrayF32 derivXX, GrayF32 derivYY, GrayF32 derivXY, @Nullable ImageBorder_F32 border) Computes the image's second derivatives.static void
process
(GrayU8 orig, GrayS16 derivXX, GrayS16 derivYY, GrayS16 derivXY, @Nullable ImageBorder_S32 border) Computes the image's second derivatives.process
(I input, D derivXX, D derivYY, D derivXY, @Nullable ImageBorder border)
-
Field Details
-
kernelYY_I32
-
kernelXX_I32
-
kernelXY_I32
-
kernelYY_F32
-
kernelXX_F32
-
kernelXY_F32
-
-
Constructor Details
-
HessianSobel
public HessianSobel()
-
-
Method Details
-
process
public static <I extends ImageGray<I>,D extends ImageGray<D>> void process(I input, D derivXX, D derivYY, D derivXY, @Nullable @Nullable ImageBorder border) -
process
public static void process(GrayU8 orig, GrayS16 derivXX, GrayS16 derivYY, GrayS16 derivXY, @Nullable @Nullable ImageBorder_S32 border) Computes the image's second derivatives.- Parameters:
orig
- Which which is to be differentiated. Not Modified.derivXX
- Second derivative along the x-axis. Modified.derivYY
- Second derivative along the y-axis. Modified.derivXY
- Second cross derivative. Modified.border
- Specifies how the image border is handled. If null the border is not processed.
-
process
public static void process(GrayF32 orig, GrayF32 derivXX, GrayF32 derivYY, GrayF32 derivXY, @Nullable @Nullable ImageBorder_F32 border) Computes the image's second derivatives.- Parameters:
orig
- Which which is to be differentiated. Not Modified.derivXX
- Second derivative along the x-axis. Modified.derivYY
- Second derivative along the y-axis. Modified.derivXY
- Second cross derivative. Modified.border
- Specifies how the image border is handled. If null the border is not processed.
-
1 | 2 | 0 | -2 | -1 |
2 | 4 | 0 | -4 | -2 |
0 | 0 | 0 | 0 | 0 |
-2 | -4 | 0 | 4 | 2 |
-1 | -2 | 0 | 2 | 1 |