Bicubic interpolation example

In a bicubic interpolation, first the position of each pixel in the output map is determined; then the values of 16 surrounding pixels of the input map are used to calculate an interpolated value for each pixel in the output map.

Figure 1 below shows the position of a 'new' pixel in the output map, and the position and values of 16 surrounding pixels in the input map.

  

Fig. 1: Principle of bicubic interpolation.

The value of the 'new' pixel in the output map is calculated by:

A third order polynomial is fitted through each set of 4 known points and from this the value of the fifth point is known. A bicubic interpolation gives a better estimate of the output value than a bilinear interpolation.

See also: