public class HessianThree
extends java.lang.Object
Computes the second derivative (Hessian) of an image using. This hessian is derived by using the same gradient
function used in GradientThree, which uses a kernel of [-1 0 1].
WARNING: It is computationally more expensive to compute the Hessian with this operation than applying the gradient operator multiple times. However, this does not require the creation additional storage to save intermediate results.
Kernel for ∂ 2f/∂ x2 and ∂2f /∂ y2 is
[1 0 -2 0 1] and ∂2f/∂ x∂y is:
| 1 | 0 | -1 |
| 0 | 0 | 0 |
| -1 | 0 | 1 |
| Modifier and Type | Field and Description |
|---|---|
static Kernel2D_F32 |
kernelCross_F32 |
static Kernel2D_I32 |
kernelCross_I32 |
static Kernel1D_F32 |
kernelXXYY_F32 |
static Kernel1D_I32 |
kernelXXYY_I32 |
| Constructor and Description |
|---|
HessianThree() |
| Modifier and Type | Method and Description |
|---|---|
static void |
process(GrayF32 orig,
GrayF32 derivXX,
GrayF32 derivYY,
GrayF32 derivXY,
ImageBorder_F32 border)
Computes the second derivative of an
GrayU8 along the x and y axes. |
static void |
process(GrayU8 orig,
GrayS16 derivXX,
GrayS16 derivYY,
GrayS16 derivXY,
ImageBorder_S32 border)
Computes the second derivative of an
GrayU8 along the x and y axes. |
public static Kernel1D_I32 kernelXXYY_I32
public static Kernel2D_I32 kernelCross_I32
public static Kernel1D_F32 kernelXXYY_F32
public static Kernel2D_F32 kernelCross_F32
public static void process(GrayU8 orig, GrayS16 derivXX, GrayS16 derivYY, GrayS16 derivXY, ImageBorder_S32 border)
Computes the second derivative of an GrayU8 along the x and y axes.
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.public static void process(GrayF32 orig, GrayF32 derivXX, GrayF32 derivYY, GrayF32 derivXY, ImageBorder_F32 border)
GrayU8 along the x and y axes.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.