Mike Chaney's Tech Corner

Technical Discussions => Articles => Topic started by: admin on May 27, 2009, 03:21:20 PM



Title: October 2008: Interpolation Revisited
Post by: admin on May 27, 2009, 03:21:20 PM

Interpolation Revisited


Background

As manufacturers continue to increase sensor resolution and consumers continue to replace their old cameras with new cameras that have 20% more pixels, over the years, the demand for high quality interpolation methods isn't what it used to be a decade ago when we were all trying to get good 8x10 photos from 1 megapixel cameras.  Still, there are numerous interpolation tools on the market, some costing half as much (or more) as your professional photo editor.  Do you need these tools?  Do you know what to look for if you do?  This month we take a look at interpolation and inject a bit of reality into something that is often discussed but rarely fully understood.

 

Pixels versus print size

Anyone who has walked too close to a TV screen or looked at a newspaper with a magnifying glass will realize that photos are made of many dots.  If you don't have enough dots for the size you are displaying, you can start to make out the blocks (pixels) that make up the image.  View a 9 inch TV from 5 feet away and everything looks smooth and clear.  View a 50 inch TV from the same 5 foot viewing distance and the image starts to look blocky: lines that should be smooth have jagged edges and solid colors look like they sparkle with thousands of tiny lights.  The point at which we have enough dots to make the photo look smooth to our eyes is call "photo quality".  Photo quality as it refers to resolution typically means that there are so many pixels in the photo that our eyes perceive the image that the pixels form without being able to detect the pixels themselves.

Even this simple phrase (photo quality) is something that is debated often.  The most commonly accepted standard is that 300 pixels per inch is enough to render a printed photo with full photo quality.  At 300 pixels per inch (PPI), there is generally no need for interpolation to increase resolution because there are already enough pixels to make our eyes see the photo as "smooth".  Unfortunately, there are many things that affect this 300 PPI standard not the least of which are the subject matter in the photo, the intended viewing distance, and even your eyesight.  For the sake of simplicity, we'll use 300 PPI as a good general guideline rather than a concrete standard for photo quality.

Using the 300 PPI guideline, let's take a look at what we can print (or display) from today's digital cameras.  10 megapixels seems to be a good average for many recent digital cameras although that number changes about twice a year and also depends on whether we are talking about high end cameras or point and shoot cameras.  Using 10 megapixels as our example camera, the camera offers about 4000 x 2650 resolution in the 3:2 format so the largest photo you can produce at 300 PPI is 4000/200 x 2650/300 or 13 x 8.8 inches.  Anything larger and you'll be below the 300 PPI photo quality guideline.  In addition, if you crop the photo, you reduce the resolution as well so cropping is basically equivalent to printing at a larger size.  Print an 8x10 from your 4000 x 2650 photo and due to cropping, you'll only be able to use about 3300 x 2650 of the photo in order to get that size so you're already down to 330 PPI at an 8x10 print size!  Does that mean that your expensive 10-11 MP camera is only good for 8x10 photos and not much larger?

 

Interpolation

Let's say you want to print a 13 x 20 photo from your 10 MP camera.  You do the math and 4000 pixels divided by 20 inches leaves you with only 200 PPI.  Do you need interpolation?  Will you be able to tell the difference between different interpolation methods at that size?  These are tough questions to answer.  The first thing you must realize is that interpolation is guessing.  Interpolating from just 200 PPI up to 300 PPI requires more than doubling the number of pixels in the photo.  That means that if you interpolate from 200 PPI to 300 PPI, you end up with a 300 PPI photo but more than half of the information in that photo is nothing more than an educated guess!

Fortunately, the good thing about the guesswork (and therefore interpolation) is that it is better to make an educated guess than to not try at all.  By looking at the existing data and making an educated guess regarding what could be "between" the pixels, you can reduce the appearance of jagged edges that make the photo look more like a video capture.  Interpolation can make your output look more like a photo and less like a "printout".  Some interpolation methods are better than others but in the end, you have to remember that they are all trying to "guess" about the missing data, that is, the data missing between the number of pixels you actually have and what you need to make a good photo.

With cropping combined with large prints, you can sometimes find yourself pushing the limits.  Interpolation can make the photo look more acceptable but it can only do so much.  If you print/crop enough so that you only have 100 PPI available for example and you want to get to 300 PPI for your prints, going from 100 PPI to 300 PPI means that the interpolator is guessing at nearly 90% of the data so your interpolated 300 PPI photo will have 10% real data and 90% guesswork.  We're only talking about a 3x enlargement here but by any standard and using any interpolation algorithm, the result will be abysmal compared to the same photo taken at 300 PPI originally.

With interpolation, a 200 PPI 13 x 20 print from your 10 megapixel camera can look very good.  Certainly, it would pass as a "real photo" even though it may not be quite as tack sharp as it would be if you had the full 300 PPI in the original shot.  The bigger you print (and/or the more you crop) however, the more challenging the task becomes and the more important the interpolation method.  Most interpolation algorithms do a decent job for reasonable enlargements like stretching 200 PPI to 300 PPI and there will be little difference between them for these "reasonable enlargements".  It's only when you really stretch the envelope that the interpolation method becomes paramount.  Let's take a look at a 4x enlargement: the equivalent of stretching a 75 PPI photo up to 300 PPI.  That's like taking your 10 megapixel photo and printing it at 53 x 35 inches!  While that may seem ridiculous, there are times when super large prints are needed and when you add cropping and/or use a camera with significantly less resolution, the task hits closer to home even on more reasonable size prints.

Original

 Zoom

Above we see a 400% enlargement of a sleeping tiger.  The enlargement is what you would see if you simply zoomed in by 4x on the original image.  Notice the jagged/broken lines and general blocky appearance.  The 4x enlargement obviously doesn't have enough resolution for the given display size and could benefit from interpolation.  The larger photo is what you might see if you took a picture of the entire tiger with your cell phone and then cropped out just the head.  Is it possible to get a good photo from this by just using interpolation?


Photoshop Bicubic Smoother

Above we see the same enlargement but this time we've interpolated to the 4x size by using PhotoShop's bicubic smoother interpolation method.  Notice how the jagged edges and blocky areas have been reduced.  The interpolation has made the photo softer, however, and it resembles an out-of-focus photo.  Most of the softening is by design, however, as a 4x enlargement leaves us with 6% real data: 94% of the information in the photo is guessed!


Stepped or "Stair" Interpolation (10% increments)

Another method of interpolation involves interpolating in small steps rather than one large step.  The stepped interpolation above looks a bit sharper than the one step method but it comes at a price: you can see some ringing and halo artifacts that basically make the image appear a little noisier or more compressed.


Qimage Hybrid Interpolation

A more complex algorithm like Qimage's hybrid interpolation further reduces jagged edges without introducing more noise/artifacts.


PhotoZoom Pro 2 Interpolation

The above, interpolated via PhotoZoom Pro 2 with default settings, shows a super sharp result but oversharpening some edges makes this photo look more like a painting than a photograph.  Many of the most sophisticated interpolators make very sharp edges.  The problem with this, as can be seen above, is that there simply isn't enough information from the original to dictate which edges should be sharp and which should be softer so some edges that should not be sharp are made sharp and this disrupts the continuity of the photo.  Notice how the dark bands in the tiger's fur have been rendered much too sharp, making it look like face painting rather than just dark fur.  The area between the whiskers has also been oversharpened making it look like there are three distinct flaps of skin between the whiskers.  Keep this in mind when deciding which algorithm to use as this method works very well for animated characters (cartoons), some posters, and computer graphics but has problems with some photographs.


What the photo really looks like!

Above you see what the photo would look like if you had used a 4x zoom lens and you didn't have to interpolate.  Pretty drastic difference isn't it?  Now you can see what a challenging task these interpolation algorithms really have in coming up with that much extra data.  There is no substitute for well thought out photography and in the end, the best answer is to always make sure you have enough pixels for the job as interpolation can only do so much!  When you compare the above high resolution photo to all the interpolator samples, you realize there really isn't a whole lot of difference between any of the interpolators as far as how close they can get to reality when dealing with extreme enlargements.

 

Summary

While heavy duty interpolation may be a thing of the past for most of us, there are situations where interpolation can help improve the appearance of your prints.  Comparing even the best to the worst interpolation methods, it's often a "beauty is in the eye of the beholder" race and the bottom line is that they all do a reasonable job on reasonable enlargements.  In fact, up to about a 2x enlargement (going from around say 210 PPI up to 300 PPI) there isn't a whole lot of difference between interpolation algorithms.  You only start to see significant differences above about a 2x enlargement and by that point, none of them are going to do a great job in all honesty just because there is so little information (from the original photo) to work with.  For this reason, it is always best to try to work around the problem so that you don't need interpolation, using the proper lens/zoom and ensuring that radical crops are not needed.

When heavy handed interpolation is needed, evaluate the method you would like to use by what you are doing.  The more general purpose methods like PhotoShop bicubic smoother and Qimage's hybrid interpolation work well on all photos without further adjustments to the interpolation algorithm.  Beyond that are the specialized interpolation algorithms but as with the PhotoZoom Pro example above, be sure that you use a method that works well for the type of images you have.  The most sophisticated methods often require some adjustment on an image-by-image basis and no single method will work best for all types of photos!

Even though interpolation is limited in what it can do at the extremes, it can improve printed photos and render sharper results if you match the resolution (PPI) of the print driver.  Most print drivers offer only the simplest interpolation (not as good as the ones shown in this article) which means that sending "odd" resolutions that are not integer multiples of what your driver uses can result in lower quality prints.  My own Qimage takes care of this by always automatically matching (interpolating to) the driver resolution regardless of the print size so that the need for manual interpolation is eliminated, but driver resolution matching is a subject for yet another article.  In the mean time, if you find yourself in need of some extra pixels, I hope the information in this article will give you the tools you need to evaluate whether or not you actually need interpolation,  how different interpolation methods perform, whether or not you actually need interpolation software beyond what you already have, and what to expect as far as results.  I also hope I've  encouraged you to avoid (at least the extreme) interpolation whenever possible since even the best methods are quite limited.  Sometimes we don't realize just how limited all interpolation methods really are until we compare to an photo that never needed interpolation to begin with!

 

Mike Chaney



Title: Re: October 2008: Interpolation Revisited
Post by: Jonley17 on June 19, 2009, 05:04:36 AM
Based on the theory of approximation, this paper presents a unified analysis of interpolation and resampling techniques. An important issue is the choice of adequate basis functions. The authors show that, contrary to the common belief, those that perform best are not interpolating. By opposition to traditional interpolation, the authors call their use generalized interpolation; they involve a prefiltering step when correctly applied. The authors explain why the approximation order inherent in any basis function is important to limit interpolation artifacts. The decomposition theorem states that any basis function endowed with approximation order ran be expressed as the convolution of a B spline of the same order with another function that has none. This motivates the use of splines and spline-based functions as a tunable way to keep artifacts in check without any significant cost penalty. The authors discuss implementation and performance issues, and they provide experimental evidence to support their claims.




_________________
Custom banner (http://www.ballyhoobanners.com/)