Concept

Colour space — where it appears

A set of coordinates for colour, defined by primaries, a white point and a transfer function. Naming one is not optional: three numbers mean nothing until it is named, and two systems disagreeing about it disagree about every colour.

Named by 7 essays across 4 fields — each of them below, with the objects they name alongside it.

The sRGB transfer function, and the gamma 2.2 curve it is not. Code value against relative luminance. The sRGB function is piecewise — a short linear segment near black, then a 2.4 power law with an offset — and it is close to but not the same as a plain 2.2 power law. Half-way along the axis of stored values sits at 21 per cent luminance, and half the luminance of white is at code 188.

A hex code is not a colour

Six hexadecimal digits identify three numbers. Turning three numbers into a colour needs a colour space, a transfer function, a white point and a display, and leaving any of them unstated is the everyday version of every confusion in colour management.

matching · Gamut
sRGB, Display P3 and Rec. 2020 compared on the chromaticity diagram. Three nested triangles inside the horseshoe. sRGB covers 74 per cent of the area P3 covers. Rec. 2020's red and green primaries sit on the spectral locus itself, within 0.000 and 0.006 of it, meaning they are monochromatic.

Six numbers make a space

An RGB colour space is eight numbers — three primary chromaticities, a white point, and a transfer function — and everything else about it is derived. Deriving it rather than copying the matrix is the difference between having a colour space and having a table somebody else computed.

matching · Gamut
An edge at 4:2:2, and the colour it arrives as. Above, the row as it was sent and as it arrives after the two chroma planes are averaged 2 samples at a time. Below, the colour difference at each sample. The worst is ΔE00 = 25.88, at a luma step of 0.058 across the edge — an edge of nearly equal luminance. Nothing is wrong with the codec: it discards the differences the eye resolves worst, and this edge is made of nothing else.

Colour thrown away on purpose

Every video format in use discards three quarters of its colour information and keeps all of its luminance, because the eye resolves fine colour detail badly. On an edge that carries luminance the loss is exactly zero. On an edge of nearly equal luminance it is a colour difference of forty-three, and the two edges are the same edge to the codec.

applied · Delivery
One pair of colours, blended in four spaces. Every row starts and ends at the same two colours and visits different ones in between. The chroma of the middle falls furthest in linear light, by 83 units below the straight line between the endpoints' chromas — the grey dead zone that every blue-to-yellow gradient has and that no endpoint mentions. Any colour a route visits that this display cannot show is hatched rather than clipped.

A gradient is a path

Two colours fix the ends of a blend and nothing else. The middle is decided by the space the interpolation happens in, and four spaces in daily use put the halfway point of one ordinary gradient as much as thirty-seven units of colour difference apart.

matching · Gamut
The same formula, applied after six different changes of basis. CIELAB's arithmetic — divide by a white, take a cube root, difference the results — run on six of the bases the matching data leave free. A linear change of basis leaves every match alone; a cube root does not commute with one, so the space, and therefore every colour difference computed in it, depends on which basis was in place before the nonlinearity. CIELAB's own choice gives an axis ratio of 3.44 and the best row here is LMS (confusion points) at 2.60.

A difference needs a basis too

A linear change of coordinates leaves every colour match exactly where it was. A cube root does not commute with one — so a lightness–chroma space, and every colour difference computed in it, is a property of the basis that happened to be in place before the nonlinearity. CIELAB's basis was chosen in 1931 for reasons that had nothing to do with difference.

difference · Metric
MacAdam's twenty-five ellipses, measured in each unit. The uniformity instrument used here, applied to units rather than to spaces. The upper bar is anisotropy — the mean over the twenty-five of the largest radius divided by the smallest, where 1 would be a circle. The lower is spread — the largest mean radius divided by the smallest across all twenty-five, which asks whether a step of the same size means the same thing in different parts of the diagram. Reading down the three CIELAB-based formulae in the order they were published, the anisotropy falls 3.42 → 2.89 → 2.74 and the spread rises 3.24 → 3.59 → 4.12: the weighting divides a difference by the chroma it was measured at, which equalises directions at a point and unequalises magnitudes between points. Neither number is scaled, so no calibration is applied here. CAM16-UCS is ahead on both.

A unit rests on a space that was ranked

This collection ranks three colour spaces by how nearly they make MacAdam's ellipses circles, and CIELAB comes last. It then publishes every difference it computes in a formula built on CIELAB. Turning the same instrument on the formulae rather than the spaces shows the repair works — and that it buys roundness by paying in evenness.

matching · Gamut
Three exchanges, two of which move the colour. The documented pipeline is a white balance, a colour matrix, a tone curve and a clip. Each bar is what happens when two neighbours change places, over 30 surfaces the modelled sensor captures: the filled bar is the mean and the tick is the worst patch. Exchanging the balance and the matrix costs 9.2 colour differences at the mean and 13.2 at the worst. Exchanging the curve and the clip costs exactly nothing, and that is a theorem rather than a small number: a monotone curve onto the unit interval commutes with clamping to it.

The order is not in the documentation

A raw converter performs a white balance, a colour matrix, a tone curve and a clip, and every account of the process lists them in that order without saying the order decides anything. Exchanging the first two moves the picture by nine colour differences at the mean and thirteen at the worst patch. The twenty-four arrangements collapse into five outcomes running out to sixty-five, and nothing a converter ships says which of them it is.

imaging · Capture

Named alongside it

The objects these essays reach for when they reach for this one.

Transfer functionColour managementGamutSpecificationXYZChromaCIELABΔEThe ICC profileMacAdam's ellipsesPerceptual uniformityPrimaries

All concepts