Photo Enlargement Interpolation Methods
hoto enlargement of digital images is accomplished through a process called interpolation: the computation of pixel color values between the pixels that already exist.
A pixel is the smallest element of an image or picture on a computer screen. Usually it is a single-colored dot. Interpolation processes for photo enlargement take pixel color information in as data to calculate the information that the pixels between existing pixels would have if they existed – such as would be the case if the image were much larger or “stretched.”
All software programs that can enlarge images use the following pixel interpolation methods:
- Nearest neighbor interpolation
- Bilinear interpolation
- Bicubic interpolation
These basic interpolation methods have existed for years. Today, due to the advent of sophisticated object-oriented computer programming languages like C++, new interpolation technologies that go beyond the basic methods are beginning to emerge. All of these methods are described ahead.
This image was resampled to show the following photo enlargement method differences. The marked area was enlarged 300%.
First: Nearest Neighbor Photo Enlargement Method
In the Nearest Neighbor Photo Enlargement interpolation method, the value of a new pixel is made the same as that of the closest existing pixel. So, when enlarging an image the pixels or dots of color are duplicated to create new pixels increasing as the image grows. The Nearest Neighbor photo enlargement method is the least accurate method of enlarging an image and obvious when you look at an image that has been enlarged using this method. The Nearest Neighbor image enlargement method creates obvious pixilation – edges that break up curves into steps or jagged edges, also called “jaggies.” The Nearest Neighbor photo enlargement yields the least visually desirable result.
The Bilinear Photo Enlargement Method
Bilinear interpolation is the next step up toward a more visually satisfying photo enhancement result. Bilinear interpolation reduces pixilation by filtering the surrounding pixels to smooth out jaggies giving the image edges a smoother look. Color values from only the four surrounding pixels are sampled and filtered to provide the color value for the new pixel added during enlargement. Contrast between the jagged edges produced by the nearest neighbor enlargement method is reduced because of averaging neighboring values together.
The Most Efficient of the Old Crude Enlargement Methods, Bilinear Interpolation
Bicubic interpolation goes a step further than the previous two methods, analyzing the 16 pixels around each individual pixel and using that information for interpolation of the new pixel values. The weighted average of the closest 16 pixels (a 4×4 matrix) is calculated based on distance. This is the method most commonly used by popular photo software packages, and by printer driver software and even many digital cameras for enlarging images. Bicubic photo enlargement produces smoother results than the other two methods, but enlargements above 120% to 150%, quickly degrade in quality and visual clarity.
These three interpolation methods are the limit of the ability of all commercially available photo software, even software costing several hundred dollars. There are many software packages that have a lot of different functionality for manipulating images in various ways and these functions or software capabilities continuously improve – or get better – over time. But the algorithms (computer program code “recipes”) that drive interpolation methods used for image enlargement surprisingly have not been improved upon within their released versions for many years.
For years the above three basic enlargement methods were the only ones available. However, Kneson Software is one company that has taken digital image enlargement technology far beyond the methods discussed above with its Imagener product line. Kneson Software has harnessed the power of the programming language C++ along with ingenious algorithm developments to create the next generation of image interpolation technologies.