James O'Neill's Blog

April 3, 2006

The other man’s grass is greener – a guide to colour in Windows

Filed under: Photography,Windows Vista,Windows XP — jamesone111 @ 1:08 pm

Most weeks, one or other of the photography forums I visit will contain one of the following questions

“Should I set my camera to use sRGB or Adobe RGB as a colour space ? ”

“Why do my pictures look different in different programs ?”

“My Pictures look great on screen but lousy when I print them out, what am I doing wrong ?”

“Someone told me that I need to set my ICM profile, to I’ve set everything to sRGB and my pictures look worse than before”

And all these come down to managing colours

There is more than one way to represent a colour digitally, but the most common formats use 8 bits to represent each of 3 primary colours Red, Green and Blue.
For example these 3 bytes might have values of 240, 160 and 80. 80,80,80 would give a darkish grey. 160,160,80 would add some yellow to this making a brownish colour, and an extra 80 units of red would give us a sort of orangey colour. Unfortunately if you’re photographing a bowl of fruit “sort of orangey” is a bit too vague. You want an orange to be exactly the right shades of orange a lemon to be… well … lemon and so on.

We need a dependable way to map numbers to real colours, but this is easier said than done, two different models of scanner will produce slightly different numbers when scanning the same print. Two monitors (or the same monitor with two different sets of settings) will display slightly different colours for the same sets of numbers. And two printers will produce different colours when printing those same numbers.

“When I use a word,” Humpty Dumpty said, in rather a scornful tone, “it means just what I choose it to mean—neither more nor less.” Lewis Carroll: Alice through the looking glass.

If, like Humpty Dumpty, each device insists that its mapping of colour to number is correct, a print won’t match a scanned image and after adjusting an image to look perfect on the monitor it will look wrong when printed. Enter Image Color Matching (ICM) – and to save jumping between the British spelling to the American one, but I’m going to call it ICM from now on.
ICM uses a Profile to convert between a set of Colours (the colour space) and numbers (nobody calls it a number-space). If a profile says that in a given file 240,160,80 means a specific shade of Orange, then other software which understands profiles can then say “A-ha ! This monitor displays that shade of Orange using 245,155,82, and the printer needs to be sent 235,158,82 to give that same Orange on paper”

Windows XP supports ICM, but applications need to understand it – quite a few applications provide their own ICM support rather than using what is the OS in order to work with older operating systems which lack ICM support.The principle is the same though…

Image file values + image profile –> Colours

Colours + Screen profile –> screen output values

Colours + Printer profile –> Printer output values

Image Colour profiles can be embedded in TIFF and JPEG files. If there is no embedded profile you will either need to tell the software that is opening the image which profile to use, or it will make an assumption – which for software that doesn’t understand profiles is more-or-less standard sRGB . So:
Rule one. Stick to sRGB, unless you’re sure that your software supports profiles. How do you know ? The International Color Consortium have a page to test the ability of software to recognise embedded profiles

What you will notice if you open the page in Internet Explorer is that IE doesn’t support profiles. If you save the image from the lower left corner and open it in Windows Explorer, you’ll notice that it DOES support profiles.

Assuming your software does support profiles, is one profile better than another ? The size of the colour space – the Gamut varies from profile to profile. You can see this quite easily if you download the XP Colour control panel applet. Its colour plot feature lets you compare the gamut of two different profiles. Adobe’s RGB has a wider Gamut than sRGB, – it can do Redder reds, and bluer blues; that’s got to be good, right ?

But then why do specialist ink makers like Lyson make “Small Gamut” inks? In some jobs – like producing graphics arts logos – you want the most intense colour and it doesn’t matter much if you can’t discriminate between very similar shades of the same colour. Other jobs- like making subtly toned black and white images need that discrimination but don’t need intense colours. So Rule two. If you change from sRGB, pick the profile that suits the job. Serious photographers who shoot in RAW format (i.e. not letting the camera convert to TIF or JPEG) can get an advantage here. Some RAW converters will let you specify the final colour space – so the photographer can convert the RAW data from the camera’s sensor to a JPG optimizaed for the internet (sRGB) or a TIF or JPG for their intended print (adobe RGB or Lyson’s small gamut). They always have the RAW data so they can make different files for different printers. When the camera saves as a jpg file the compromise between representing extreme colours or distinguishing very similar ones is made once and for all.

The next step is to set the profile for your printer/ink/paper combination. Printers and their inks don’t automatically give sRGB output – indeed those specialist inks don’t even try. So Rule three: accurate printing depends on adjusting for the printer/ink/paper combination. ICM Profiles automate this (there are other ways: cameras and printers can use “ExifPrint” or “Print Image Matching” to embed a profile in the data which describes the image – this isn’t an ICM profile – and some editors will strip the data out). Often manufacturers have downloadable ICM profiles, and you can buy profiles from third parties or use specialist software to create your own. The Control Panel applet helps to install profiles, and associate them with displays, Printers and scanners. If an application uses the profile and the printer driver is told to make no adjustments to the colours, the image will print as the camera or scanner intended even if the print and on-screen display don’t match.

Which brings me to the display: many monitors are set incorrectly. Rule four: adjust your monitor for accuracy not for the most pleasing image. There are two routes to accuracy: one is to set the monitor to match a profile (calibration), or create a profile for the way the screen is set – which helps if you can’t adjust the monitor settings correctly. If accuracy is critical the monitor should be re-calibrated periodically, because they do drift – that Control Panel applet will remind you to do so.

At it’s simplest calibration just means adjusting the monitor by eye so it displays a file to match an accurate reference print. There are devices which will profile the monitor or help to calibrate it: there is quite a range of prices from about £60 ($100 US) upwards; and some companies will rent out the devices.

So that’s it.

1. Use the profile for the job – if in doubt stick to sRGB.

2. Software that understands profiles, combined with printer profiles mean accurate prints.

3. Screen calibration and profiles give you WYSIWYG (what you see is what you’ll get) previews of your pictures.

This post originally appeared on my technet blog.


Blog at WordPress.com.