Fundamentals of Digital:
2. Colour Management Theory

14th October 2015

Colour Management Theory

So far we have covered the very basics - that colour is really made up of three things (light, objects, and sensors, resulting in a perception of colour). We've introduced basic terminology (standard light, standard observer, gamut, metamerism, and optical brighteners).

We've discussed the fundamentals of digital files - that we should be using Vector or Bitmap as appropriate, if bitmap then high resolution bitmap, and we should be storing our images as high quality, uncompressed files.

We've also covered the basics of pixels, dynamic range, clipping, and bit depths.

Finally, we discussed colour models and in particular RGB and CMYK.

So, we've really begun to discuss colour as numbers in digital files. But we all know that different screens and devices produce wildly varying colour. And that's because those colour numbers aren't being treated with respect. So now we're going to talk about how we can work properly with colour numbers to actually get the colours we want.

The Colour Chain - in Theory

The image below shows the ideal colour chain in theory – as the image moves from input to output, colour is maintained consistently across devices. It’s a nice idea, but as you’ve probably experienced, it doesn’t normally work this way.

The Colour Chain - In Theory

The Colour Chain - In Theory

The Colour Chain - in Practise

The way it normally works, in practice, is more like the image below. Colour varies considerably across devices.

The Colour Chain - In Practise

The Colour Chain - In Practise

The Problem

So far we’ve talked about how colours in the digital imaging world are really triplets of red, green and blue values. When these three additive primaries are mixed together, we get a colour – in 8 bit, any one of about 16.7 million possible colours, in 16 bit any one of about 4 billion colours. (It’s worth noting that the human eye can’t actually distinguish anything like this amount of different colours, it’s more about avoiding banding than anything else - as explained in chapter one).

The problem is that all those numbers mean different things to each different device. The thing we’ve glossed over until now, and it’s a very big thing, is the real meaning of those numbers. At the moment they’re just numbers really – nothing more.

This whole section is about giving meaning to those numbers.

Just what does 255 red mean? We know it’s ‘our most saturated red’, which is a part of the puzzle. But what is our most saturated red? Is it the monitor’s most saturated red? The printer’s best red? Or the camera’s red? What if one day we change monitors – does that suddenly mean the colours in our photos are actually going to change?

It should be pretty obvious that it’s no good using our devices as an absolute reference for what a particular colour number means – because they’re all going to be different. Pretty dramatically different. And yet this is precisely what most people do every day - they sit in front of any old monitor tweaking colour and crossing their fingers - endlessly wasting time, in a wild Hail Mary hope their monitor will bear some resemblance to their final printed output. It's madness, really!

Not only are the different types/brands of devices different in their colours, but each device itself is almost certain to change its colour output over time as the device ages, or ink formulations change, or whatever. Even devices of the same brand, same model number and bought on the same day, will in practise have different colour outputs – due to manufacturing tolerances.

So what do we do? Well, just like the situation with colour above, where we defined standard light sources and standard observers, we’re going to create some standards for what colours are. These are absolute standards for colour that by design have nothing to do with physical devices. Once we’ve got some definite idea of what we’re talking about when we talk about specific colours, perhaps we’ve got a slim chance of convincing our devices to produce those colours.

A Quick Definition

We’ve said colour is a very fluid thing, highly dependent on the light source, the object properties and the observer. We’ve created a few standards for light sources and observers (the reference light sources D50 and D65, and the 2˚ Standard Observer). Only when given a specific light source and specific observer, can we talk about colours in absolute terms.

Absolute colour is a colour, under a specific light source observed by a specific observer. I’m sick of typing that so from now on we’re going to refer to it as absolute colour. (This is my definition, not a universally recognised term – it just saves me some typing!).

The Solution - Colour Management

Colour management is all about giving meaning to colour numbers. It’s about bringing colour consistency to colour across all the devices we might use – from the input end of things (cameras, scanners etc) through our image editing environment, to the final output medium (prints, screens etc).

It’s not really about making a perfect screen to print match, as many people think. In fact, given the gamuts of printers and screens are pretty fundamentally different, it is pretty much impossible to achieve a perfect screen to print match across all images (so called ‘what you see is what you get’ nirvana). However, you can come surprisingly close, and colour management tools offer the best methods currently available for dealing with the problems as they can, and do, arise. It's really What You See and What You Get is What You Mean - (WYSAWYGIWYM?)

Colour Management in the Wild

Many people are able to find perfectly adequate working methods that suit their needs at various levels of implementation of colour management workflows – ranging from no colour management at all (eyeballing and guesswork) to the ideal chain – colour management at all stages of the process.

This course isn’t about finding methods that are adequate, or quite good, it’s about finding methods that are superbly accurate, methods that allow us to achieve excellent, predictable and repeatable results. Methods allowing us to print as well as anyone in the world can print – that’s the goal.

The need for good colour management is unarguable. If someone tells you they don’t need it, or it doesn’t work – and someone inevitably will along the way - it just means they are ignorant, incapable of seeing the difference, or simply not working to a high level of quality. Avoid where possible!

It’s simply the case that many people have not really developed an ability to SEE a fine print, let alone produce one. They have simply not trained their vision to appreciate the more subtle differences and the level of complexity that good prints have. It takes years, indeed a good chunk of a lifetime, to really develop the ability to see, and to properly analyse, fine prints, and each of us are at different levels.

The internet is full of colour management mythology and misunderstanding. Not surprising really, because it is a complex field and a relatively young one. It’s also difficult to decide how much to learn about the field – how much of the knowledge is really necessary for practical work. But be wary of people armed with a little knowledge – it’s a dangerous thing. They’ll swear blind that something works a particular way, when it is obvious to anyone who has actually tested it that it doesn’t.

In this course, the aim is to teach you to be a little bit smarter than the average bear. We want to go beyond the very basics, to get you to a real level of understanding - all with the goal of making a real, tangible difference to the quality of your work. This next section is quite heavy on theory, but pretty soon we’ll be putting this all to work for us, and if you follow all the theory through, you’ll be in a much better place when it comes to understanding the practise later on.

So, let’s move on to Colour Models and Colour Spaces. These are the core concepts in colour management and learning to understand them, and use them properly, will put you ahead, in colour management terms, of at least 90% of the other working image makers in the world in terms of what you can achieve in printing.

Good colour management is really what puts the Fine in Fine Printing.

Colour Models Revisited

We've previously touched briefly on colour models. We said there are many ways for computers to represent colour, and RGB is one such colour model – the one we are going to spend 90% of our time talking about.

CMYK is another important colour model we’re going to come across in practice, but there is a third colour model that forms the theoretical basis for all colour management and is worth discussing – LAB, the colour model that best represents the human eye’s perception.

LAB - the Universal Language

The LAB colour model is an attempt to model colour as the human eye sees it. LAB represents the gamut of colour the human eye can see. LAB is therefore, by definition, the boundary for colour that we care about.

Colour Space

Colour Space

LAB is also known as the (profile) connection space, because it is in fact the space that all the colour management systems do their maths in, including Photoshop’s Colour Engine (ACE). It’s sometimes called the universal colour space, or the translation colour space, and when you see the colour space graphs, like the one above, they are actually plots of colour spaces within the LAB colour space.

LAB is defined by three components – L for lightness, and A and B for chroma, or colour, components. In theory, every colour we can see has an LAB value. In practice, like most mathematical models, LAB isn’t perfect, but it works pretty well and we can let the colour scientists worry about the remaining imperfections.

LAB is a colour model using three primaries (like RGB) except those primaries are a little harder to understand.

L* (L star) represents the lightness of a colour

0 = black, 100 = white

A* represents how red or green a colours is

Negative indicates green, positive indicates red

B* represents how blue or yellow a colour is

Negative indicates blue, Positive indicates yellow

Any colour, represented in any other colour model, has in fact a corresponding LAB value hidden in the background. When people are getting really technical about colour, and trying to pin down absolute colours, they typically use LAB values. Spectrophotometers usually give an L.A.B. reading for a particular colour (and usually corresponding spectral data for that colour as well).

We’ll be referring back to LAB at various times, you don’t need to understand too much about it, the key point is that LAB values are the mathematical language for absolute colours we’ve been talking about.

Just keep in the back of your mind that all colours can be translated to LAB values if necessary. LAB values are like English – pretty much everyone speaks it. (Really LAB values are more like what Esperanto was supposed to be – the universal language of colour).

LAB - Why not LAB?

If we have a universal language that defines all the colours the human eye can see, why don’t we just make all our devices use LAB, and why don’t we then just work on our files in LAB mode rather than RGB mode in Photoshop? Why not leave all this RGB and CMYK stuff behind?

It is in fact quite possible to work in LAB, and some people regularly do, for a variety of reasons. However for general purpose usage, LAB isn’t a great place to be because it makes colour significantly harder to understand than the RGB model.

Using RGB (and the digital colour wheel) is conceptually simple and matches how our brain thinks about colour. Through isolating colours and clearly identifying the primaries and their opposites, RGB is much easier than trying to manipulate colours in the odd language of A and B.

Also, RGB colour models generally have a simple to understand neutral axis – that is as our numbers range:

0,0,0 through 128,128,128 to 255, 255, 255

we have:

black, neutral shades of grey from dark to light, white.  

So RGB (the language of light) is a very convenient and conceptually simple place in which to work.

So, let's go back to the RGB colour model, but keep in the back of your mind that all colours can be translated to LAB values if necessary.

Colour Spaces - Dictionaries and Boundaries for Colour

Colour spaces are dictionaries for colour. All those RGB colour numbers in your file are given real, precise meaningonly by the colour space attached to that image (i.e. colour spaces define those colour numbers in absolute colour terms).

If your file does not have a dictionary (i.e. colour space) attached, then the numbers in your file don’t really mean anything, and you are completely at the mercy of whatever device is displaying/printing your image at the time.

Photoshop and colour spaces.

For any given file, Photoshop will tell you what colour space it is in:

Using the arrow on the status bar, choose ‘Document Profile’ to show the profile for any image

Using the arrow on the status bar, choose ‘Document Profile’ to show the profile for any image

An image with a colour space attached is said to be tagged. An image without a colour space attached is said to untagged.

Untagged images are dangerous to work with, because their colour numbers have no real meaning, and results will be unpredictable. From now on, you should do your best to work always and only with tagged files.

We’ll talk about how to do this in a second.

But first…

What Colour Spaces are actually doing…

Colour spaces actually translate RGB triplets to absolute LAB values. This is how they give meaning to colour numbers. All 16.7 million different colours, in 8 bit, and 4 billion colours, in 16 bit, get mapped to specific points in the LAB colour model, representing some absolute colour within the total range of colours the human eye can see.

As an example, take:

(128, 0, 0) – a medium saturated red.

In Untagged RGB (i.e. if you are NOT working in a defined colour space)

(128, 0, 0) = unknown LAB value

...which results in a monitor’s best guess at this red, or printer’s best guess at this red. These won’t match. There’s no real meaning for this set of numbers.

In a defined colour space (eg. AdobeRGB):

(128, 0, 0) = an absolute red 

....defined by the colour space to mean precisely:

LAB (31, 55, 46)

This will be displayed and printed as the same absolute red by both your monitor and printer (if everything is working, calibrated, and both devices are physically capable of producing that red).

Colour Spaces Define Boundaries

By defining all colour numbers in a colour system, colours spaces therefore also define the boundaries of colours representable within that space.

They are abstract mathematical models that define what colour can be held within them. If a colour cannot be held within the particular model (i.e. colour space), then for all intents and purposes, that colour does not, and cannot, exist in that colour space.

As an analogy, imagine we have a bottomless container that can hold only fruits. We can put an infinite amount of anything that is a fruit into that container – apples, oranges, bananas, it doesn’t matter because they’re all fruits. But if we try and put a bicycle into the container, we can’t do it. A bicycle simply can’t exist in our bottomless fruit container because we can’t put a bicycle into the container, and we can’t use what’s inside the container to make one either. Bicycles therefore cannot exist in this container.

In other words, we know all pixels have three RGB values between 0 and 255 which define their colour. Colour spaces define what those numbers actually mean – i.e. how dark is 0, how bright and saturated is 255, and the exact tone (in absolute colour terms) of everything in-between. But there is no such thing as -1, or 256. Colours outside of the boundaries simply cannot exist within the model because the end points are defined and there is no way to store values beyond those endpoints.

It helps to see this visually, so look at the image below. You can see a 3 dimensional shape - think of it as a funny shaped box - with black at the bottom and white at the top. Running up the middle, like a spine, are the greys – from black to white - the least saturated colours. Around the edges are the most saturated colours that this colour space (AdobeRGB 1998) can contain (the colours represented by the 255 numbers in your file if there are any). Colours more saturated (or lighter, or darker) than the colours around the edges of this colour space cannot be represented by this colour space.

3D graph of a Colour Space

3D graph of a Colour Space

...And from the other side (note the L, A and B axes)

...And from the other side (note the L, A and B axes)

To put it all another way – LAB defines all the colours we can see. RGB colour spaces define a smaller subset of those colours, and translate the numbers in RGB form in a particular file, to absolute values in LAB.

The Two Types of Colour Space

There are in fact two types of colour spaces.

Abstract (= Device Independent) Colour Spaces

The first are abstract, theoretical colour spaces. There are many popular pre-defined colour spaces which we’ll discuss later, and it is in fact quite easy to create one’s own colour space. These types of spaces are called device independent colour spaces. They are often also referred to as working spaces, abstract spaces, theoretical spaces…they’re all the same thing. The key point is they (deliberately) have no particular relationship to a specific device.

Device Dependent Colour Spaces

The second type of colour spaces are just the opposite – they are based on measurements of a specific device’s behaviour, and thus are inexorably linked to that device – they are said to be device dependent colour spaces. More commonly, they are referred to as profiles, and they are the key to really getting colour management to work for you in practice. More on these in a moment.

Anatomy of Colour Spaces

(AKA Profiles, ICC Profiles, Tags)

As we saw above, colour spaces are definitions of actual colours – a way of tying all those RGB colour numbers to specific colours in LAB, or the gamut of the human eye.

We saw pictures of colour spaces, and have discussed them as boundaries for colour. It’s time to break them down a little further to see what makes them tick.

All colour spaces have the same general anatomy (i.e. properties that make them a colour space). They all have three basic characteristics:

  • Colourants
  • Black and White Points
  • Tone Reproduction Characteristics

Colourants

The first and biggest of these are the colourants – also referred to as the primaries. These are definitions of the three primary tones of that colour space – the most saturated versions of that particular colour.

In RGB colour spaces, we have Red, Green and Blue colourants.

In CMY colour spaces, we have Cyan, Magenta and Yellow colourants. (In reality, because subtractive primaries, and specifically inks, are pretty complicated, there are sometimes other colorants defined, we can ignore this for now)

The exact colour (and density, or ability to absorb light) of these colorants (e.g. the phosphors in CRT monitors, or the inks in printers etc) are what, fundamentally, determine the gamut of a colour space. In theoretical colour spaces, the colours are chosen, not measured.

Black Point and White Point

Other than the primaries, the other two main properties of colour spaces are the black point and the white point.

The black point is all about density – how dark is the black (i.e. how much light does the black absorb). Density is something we haven’t really discussed yet. There are lots of way to measure density, or at least lots of ways to express the density value of something. Every colour has a density – not only is it a colour, but you can measure, in brightness terms, how much light the colour is reflecting (irrespective of colour). I prefer to think about dynamic range more than density because it makes more sense to me – I can say that, for example, a printer has a dynamic range of 200:1, which means it’s black is 200 times less reflective than its white. That’s easier to understand that saying the printer can achieve a density of 2.1, or whatever. But a lot of old school black-and-whiters really like talking about densities achievable on papers (this is largely because they own relatively cheap densitometers rather than spectrophotometers as far as I can tell). These days, it is more fashionable to talk about black points in LAB values, rather than densities.

The white point is more about colour – what is the colour of the white. Remember how we talked about a white piece of paper, under different light sources, always appearing white? This is because your eye constantly and instantly performs a process known as white point adjustment. It’s really the same thing as when an eye traverses a print – the first point your eyes goes to, involuntarily and unequivocally, is the brightest point in that print. Your eye then uses that as the reference point for all other colours in the print. Essentially, your eye white balances to the brightest highlight in a print. So it’s a pretty fundamental thing.

While each paper has its own white point (under a standard light source, to a standard observer – remember, colour is never absolute!), the fact is that what we consider to be white is highly flexible, and the true white point of a paper will, in practice, always be just as much about the light shining on the paper as it is about the paper itself.

White point should not to be confused with the colour temperature of white. With colour temperature, we’re talking about the colour of light. With white point we’re talking about the colour and brightness of the brightest white a device/medium can achieve (with respect to a specific light source and observer).

Tone Reproduction Characteristics

So far we’ve talked about all the things which define the edges of a colour space – the colourants (most saturated colours achievable) and the black and white points (darkest and brightest points achievable).

We haven’t talked about what goes on between black and white, or between black and the most saturated colours.

The final part of the anatomy of a colour space is a set of curves (sometimes tables) that describe the behaviour of colours in-between black (0) and 255 (most saturated). That is how they travel from one end to the other - is it a liner progression or are there bumps in the road?

The Wacky World of Device Colour Spaces

Ok, now we’re going to put it all together and move away from the theoretical into the practical.

Device dependent colour spaces are measurements of a device’s total colour gamut – as defined by the three things above. From black to white, through all the colours, they are a measurement of what a device can do, be it a monitor, a printer, or anything else.

They’re also called profiles, concrete colour spaces, and device specific colour spaces. They’re all the same thing. Most often you will hear the name profiles used.

We can do this same process with ANY device that outputs colours. Screen, printer, plotter, the basic approach is the same.

Profiles

Device profiles are really translation tables between the numbers of colours in a file and the absolute colours we’re trying to produce on that device.

Perceptually accurate profiles are the key to achieving good colour. They allow you to get the best possible results out of your devices. As we move from input (capture/creation) to output (prints), accurate device profiles are the only things that will keep colour consistent across multiple devices. Working without profiles is really working blind and it is staggering, in an industry so concerned and dependent on colour, that so many people are still not using accurate profiles in their work. There are only a handful of labs in this country that offer really accurate profiles for their printing services. Without them, it is damn near pot luck what colour you will get back from a lab.

Why Device Profiles are not enough…

Remember, measured profiles are device dependent colour spaces. And colour spaces define the boundaries of the colours we can reproduce by defining all those number from 0 to 255 as LAB values.

Working in any particular colour space (profile) absolutely defines the limit of the colours we can work in.

So which profile do we work in? Do we work in our monitor’s colour space so that we can accurately see all the colours we’re working on – no, because there are all sorts of colours are monitor can’t accurately reproduce that we might want to print. So do we work in our printer’s colour space? No, we might get a printer later on with a much better colour gamut, and we don’t want the file to be forever limited by our current printer’s colour space.

What we need is a colour space that is independent of any particular device, and preferably a good compromise for ALL the devices we are going to use – from input all the way through to output. Bring on the device independent colour space.

Device Independent Colour Spaces

AKA Theoretical Colour Spaces or Working Spaces.

You’ve almost come certainly come across a few of these already – sRGB, AdobeRGB 1998 and ProPhoto are probably the three most common. There are actually many of these available, and it is also pretty easy to make your own as well.

But why do we have device independent colour spaces?

Well, we have them specifically because it’s no good being pushed around by our devices, and the devices we actually use will change over time anyway. To separate colour from specific devices, we use working spaces.

Device independent colour spaces are designed with specific purposes in mind. As an example, the popular working space AdobeRGB was designed to be a space large enough to contain all of the typical gamuts of monitors, and both CMYK and inkjet printers. We’ll talk more about specific popular working spaces later.

We use a sensible working space - with its nice, theoretical behaviour, specifically to separate colour from the wanton vagaries of our colour producing devices. They allow us to specify colour precisely and theoretically without concern for specific devices.

The New Colour Chain in Practise

So here’s the colour management workflow as we actually use it in practice:

Colour Managed Workflow

Colour Managed Workflow

As you can see, colour is managed at all stages.

This is achieved by using colour spaces (profiles) to define the colours at each stage from input to output.

At the input end, colour is translated accurately using scanner of camera profiles (in truth camera profiles are very hard to build), into the abstract working space. As we edit the image in Photoshop, we stay in this colour space, with Photoshop using our monitor profile to display the colours as accurately as possible on our screen. As we move from the working space to the output space, output profiles are used to translate from the working space colours to the output space colours for the best possible match.

It All Works, Right?

So that’s it, right? Everything is hunky dory now, because we’ve got systems to translate all the different colour numbers into one universal colour language and get all our devices to show the same colour?

Well, that’s not quite it, of course. But we’re getting closer and that’s all the real theory most people need to understand.

The next stage is to implement this colour workflow in the real world, and to start getting serious about device profiles.

Once we’ve done that, we can get some pretty spectacular results from all of this stuff, and solve many of the problems when we inevitably run into them.

So stay tuned, because in the next section the rubber really hits the road!