Last updated on

23 Apr. 2007

title.png (5734 bytes)

Main page

Upper page

Resampling

Image Resampling Algorithms

Image resampling operation changes the size of a 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 visual quality of these resampling filters, and also review several image-adaptive edge-directional approaches to image resampling. Also we introduce a new method for image resampling, we call it SmartEdge.

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

SmartEdge 2 algorithm is a newer version of SmartEdge algorithm developed for top-notch quality upscaling. Notice the increased level of details and fine texture in the images processed with this algorithm.

Demo program download

Demo program for Windows that implements SmartEdge 2 algorithm is available for free non-commercial use. Please note that the algorithm is currently very slow and consumes large amounts of memory, so it's only applicable to small images.

Download SmartEdge 2 demo application (ZIP)

Example

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 losslessly 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 2 times

lhouse.png (36565 bytes)

Nearest neighbor interpolation pixel replication
Bicubic interpolation from Adobe Photoshop CS
Lanczos filter from ACDSee program
PhotoZoom Pro program version 2.2.2, S-Spline XL algorithm, Generic preset
Genuine Fractals program version 4.1
SmartEdge 2 ***** displayed by default *****

Hover with a mouse over the algorithm name to preview the result.
Click on the algorithm name to get the full image.
SmartEdge 2 result is displayed by default.

Other methods...

 

Another example

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

lh_.png (42484 bytes)

Up-scaled images

Nearest neighbor interpolation pixel replication
Bicubic interpolation -
S-Spline Pro program -
PhotoZoom Pro program version 2.2.2, S-Spline XL algorithm, Generic preset
Genuine Fractals program version 4.1
12-tap NEDI improvements proposed by G.D.Haan
SAR Image Processor version 3.1, new DDL method
SmartEdge first version
SmartEdge 2 ***** displayed by default *****

Hover with a mouse over the algorithm name to preview the result.
Click on the algorithm name to get the full image.
SmartEdge 2 result is displayed by default.

 

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