示例#1
0
  @Test
  public void compareToConvolve_F32() throws NoSuchMethodException {
    CompareDerivativeToConvolution validator = new CompareDerivativeToConvolution();
    validator.setTarget(
        GradientPrewitt.class.getMethod(
            "process",
            ImageFloat32.class,
            ImageFloat32.class,
            ImageFloat32.class,
            ImageBorder_F32.class));

    validator.setKernel(0, GradientPrewitt.kernelDerivX_F32);
    validator.setKernel(1, GradientPrewitt.kernelDerivY_F32);

    ImageFloat32 input = new ImageFloat32(width, height);
    ImageMiscOps.fillUniform(input, rand, 0, 10);
    ImageFloat32 derivX = new ImageFloat32(width, height);
    ImageFloat32 derivY = new ImageFloat32(width, height);

    validator.compare(input, derivX, derivY);
  }
  @Test
  public void compareToConvolve_F32() throws NoSuchMethodException {
    CompareDerivativeToConvolution validator = new CompareDerivativeToConvolution();
    validator.setTarget(
        HessianThree.class.getMethod(
            "process",
            ImageFloat32.class,
            ImageFloat32.class,
            ImageFloat32.class,
            ImageFloat32.class,
            ImageBorder_F32.class));

    validator.setKernel(0, HessianThree.kernelXXYY_F32, true);
    validator.setKernel(1, HessianThree.kernelXXYY_F32, false);
    validator.setKernel(2, HessianThree.kernelCross_F32);

    ImageFloat32 input = new ImageFloat32(width, height);
    ImageTestingOps.randomize(input, rand, 0, 10);
    ImageFloat32 derivXX = new ImageFloat32(width, height);
    ImageFloat32 derivYY = new ImageFloat32(width, height);
    ImageFloat32 derivXY = new ImageFloat32(width, height);

    validator.compare(input, derivXX, derivYY, derivXY);
  }