< back

Now that the computer / digital revolution is well and truly upon us, we in the Graphic Arts fields of endeavour repeatedly come across terms and references that were unheard of just eight or ten years ago, and most likely, interpolation is one of them.

1. to insert between or among others
2. to change by putting in new material
3. to estimate a missing value by taking an average of known values at neighbouring points Math

The above description from Collins English Dictionary should help us understand what interpolation is all about, especially point 3.

When a flatbed scanner converts light into electrical current, converts the current values into digital values and then starts to construct a bitmapped array of information that it will send to the scanning software as a picture, interpolation comes into play. When using a digital camera to capture events for image display etc., depending on the resolution nominated for the camera to save the images to its memory, interpolation again comes into play and so on it goes. Interpolation is used in Painting programs all the time.

All before we even get to see the images and start to manipulate them - again using interpolation, controlled (we hope) guesswork has to be used, and immediately image information that does not exist in the real world (light and colour in these cases) is created to satisfy such things as final size and resolution commands.

Also described in more detail in the *'High End & Flatbed Scanner' page, light reflects from a copy to a simple fixed lens. The lens focuses the image onto a fixed array of CCDs and up to this point nothing changes from scan to scan - always the same size and resolution. Once digitised the information is reconstructed to the dimensions requested by the operator via the scanning software - it is interpolated. With the following diagrams I will try to explain interpolation so that you can appreciate its importance and realise why you should test for the best options when scanning and manipulating bitmap images.

interpo1.gif (765 bytes)

A bitmap image contains an array of pixels - rows and columns. The image above represents one row of digitised values produced from CCDs and because the number of CCDs always remains the *same in any given device, the initial 'actual resolution' will always be the same. As a simple example suppose the operators request equates to double the resolution of the CCD resolution for an image that will output at the same size of the original copy.

interpo2.gif (629 bytes)

The existing virtual pixel data comes directly from the original. However to create twice as many pixels over any length of image data, non existing data has to be created as shown above by the spaces in between the existing. This information does not come from the copy in real time.

interpo3.gif (1632 bytes)

Enlarging the view we also see the actual rows above and below the row that we are interested in, and now the number of new values required can be clearly seen as the gaps between the existing actual values. Remember that our resolution is higher (smaller pixels) but the area covered is to remain the same (more pixels).

The image above also displays just one pixel (coloured red) that has to be created, and red dots marking the existing values immediately around the non existing value that would be used to create it. The new value would be derived from the average of those surrounding values. If you are familiar with Adobe's Photoshop painting program, you might be aware of the three interpolating options, Nearest Neighbour, Bilinear and Bicubic.This simple method would be equivalent to Photoshops 'Nearest Neighbour' algorithm.

More complex algorithms would expand to include many more surrounding values to calculate a new value of just one pixel PLUS slightly change some of the nearest values too. The most complex algorithms go a step further and try to detect detail patterns that may be near by, so further and more accurately, adjusting the new averaged value.

This process has to be carried for each and every new pixel that is added to the original digitised information, one by one, - a very complex and time consuming process.

nearnabr.gif (4784 bytes)

No awards for great graphics but the simple object above left was reduced to 75% (middle) and enlarged to 130% (right) using the Nearest Neighbour method. The results of interpolation are obvious in the near vertical lines but would look alright if I had used the Bicubic method.

interpo4.gif (2427 bytes)

From the three rows shown previously we can see the new pixel values that have been calculated according to the scanning softwares requests.

interpo5.gif (2760 bytes)

interpo6.gif (2271 bytes)

And here we have the final combination of original and new (guessed?) values making up just one small area of a scanned image. The example here is only one of probably hundreds of combinations of 'create or remove' scenarios that can be applied to the virtual CCD information collected by a flatbed scanner before we even see the results.

So flatbed scanners and other digital image capture devices do lie a lot. So much so that it is a wonder that acceptable results can be recovered from any of them. I mentioned Digital cameras earlier and current models usually have auto focus and zoom options. This would overcome many of the problems of current flatbed scanners caused by their rigid design and the large amount of interpolating involved when enlarging or reducing from the original copy and outputting various resolutions (*i.e. one image size exposed to one CCD array via a fixed lens).

Digital cameras offer a selection of resolutions allowing more or less images in memory per download. Unless the resolution is exactly the same as the internal CCD array then interpolation is used each time a photograph is taken and image quality suffers.

But wait! There is more

If an image is reduced or enlarged in a painting program the data has to be interpolated to create the new bitmap information. Make a selection within an image area and rotate it etc. and again interpolation is used. That is why these effects always soften the picture detail, except for perhaps reducing an images size where the smaller image appears to compress the detail and often results in an apparently sharper picture - of course data is lost and enlarging the image again is out of the question.

A bit of willpower will train you to quickly rescan an image if it needs to be enlarged more than 115% to 118% of original size. Too often people will try to use images resized more than these values and the results are terrible. Remember that the viewing public are not all stupid, and poor quality can even subconsciously turn people off an otherwise good advertising campaign etc.. A little willpower to overcome laziness will soon become a quick and practiced habit ensuring best results.

NEVER simply resize a bitmap in the drawing or pagelayout program that it has been imported into. It is far better insurance to quickly resize in a painting program or rescan; once it becomes a habit this simple discipline will be the fastest in the long run. I will discuss the reasons why in the 'Page & Image Errors' topic via the TEXT & DRAWING Lab.

Occasionally many frustrating hours are wasted trying to output jobs because PostScript does not report errors on what are the results of nothing more than bad lazy habits - image resizing is one of them, and few can trace the problems quickly. A couple of bureaus and many students can attest to this after I have been able to offer simple corrections to overcome some of the unknown operator created problems.

< back

Over 120 pages: All major topics divided into Classrooms
Free Backgrounds & Buttons! DTP and HTML "My First Page" HTML lessons
Tutorial Text Search Perl CGI Scripts Typography & Layout
4 pages of Links Visitors Book Perl Scripts Forum n/a
Free Links page Feedback Form Q/A contact Forum

pages Designed & Published - Ron F Woolley
e-mail 1997 '98. Last Revised:  Friday, 31 October 2003 22:04