TOPICS
Search

Bilinear Interpolation


Bilinear interpolation is interpolation of values at the four vertices of a rectangle by a polynomial that has polynomial degree at most 1 in each of the two variables separately. Let the rectangle be [x_0,x_1]×[y_0,y_1], with x_0<x_1 and y_0<y_1, and let f_(ij) denote the value at (x_i,y_j). With s=(x-x_0)/(x_1-x_0) and t=(y-y_0)/(y_1-y_0), the interpolant is

 p(x,y)=(1-s)(1-t)f_(00)+s(1-t)f_(10)+(1-s)tf_(01)+stf_(11).

The same result is obtained by interpolating along either coordinate direction first and then along the other.

In general, the interpolant has the form a+bx+cy+dxy, so it need not be a linear function of the pair (x,y). For example, corner values 0, 0, 0, and 1 at (0,0), (1,0), (0,1), and (1,1) give p(x,y)=xy. On a rectangular grid, the construction can be applied to each cell and is used, for example, in image resampling.


See also

Bicubic Interpolation, Interpolation, Lagrange Interpolating Polynomial

Explore with Wolfram|Alpha

References

Press, W. H.; Teukolsky, S. A.; Vetterling, W. T.; and Flannery, B. P. "Interpolation on a Grid in Multidimensions." §3.6 in Numerical Recipes: The Art of Scientific Computing, 3rd ed. Cambridge, England: Cambridge University Press, 2007.

Cite this as:

Weisstein, Eric W. "Bilinear Interpolation." From MathWorld--A Wolfram Resource. https://mathworld.wolfram.com/BilinearInterpolation.html

Subject classifications