Manual and automatic colour correction
Tom Arah explores manual and automatic image enhancement.
Ultimately the main function of any photo-editing package is to make photographs look their best. The role is so central that it is often overlooked, but to make the most of your photos you really need to get to grips with your application's colour correction capabilities. That's what I'll be doing this month looking at the main Image>Adjust commands in Photoshop though, as all photo editors work in much the same way, the information should be useful whatever application you use. And I'll end by comparing two solutions that attempt to make the whole issue academic by offering automatic image enhancement with a single click!
The first step in taking control of colour correction is to understand just what it is and what it does. Ultimately all scanned or digital photos are bitmaps which are simply grids of pixel values. In the usual 24-bit image the colour of each pixel is represented by three values representing the red, green and blue components so that 0,0,0 represents black, 255, 255, 255 represents white and 128,128,128 is a neutral 50% gray. Each colour correction works by manipulating these values so that, for example, moving a pixel's RGB values equally towards 0 produces a darker colour while moving them towards 255 produces a lighter colour.
Of course image enhancement doesn't work on one pixel at a time, but rather on all RGB values simultaneously. And before changing these values you really need to what they are to begin with which is where Photoshop's Histogram command comes in. This maps all the pixel values in the image with the x axis representing the color values from darkest (0) at the far left to brightest (255) at the far right and the y axis representing the total number of pixels with a given value. This immediately gives an idea of the tonal distribution of the image so that if all the largest bars are to the left you have a "low-key" image where the detail is concentrated in the shadows, while if they are to the right you have a "high-key" image with detail concentrated in the highlights. An image with full tonal range has a high number of pixels across the board.
The Histogram shows the tonal distribution of pixel values - the raw material for colour correction.
By default the Histogram shows the distribution for all red, green and blue values simultaneously by compositing them to produce a "luminosity" or brightness value for each pixel. Effectively this means that the colour image is treated as if it was a grayscale image which gives the best indication of overall tonal range and how it should be handled. Using the Channels dropdown (or the Ctrl+1, 2 or 3 shortcuts), you can also quickly see the distribution for each of the Red, Green and Blue components separately to gain a clearer idea of the colour balance of your image and how this should be handled.
The first command any user is likely to turn to when enhancing an image is Brightness/Contrast as these are two concepts that we are all familiar with from TV. By looking at the command's effect on the image histogram however it becomes clear that the command is best avoided. By increasing brightness, for example you simply shunt the entire histogram over so that you end up with no solid shadows and a corresponding pile-up of solid highlights and a reduction in overall tonal range. In other words these commands fail because their effects are crudely linear, applied equally across all channels and across the board.
Much more powerful is the Levels dialog (Ctrl+L). To begin with this offers its own inbuilt histogram though its default RGB mapping is less sophisticated than the Histogram command's luminosity mapping as each pixel's values aren't composited first. Underneath the histogram are two markers representing the shadow and highlight end points and dragging these in has the effect of darkening or lightening the image respectively. The difference compared to the crude Brightness/Contrast command is that the remaining pixel values are then redistributed across the full tonal range from 0 to 255 so enhancing the level of detail.
The Levels dialog also has the huge advantage that it provides some control over how the values are redistributed by allowing you to set not just end points but also a mid point or "gamma". If you raise the gamma from 1 to 2 by moving the midpoint from 128 to 64, for example, all the values that previously fell in the 0-64 range will now be stretched across 0-128 while all the values that fell in the 64-255 range will now be compressed between 128 and 255. In other words any detail in the shadow areas will be enhanced at the expense of detail in the highlights.
The Levels command offers non-linear control over the tonal map.
Just as important is the fact that the remapping doesn't have to be handled equally across all channels. Again using the dropdown list you can both see and independently manipulate the separate red, green and blue channels or, if you select any two channels in the channel palette before selecting the Levels command, you can manipulate two simultaneously. Clearly changing channels independently has repercussions on the colour balance of the image, a fact which you can use to your advantage by increasing the gamma of the red channel, for example, to give your sunset a lift.
The Levels dialog also offers a way of combining changes to tonal distribution and colour balance simultaneously. It does this by introducing the idea of targets which are handled with the eyedropper tools. By double-clicking on the shadow and highlight icons you can set the desired target endpoint values which for print are usually set to RGB levels of 10,10,10 and 244,244,244 respectively. Using the eyedroppers you can then click on the darkest and lightest pixels in the image. Photoshop then maps the RGB values of these pixels to the RGB levels of the targets and redistributes all the values in between accordingly. At its best this simultaneously brings out tonal detail and removes any colour cast.
The Levels dialog offers a good cross between image information and colour correcting power, but for absolute control you need the Curves dialog (Ctrl + M). This doesn't offer a histogram but does offer complete control over the process of tonal redistribution. In particular it allows you to click on the mapping curve to add anchor points that can then be repositioned. Dragging up lightens the image, dragging down darkens it (assuming that the dialog is set to display brightness levels). In this way you can limit changes to just a section of the curve or create the classic contrast curve where the quarter tone marker is dragged down and the three-quarter tone marker is dragged up but the midtone is left unaffected. The end result is darker shadows, lighter highlights, unaffected midtones and an overall non-linear increase in contrast.
The Curves command offers absolute control over tonal redistribution.
Like Levels, the Curves command also allows target-based redistribution across channels with the eyedropper tools or direct and precise editing of individual channels. This offers maximum control but Photoshop also offers a range of easier to manage colour control through dedicated dialogs. The Colour Balance command (Ctrl+B) lets you quickly change the mixture of colours in the image. It offers three colour sliders with each primary - red, green and blue - paired with its complement on the colour wheel - cyan, magenta and yellow - so that adding red is equivalent to subtracting cyan.
The Colour Balance command is useful for general changes and also offers the ability to target shadows, midtones or highlights. Rather than targeting tonal cross sections though you'll more often want to target individual colours, for example if you think that the greens in an image are too blue. Using the Selective Colour command you can do just this isolating any of the colours available from the dropdown list - red, green, blue, cyan, magenta, yellow, black, white and gray - and altering the CMYK values associated with each. Each colour range is treated independently so that you can decrease the cyan component in greens while leaving the cyan component of blues unaffected. You can also change values absolutely, where subtracting 10% cyan will do just that, or relatively, where the change is proportionate to the existing value.
Normally colours are handled by manipulating their RGB or CMYK equivalent values, but an alternative way of looking at any given colour is in terms of its HSL - its hue, saturation and lightness. The Hue/Saturation command (Ctrl+U) lets you adjust each of these values across the image just as Colour Balance lets you alter RGB values. Changing Lightness is just as crudely linear as the Brightness/Contrast control while changing Hue shifts the image unpredictably around the colour wheel (though it can be useful for tinting grayscales with the Colorize option selected). Changing Saturation on the other hand can be very useful as it moves each hue towards or away from its pure value. You'll often want to tweak this up to make your image more vivid, but you can also tone down an over-saturated image. Using the separate Desaturate (Shift+Ctrl+U) command takes this to its logical conclusion turning all colours to grayscale.
As well as colour correcting the entire image through the master channel, the Hue/Saturation command also lets you target the individual primary colours - red, green, blue, cyan, magenta and yellow from the Edit dropdown list. In Photoshop 5.5 and later, the selected range then appears as input and output ranges at the bottom of the dialog to show the before and after mapping. You can drag the adjustment markers to fine-tune the colour range affected and its fall-off rate or you can use the eyedropper tools to add or subtract from the current range. A similar effect with slightly more control is available with the Replace Colour command which lets you create a mask based on specific colors in the image within which you can then adjust the hue, saturation and lightness values. This has the advantage of a mask preview to show you which areas will be affected and eyedroppers and a fuzziness slider so that you can interactively widen or lessen the area affected.
The Replace Colour command lets you make an accurate colour selection and then manipulate hue, saturation and lightness.
Strictly speaking these are all the main colour correction commands, but there's one other command, or rather filter, that's just as vital to making your photo look its best. The Filter>Sharpen>Unsharp Mask (USM) command is used to intelligently increase the colour difference between neighbouring pixels to enhance the detail in an image. The command works by comparing each pixel's original values to its corresponding values in a gaussian blurred version of the image with the difference between the two determining the amount of sharpening applied. The Amount setting determines just how much the pixels can be lightened or darkened, the Radius setting controls the level of blurring with low figures limiting the sharpening effect to edges, and the Threshold setting ensures that pixels will only be altered if they differ to adjacent pixels by the given amount.
Between the various colour correction commands and USM, the level of control over your image's histogram and appearance is immense. Essentially your original pixel values are just the starting point that you can then target and manipulate - and I've yet to see an original scan that couldn't be enhanced one way or another. For absolute control the power Photoshop offers is impressive, but there's a huge downside. For individual images destined for commercial print such hands-on processing is well worthwhile, but let's face it - manually processing hundreds of digital camera images in the same way is frighteningly boring with many of the tasks essentially repetitive.
There has to be a simpler way and indeed Photoshop offers three commands that promise to help out by automating the enhancement process. The first of these is 5.5's new Auto Contrast (Alt+Shift+Ctrl+L) command which simply maps the darkest and lightest pixels in the image to black and white, causing highlights to appear lighter and shadows darker. This command works equally across all channels so doesn't affect colour balance, while the Auto Levels (Shift+Ctrl+L) command redistributes the lightest and darkest pixels in each channel as white and black and then redistributes each channel's intermediate pixel values proportionately. At its best this command increases detail and removes any colour cast simultaneously and is also available as a starting point when using the Levels and Curves dialogs via the Auto button.
The third automatic command is the Equalize command. This works like the Auto Contrast command by mapping the darkest and lightest pixel's values to the shadow and highlight endpoints, but then goes a stage further by attempting to equalize the image brightness that is, to distribute the intermediate pixel values evenly throughout the grayscale. In other words the command fine-tunes the redistribution of values to flatten out the RGB histogram's peaks and troughs. Trying this on an underexposed image can be a huge eye-opener revealing detail in shadows that just isn't originally visible, but the damage done to colour balance and accuracy is huge.
The Equalize command flattens the RGB histogram bringing out detail irrespective of the original colour distribution.
The Equalize command as it stands is a step too far, but don't forget that you can always use the retrospective Fade command to tone down the correction and to trade off new detail against unwanted colour changes. More to the point it shows the potential for automatically massaging the image histogram to bring out detail that would otherwise be lost. The problem is that it arbitrarily decides to target an entirely flat RGB histogram irrespective of the original distribution. What's needed is a more intelligent approach.
That's exactly what two third-party automatic image enhancement plug-ins, AutoFX AutoEye and Extensis Intellihance Pro attempt to provide. AutoEye makes much of its "patented IVIT detailing algorithms" and other secret technologies suggesting that the enhancement process is a mysterious dark art. Intellihance is more open about how it goes about its work, measuring the image's existing contrast, brightness, cast, saturation and sharpness, comparing these factors to idealised targets and then intelligently processing them accordingly.
Both programs provide dedicated filter dialogs (and AutoEye can also work as a standalone app) offering customized control over their colour correction capabilities. However in both cases the level of control and feedback is disappointingly less than with the separate Photoshop commands. In any case both programs really stand or fall by their promise of one-click enhancement - so the million-dollar question is do they work? I set up a head-to-head by batch processing directories of indoor and outdoor digital and stock photos with each program's default enhancement and then compared the results using CompuPic Pro's slideshow feature.
So does auto enhancement work? Assuming your images are of a reasonable starting resolution and that any JPEGs haven't been overly compressed, the answer is a resounding yes. In each case the processed photos were far stronger, with more detail and tonal range than the originals. In some cases I would have chosen to make different choices if I'd been manually colour correcting, and both programs effectively admit the one-size-fits-all approach isn't ideal by offering different presets that can be applied to dark images, light images, dull images, and so on. Even so the most important fact is that all the images looked better after processing than they did before.
So which plug-in is better? Intellihance's results were as good as I've come to expect as a long-term user. The AutoEye images though were a revelation. Where the Intellihance images look like high-quality prints, the AutoEye images look like slides on a light box. This impression isn't confined to onscreen appearance as AutoFX points out that its images "will convert better to CMYK than a normal RGB image as the colour space is modified in such a way as to maintain as much vibrancy and detail as possible." It's as if the images have been rescanned on a drum scanner! It just wouldn't be possible to achieve the same results using the traditional colour correction commands so what is going on? Does AutoEye really work by magic?
At its best AutoEye works like a drum scanner.
I think the clue is in that colour space modification. Where the Image>Adjust corrections work on RGB, CMYK or HSL values, there is another way of looking at colours. If you convert an image to Lab mode you'll see that it is split into three channels L standing for lightness or luminance and A and B which are two chromatic components ranging from green to red and from blue to yellow respectively. Trying to colour correct in Lab mode is difficult as managing these colour channels is counter-intuitive, but the advantages of dealing with brightness and colour separately in a device-independent colour space that was modelled on how the human eye perceives colour are clear. I can't be sure that that's how AutoEye works but the fact that Photoshop converts to Lab mode as an intermediate step before converting to CMYK would certainly explain how maximum CMYK detail is maintained, and also explain the delay when AutoEye processes files.
Ultimately though how AutoEye works is unimportant, what matters is that it does. For customized control I still turn to Photoshop's Image>Adjust menu - but now that's only after I've turned to AutoEye.
Hopefully you've found the information you were looking for. For further information please click here.
For free trials and special offers please click the following recommended links:
For further information on the following design applications and subjects please click on the links below:
[3D], [3ds max], [Adobe], [Acrobat], [Cinema 4D], [Corel], [CorelDRAW], [Creative Suite], [Digital Image], [Dreamweaver], [Director], [Fireworks], [Flash], [FreeHand], [FrameMaker], [FrontPage], [GoLive], [Graphic Design], [HTML/CSS], [Illustrator], [InDesign], [Macromedia], [Macromedia Studio], [Microsoft], [NetObjects Fusion], [PageMaker], [Paint Shop Pro], [Painter], [Photo Editing], [PhotoImpact], [Photoshop], [Photoshop Elements], [Publisher], [QuarkXPress], [Web Design]
To continue your search on the designer-info.com site and beyond please use the Google and Amazon search boxes below:
|designer-info.com: independent, informed, intelligent, incisive, in-depth...|
All the work on the site (over 250 reviews, over 100 articles and tutorials) has been written by me, Tom Arah It's also me who maintains the site, answers your emails etc. The site is very popular and from your feedback I know it's a useful resource - but it takes a lot to keep it up.
You can help keep the site running, independent and free by Bookmarking the site (if you don't you might never find it again), telling others about it and by coming back (new content is added every month). Even better you can make a donation eg $5 the typical cost of just one issue of a print magazine or buy anything via Amazon.com or Amazon.co.uk (now or next time you feel like shopping) using these links or the designer-info.com shop - it's a great way of quickly finding the best buys, it costs you nothing and I gain a small but much-appreciated commission.
Thanks very much, Tom Arah
[DTP/Publishing] [Vector Drawing] [Bitmap/Photo] [Web] [3D]
[Articles/Tutorials] [Reviews/Archive] [Shop] [Home/What's New]