Class LanczosInterpolator

java.lang.Object
imagingbook.common.image.interpolation.LanczosInterpolator
All Implemented Interfaces:
PixelInterpolator

public class LanczosInterpolator extends Object implements PixelInterpolator

A PixelInterpolator implementing Lanczos interpolation in 2D. See Sec. 22.5.4 of [1] for additional details.

[1] W. Burger, M.J. Burge, Digital Image Processing – An Algorithmic Introduction, 3rd ed, Springer (2022).

  • Constructor Details

    • LanczosInterpolator

      Constructor creating a Lanczos interpolator of order n = 2.
    • LanczosInterpolator

      public LanczosInterpolator(int n)
      Constructor creating a Lanczos interpolator of arbitrary order n ≥ 2.
      Parameters:
      n - order of the interpolator
  • Method Details

    • getInterpolatedValue

      public float getInterpolatedValue(ScalarAccessor ia, double x, double y)
      Description copied from interface: PixelInterpolator
      Returns the interpolated pixel value for the specified position.
      Specified by:
      getInterpolatedValue in interface PixelInterpolator
      Parameters:
      ia - a ScalarAccessor to the interpolated image
      x - continuous interpolation position (horiz.)
      y - continuous interpolation position (vert.)
      Returns:
      the interpolated pixel value at position (x,y).
    • getWeight

      public double getWeight(double x)
      Description copied from interface: PixelInterpolator
      Returns the value of the one-dimensional weight function w(x), that is the weight given to some pixel at distance x from the current interpolation point. This method is primarily used for testing.
      Specified by:
      getWeight in interface PixelInterpolator
      Parameters:
      x - the position relative to the interpolation point
      Returns:
      the weight for this position