Russian
Graphics & Media lab
Eng > Research > Image Resampling Algorithms
[Home]
[Researh]
[Library]
[Publications]
[About us]
[Links]
Hosted sites
[GraphiCon]
[Courses]
Image Resampling Algorithms

Image resampling operation changes the size of the digital image. Conventional algorithms include Nearest Neighbor, Bilinear, and Bicubic interpolation. Other linear filters are also known: Lanczos, Mitchell, Catmull-Rom and other splines. Here we compare the visual quality of these resampling filters, and also review several image-adaptive edge-directional approaches to image resampling. Also we introduce one new method for image resampling, we call it SmartEdge.

SmartEdge algorithm was developed by the Graphics and Media Lab of a State University of Moscow (MSU) in a joint research project with Samsung Electronics.

 

Example

Let's start with some image examples. At the enlarged images we show only image fragments: click on them to view full enlarged images. Some of the images on this page are loss-lessly encoded in PNG format, but some larger images were encoded in JPEG format (at very high quality).

Original low-resolution image - it will be enlarged by 4 times

lhouse.png (36565 bytes)

Non-adaptive methods (linear interpolation filters)

lhouse_nearest_.png (7487 bytes)

Nearest neighbor

 

lhouse_bicubic_.png (31963 bytes)

Bicubic interpolation

 

lhouse_lanczos_.png (34048 bytes)

Lanczos filter

 

Edge-adaptive methods

lhouse_ssplinepro_.png (55987 bytes)

S-Spline Pro program
(Shortcut software)

 

lhouse_sar_.png (37354 bytes)

SAR program
(NEDI + Jensen filter)

 

lhouse_smartedge_.png (35673 bytes)

Smart-Edge
(our own method)

 

Other methods...

 

Another example

Original low-resolution image - it will be enlarged by 2 times

lh_.png (42484 bytes)

Up-scaled images

lh_nearest_.jpg (55672 bytes)

Nearest neighbor

 

lh_bicubic_.jpg (49047 bytes)

Bicubic interpolation

 

lh_sar_.jpg (58004 bytes)

SAR program (NEDI + Jensen filter)

 

lh_nedidehaan_.jpg (49173 bytes)

NEDI (G.D.Haan improved implementation)

 

lh_ssplinepro_.jpg (55067 bytes)

S-Spline Pro program

 

lh_smartedge_.jpg (55070 bytes)

Smart-Edge

 

 

Artifacts

Let's discuss the characteristic artifacts introduced by resampling methods.

Linear methods

Linear resampling methods are always a tradeoff between 3 artifacts: blur, aliasing, and ringing.

Blur is a loss of image sharpness. It can be seen on images up-scaled using bilinear or bicubic interpolation.

blur.jpg (10462 bytes)

Aliasing appears as jagged edges (during up-scaling) or moire patterns (during down-scaling). It is present in images up-scaled using all linear methods, but it is most visible with nearest neighbor, bicubic, and bilinear methods.

aliasing.jpg (10620 bytes)

Ringing (also known as Gibbs phenomenon) appears as halo around edges. It is clearly visible with sinc, Lanczos, and bicubic methods. Some small amount of ringing improves the perceived sharpness of the image, but high amount of ringing becomes annoying.

ringing.jpg (11569 bytes)

It's important to understand that it's theoretically impossible to eliminate all of these artifacts simultaneously with linear methods.

Edge-adaptive methods

The most widely known edge-adaptive resampling method is NEDI - New Edge Directed Interpolation - introduced by Xin Lee. It has several artifacts.

Random pixels appear sometimes in smooth image areas or near smooth image areas.

random1.jpg (12109 bytes) random2.jpg (13158 bytes)

Pattern areas can have large artifacts. They become visible in areas of repeating patterns of small size.

pattern1.jpg (13025 bytes) pattern2.jpg (13292 bytes)

Areas of fine structure can look unnatural. This includes many natural textures, such as leaves, grass, clouds, water.

grass1.jpg (12598 bytes) grass2.jpg (12306 bytes)

 

 

Your comments and questions: lukin@ixbt.com
Thanks to Denis Kubasov for additional web-programming
Graphics & Media lab (webmaster@graphics.cs.msu.su)