You are on page 1of 9

Nearest neighbor interpolation-

This is the simplest interpolation algorithm which approximates the unknown pixel value at any pixel in the upsampled image by its nearest neighbor for which there exists a discrete corresponding pixel in the original image. If f(x,y) is the original low resolution image then the high resolution image g(x,y) upsampled by a factor s is given by
g(x,y)=f(a,b),where a=floor(x/s), b=floor(y/s).

Fig.- Applying nearest neighbor interpolation to a 4x4 image. * Image downloaded from 

Bilinear Interpolation-

In bilinear interpolation method, we approximate the pixel values at non-integer locations as a bilinear function of the pixel values at its four neighbor discrete pixels locations. If 0<x<1 and 0<y<1, then the pixel value f(x,y) at location (x,y) for bilinear interpolation is given by The number of computations involved are very less as only 4 pixels are used to compute the unknown pixels values. Hence, this method is generally used in resizing of videos in realtime.

Fig. Applying bilinear interpolation to a 4x4 image. * Image downloaded from 

Bicubic Interpolation

Bicubic interpolation is an extension of the cubic interpolation algorithm. Unlike bilinear interpolation which interpolates image data based on 4 pixels surrounding the pixel, it uses the pixel values of 16 neighboring pixels.

. The linear system of equations described above needs to be solved for every grid cell in order to derive the bicubic spline interpolator. A similar interpolator can be expressed as

The two dimensional interpolator is obtained by operating first in the x direction and then in the y direction. d
, t t

If a is chosen as 0.5, the interpolated function is:

for 0 t 1.

Fig.- Applying bicubic interpolation to a 4x4 image. The image is much smoother than Fig.1 and Fig.2 * Image downloaded from 

Lanczos Interpolation-

The Lanczos filter is a sinc function, which is windowed by the sinc window (also known as Lanczos window). The Lanczos window is the main lobe of a sinc window. Lanczos Interpolation is the done by convoluting the input image with the Lanczos filter function. The one dimension convolution kernel is:

a is a positive integer, usually taken as 2 or 3. a controls the kernel size. The number of zeros in the window is given by a as sinc(x/a) is zero at integer values. On expanding the sinc functions, we obtain:

The two dimensional Lanczos convolution kernel is nothing but the product of two one dimensional Lanczos kernelsFor a two-dimensional image pixel value function I(x, y), the Lanczos interpolation can be done using the formula :

2. Example based super resolutionFreeman et al[5] proposed the now popular example based super resolution scheme in 2000. Their process consists of the following stages Building the image database-

Since this method performs upsampling by relating the correspondence between high resolution and low resolution patches in the images, first a database of such low resolution patches needs to be built. The database is built by performing the exact degradation that the upsampling scheme is supposed to undo. i.e. a set of high resolution images are first blurred and then subsampled to produce the database.

Fig. (a)Estimated high frequencies for the tiger image formed by substituting the high frequencies of the closest training patch. The
lack of a recognizable image indicates that an algorithm using only local low-resolution information is insufficient; we must also use spatial context. (b) An input patch and similar low-resolution (middle rows) and paired high-resolution (bottom rows) patches. For many of these similar low-resolution patches, the high-resolution patches are different, reinforcing the lesson from (a).[4]

coding to perform image upsampling. The 30-day trial version of Perfect Resize was downloaded from
http://www.ononesoftware.com.

Only the results for select images have been published here.

Original 280x280 Maddie image

Downsampled to 50%

Nearest neighbor interpolation 2x zoom

Bilinear interpolation 2x zoom

Bicubic interpolation 2x zoom

Lanczos interpolation 2x zoom

Freeman et al 2x zoom

Kim et al 2x zoom

Fractal based 2x zoom

Original Flower image (481x321)

Downsampled to 25%

Nearest neighbor interpolation 4x zoom

Bilinear interpolation 4x zoom

Lanczos interpolation 4x zoom

Bicubic Inteprolation

Freeman et al 4x

Fractal based 4x

Kim et al 4x

One of the primary reasons for image upsampling is video surveillance. Here we perform upsampling with different methods on a car number plate.

Original number plate(93x38)

You might also like