Class HessianThree

java.lang.Object
boofcv.alg.filter.derivative.HessianThree

public class HessianThree
extends 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

  • Field Details

    • kernelXXYY_I32

      public static Kernel1D_S32 kernelXXYY_I32
    • kernelCross_I32

      public static Kernel2D_S32 kernelCross_I32
    • kernelXXYY_F32

      public static Kernel1D_F32 kernelXXYY_F32
    • kernelCross_F32

      public static Kernel2D_F32 kernelCross_F32
  • Constructor Details

    • HessianThree

      public HessianThree()
  • 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 second derivative of an GrayU8 along the x and y axes.

      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 second derivative of an GrayU8 along the x and y axes.
      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.