Difference and uniformity

At the gamut's edge the reds move as far as the violets

As a display brightens, ΔEITP shifts a saturated colour's balance between lightness and chroma by an amount set by its three quantised signals, and CAM16-UCS shifts every colour alike. The largest shifts found so far were a yellow-green at ×0.63 and a dark blue at ×1.62, both at the census's edge — and the blue turns out to be a colour no BT.2020 display can show. Walked out to the display's real boundary, the yellow-greens go lower, to ×0.54, and the dark blues never pass ×1.35, because BT.2020's blue edge is at low chroma. The top of the range goes to the reds and red-purples at ×1.6: at the edge the L-minus-M term grows to two thirds of the S term. Pairing the two extremes still needs a third of the observers the violet experiment needs.

Assumes The hue disagreement is the quantiser's, The units part by hue, not by light level and A lit room brings the units' medians together.

The units part by hue, not by light level read two colour-difference units on pairs of colours one CIEDE2000 unit apart, one pair stepping in lightness and one in chroma, as a display brightened from a 1.5 to a 10,000 candela white. CAM16-UCS changed every base colour’s balance between the two pairs by one factor. ΔEITP changed the violets’ towards lightness and the yellow-greens’ towards chroma. The hue disagreement is the quantiser’s then found where that comes from: ΔEITP passes three cone-like signals through the perceptual quantiser separately, a saturated colour’s three signals sit at different heights on the quantiser’s curve, and a brighter display stretches them unequally. How far a colour moves followed the spread of its three signals; which way, the S signal’s height above the other two.

That census stopped at a CIELAB chroma of sixty, and its largest moves were at its edge — a saturated yellow-green at lightness 50 moving by ×0.63, a dark saturated blue at lightness 25 by ×1.62. Its closing section asked for the census walked out to BT.2020’s boundary along every hue. The prediction was that the two extremes would stay where they were, the yellow-greens below ×0.6 and the dark blues above ×1.6, so that an experiment pairing them would need a quarter of the observers the proposed violet experiment needs. And it named the alternative: if the extremes moved to the reds at the boundary, where L and M are furthest apart, the S signal would be the smaller half of the mechanism.

One extreme holds and the other moves to the reds

At BT.2020’s edge ΔEITP’s smallest move is a yellow-green’s, ×0.54 at lightness 50, below the predicted ×0.6. Its largest is a red’s, ×1.64 at lightness 25 and hue 30, with the red-purples at ×1.61 beside it. The dark blues reach only ×1.14 to ×1.32: a BT.2020 display’s blues at lightness 25 stop at chroma 32 to 44. The earlier census’s ×1.62 blue, at chroma 60, was a colour no BT.2020 display can show. Fitted on both signal terms, the L-minus-M term grows from 38 to 68 per cent of the S term’s size. CAM16-UCS moves every edge colour by ×0.76 to ×0.89. Pairing the edge’s yellow-green with its red-purple separates the units’ predictions 1.8 times as far as the violet stand, and needs 0.31 of its observers.

  • The low extreme holds, and goes lower.
  • The high extreme does not. The dark blues cannot be driven far enough on a real display; the reds and red-purples take their place.
  • The S signal is still the larger term, but no longer by much: at the edge, L against M carries two thirds as much.
  • The experiment gets cheaper anyway — by about the square of 1.8, close to the quarter predicted — because the pair it uses is the yellow-green and a red-purple rather than a dark blue.

Where the edge is

Where BT.2020's edge lies, hue by hue, at three lightnesses. The largest CIELAB chroma at each hue and lightness whose base colour and both of its one-unit pairs a BT.2020 display can show. At lightness 50 the edge lies beyond chroma 60 at every hue but the blues and cyans; at lightness 25 the blues from 225 to 270 degrees stop at chroma 33 to 44, below the earlier census's sixty.
Fig. 1 The largest CIELAB chroma at each hue and lightness whose base colour and both of its one-unit pairs a BT.2020 display can show.

The edge is a display’s, not a signal’s. A colour is inside a BT.2020 display when each of its three primaries is driven between nothing and what the display’s white takes; the census here asks that of the base colour and of all four members of its two pairs, and walks the chroma out along each hue until one fails. The earlier census asked something weaker. It set a base aside when one of its cone-like signals went negative, since the quantiser cannot take a negative signal, and that is a necessary condition for a colour to be on the display but not a sufficient one: the cone-like signals are positive combinations of the three drives, and can stay positive while one drive goes negative.

The boundary this draws is uneven in the way wide-gamut boundaries are. At lightness 50 it lies beyond chroma 100 for most of the reds and oranges, the bluish greens and the red-purples, reaching 120 at hues 150 and 330, stops at 74 to 89 for the yellow-greens, and falls to 53 to 60 across the blues and cyan-blues from 210 to 255 degrees. At lightness 25 the reds reach 60 to 70 and the blues from 225 to 270 degrees stop at chroma 32 to 44 — the edge of what a display’s blue primary can do at that lightness. At lightness 75 the yellows and greens run out past 100 and the blues stop near 40.

A consequence is that the edge is not one chroma, so the census cannot hold chroma fixed. Every base is at its own hue’s edge, and the three signals it presents to the quantiser are the most unequal a display can make them at that hue.

The two units’ moves at the edge

How far each unit moves a colour's balance, at the most saturated colour BT.2020 allows. For every fifteen degrees of hue at lightness 25, 50 and 75, the most saturated base colour whose one-unit lightness and chroma pairs stay inside a BT.2020 display, and the factor by which each unit's ratio of the two pairs changes from a 1.5 to a 10,000 candela display. CAM16-UCS moves every one by ×0.76 to ×0.89. ΔEITP moves them from ×0.54, a yellow-green at hue 90, to ×1.64, a red at hue 30 — with the red-purples beside it and the dark blues well below.
Fig. 2 Each unit’s move — the lightness-to-chroma ratio on a 10,000 candela display over the same on a 1.5 candela one — for the edge colour at every fifteen degrees of hue.

CAM16-UCS barely cares. Its move runs from ×0.76 to ×0.89 across all seventy-two edge colours — a range of a sixth, against ΔEITP’s factor of three. It is still the same direction everywhere, towards chroma, as a brighter display makes colours look more colourful in any appearance model.

ΔEITP’s move spans a factor of three. It falls to ×0.54 at the yellow-green at lightness 50 and hue 90, and to ×0.57 at lightness 75; the yellow-greens, whose S signal sits far below their L and M, move towards chroma as before and further than before. It rises to ×1.64 at the red at lightness 25 and hue 30, ×1.63 at lightness 50, and ×1.61 at the red-purple at hue 315. The dark blues at lightness 25 move ×1.19 at 240 degrees and ×1.32 at 270.

Against the prediction, the low end holds and the high end moves. The dark blue that moved ×1.62 in the earlier census had a chroma of 60 at lightness 25 and hue 240; the display’s edge there is at chroma 33, and at the edge the same hue moves ×1.19.

The earlier census’s largest moves

The earlier census's largest moves were colours no BT.2020 display shows. ΔEITP's move against the S signal's height above L and M, for the earlier census's bases at chroma 40 and 60 — split by whether a BT.2020 display can show the base colour — and for the edge census. Its two largest moves, ×1.62 and ×1.57, are dark blues at chroma 60 that need a negative red drive: their cone-like signals are all positive, which is the test that census applied, and no display can make them.
Fig. 3 ΔEITP’s move against the S signal’s height above L and M, for the earlier census’s bases at chroma 40 and 60, split by whether a display can show them, and for the edge census.

The two largest moves the earlier census reported are both colours a BT.2020 display cannot make. The dark blue at hue 240 and chroma 60, which moved ×1.62, needs its red primary driven to −0.04 of the white’s; the violet-blue at 270, which moved ×1.57, to −0.02. Both have all three cone-like signals positive, which is why that census kept them. Eight of its 174 base colours are off the display in the same way. The published essay now says so beside its ×1.62.

This matters to the experiment rather than to the mechanism. The mechanism — the quantiser acting on unequal signals — is untouched; a colour off the display still has signals and ΔEITP still reads them. What the error did was put the experiment’s best stand at a colour nobody can show, and the S signal’s reach at the top of the range was the property that went with it. On a display, the S signal cannot be pushed as far above L and M as the census let it go, and the top of the range falls to whatever else can move a colour that far.

What the signals say about the reds

What five edge colours' three signals look like after the quantiser. For five colours at BT.2020's edge, how far the S signal stands above or below the mean of L and M after the quantiser, and how far L stands above M. The yellow-green's S is far below and it moves ×0.54; the red-purple's S is far above and it moves ×1.61; the red has S level with L and M and L well above M, and moves ×1.54; the dark blue's S is only a little above, because the display cannot reach a more saturated one, and it moves ×1.25.
Fig. 4 For five edge colours, the S signal’s height above the mean of L and M and L’s excess over M, both after the quantiser.

The red at the edge has its S signal level with its L and M and its L well above its M. At lightness 25 and hue 0 the quantised S signal sits 0.003 below the mean of L and M, and L sits 0.050 above M; at hue 30, where the move is largest, S is 0.098 below and L 0.057 above M. The S signal alone would move these reds towards chroma, as it moves the yellow-greens; they move the other way, and by as much as the red-purples whose S is far above. The only other property of their signals that can do that is the L-minus-M difference, and at the edge of a wide gamut it is the largest it gets.

The yellow-green, S 0.154 below the mean of L and M with L and M nearly equal, is the S term alone, and it moves ×0.54. The red-purple, S 0.139 above with L and M close, moves ×1.61. The dark blue’s S is only 0.087 above, because the display cannot reach a more saturated blue at that lightness, and it moves ×1.25. The cyan at lightness 50, S level and L slightly below M, moves ×1.04.

The two terms, fitted

At the edge the L-minus-M term grows faster than the S term. The log of ΔEITP's move fitted on two properties of each base's quantised signals — the S signal's height above L and M, and L's excess over M — in the earlier census and at the edge, with each term's effect per standard deviation. The S term grows from 0.129 to 0.232; the L-minus-M term from 0.050 to 0.157, from 38 to 68 per cent of the S term's.
Fig. 5 The log of ΔEITP’s move fitted on the S signal’s height and on L’s excess over M, in the earlier census and at the edge, with each term’s effect per standard deviation.

At the edge both terms grow, and the L-minus-M term grows faster. Fitted on both properties of each base’s quantised signals, the S term’s effect on the log move is 0.129 per standard deviation in the earlier census and 0.232 at the edge; the L-minus-M term’s is 0.050 and 0.157. The second rises from 38 to 68 per cent of the first. The fit explains 64 per cent of the variation in the log move at the edge, against 71 in the earlier census, the rest being the pairs’ own geometry — how a one-unit step points at a colour this saturated.

So the alternative the earlier essay named half happens. The reds do take the top of the range, and it is the L-minus-M term that puts them there. But the S term is still the larger of the two over the whole census: the S signal’s position is still the larger half of the mechanism, and at a wide gamut’s edge the smaller half is two thirds of its size. The earlier census was taken where L and M are never far apart — a chroma of sixty does not reach the reds’ edge — and so it found the S signal nearly alone.

What it buys the experiment

What pairing the edge's extremes buys a forced-choice experiment. The gap between the two units' predictions for a forced-choice experiment across a 15 and a 5,000 candela display, for the violet base colour the earlier essays proposed and for the edge's yellow-green paired with its red-purple, and the observers each needs at the collection's stated spread of individual judgements. The pair's gap is 1.8 times the violet's, and by its square it needs 0.31 of the observers.
Fig. 6 The gap between the two units’ predicted moves for the violet stand and for the edge’s yellow-green paired with its red-purple, and the observers each needs.

The experiment the earlier essays proposed shows the same lightness and chroma pairs at one base colour on a dim display and a bright one, and asks observers which pair of each looks larger; the two units predict opposite answers where they disagree most. At the violet the collection chose — lightness 25, hue 300, on 15 and 5,000 candela displays — the units’ predicted log moves differ by 0.34, and at the stated spread of individual judgements five observers tell them apart.

Pairing the edge’s two extremes asks a different question of the same observers: across the change of display, does the yellow-green’s balance move relative to the red-purple’s? CAM16-UCS predicts they move nearly together, the red-purple 1.04 times as far as the yellow-green; ΔEITP predicts 1.91 times as far. The gap is 0.61, 1.8 times the violet’s, and two observers suffice. By the square of the gaps, the pair needs 0.31 of the violet stand’s observers — close to the predicted quarter, for a pair that is not the one predicted.

The pairing is also a cleaner question than the single stand. At one base colour, an observer’s answer on the bright display is compared with the same observer’s answer on the dim one, and anything that changes between the two displays for every colour alike — the general rise in colourfulness a brighter display brings, which both units predict in some measure and which CAM16-UCS predicts as its whole move — is part of what the experiment measures. Two bases shown together on each display share that common part exactly. Whatever moves the yellow-green’s balance and the red-purple’s by the same factor cancels in the comparison, and what is left is the part of the move that depends on the colour, which is the part the two units disagree about. The single stand has to separate a colour-dependent move from a common one using the units’ own predictions of the common one; the pair does not.

A lit room brings the units’ medians together found the units’ median disagreement shrinking in a lit room while the disagreement by hue survived; this pair tests the part that survives, and only that part.

How the edge was walked

At lightness 25, 50 and 75 and CIELAB hue every fifteen degrees, the base colour’s chroma is bisected to the largest at which the base and the four members of its lightness and chroma pairs — each pair bisected to exactly one CIEDE2000 unit, as in the earlier census — a unit fitted to plainly visible differences, which a threshold is not a unit separates from the smallest difference anyone can see — all have BT.2020 drives between a ten-thousandth and one less a ten-thousandth of the white’s. Each pair is scaled to displays whose whites are 1.5 and 10,000 candelas, five times adapting luminances of 0.3 and 2,000; since every colour is inside the display, no signal reaches the peak of the curve how bright is white followed into display encoding and the cap on the bright display’s white never binds. ΔEITP is read through BT.2020 RGB, ICtCp’s fixed cone-like matrix and the ST 2084 quantiser; CAM16-UCS with the D65 white, a 20 per cent background and an average surround at each adapting luminance. A move is the lightness pair’s reading over the chroma pair’s on the bright display, divided by the same on the dim one. The two-term fit is least squares of the log move on the base’s quantised S-minus-mean-of-L-and-M and L-minus-M, without intercept. The forced-choice numbers use the collection’s rule: twice the square of twice the stated spread of 0.25 in log over the gap, on 15 and 5,000 candela displays as the violet stand was.

What this leaves out

The edge is BT.2020’s, the widest gamut in use, and no display yet made reaches all of it. It is wide against surfaces too: no surface can be that colourful put it at 106 per cent of what any surface can reflect at mid lightness, so its reds are colours no paint or print will ever be asked to match. A display with a P3 gamut — most of those in use — has its own edge further in, where the L-minus-M term will have less room and the S term’s lead will be larger; the earlier census at chroma sixty is closer to that display than this one.

The pairs are one CIEDE2000 unit at every base. At the edge a one-unit step is small against the colour’s chroma, and the steps’ direction relative to the boundary is not controlled; a chroma step pointing out of the gamut from an edge colour lands, by construction, just inside it. The fit’s unexplained third is partly this.

The spread of individual judgements is stated, not measured. The nearest measurement is for surfaces: a tolerance is a probability found one pair at ΔE00 1.0 read from 0.8 to 3.7 across two hundred observers, and nothing comparable exists for a pair on an emissive display. It sets the observer counts and not their ratio, which is the square of the ratio of the gaps whatever the spread.

Still open: whether the reds’ move survives a display’s own primaries

The reds at the edge are BT.2020’s reds, made by its red primary at 630 nanometres — a laser line or a quantum-dot emission — and their L-minus-M difference is as large as it is because that primary sits far out on the long-wave side. A real display’s red primary is less extreme, and its edge is its own. The calculation is this census on a P3 display and on a display with BT.2020’s blue and green and a red primary at 615 nanometres, the edge walked in each display’s own drives. The prediction is that the reds’ move falls fastest of any hue as the red primary moves in — because the L-minus-M difference is the red primary’s doing — while the yellow-greens’ and red-purples’ moves hold, so that on a P3 display the top of the range goes back to the red-purples. If it does, the pairing the experiment should use depends on the display it is run on, and the display’s red primary should be part of the experiment’s specification.

A gamut test is a statement about a device

The habit is about what a boundary check in a census checks.

The earlier census tested each base colour by the question its own calculation needed answered: can the quantiser take these signals? That is a real boundary — past it the calculation cannot be done — and every colour inside it gave a number. But the number was going to be used to choose a stimulus for an experiment, and a stimulus has to be shown on a device, whose boundary is a different and tighter one. Two of the census’s largest numbers lay between the two boundaries.

The failure mode is to set a census’s edge where the calculation stops working rather than where the use stops being possible. A calculation happily reads colours no device makes, and its extremes, being extreme, are exactly where the two edges part.

Named alongside this one

Essays reaching for the same objects. Nobody chose these; they are what the index of named objects makes visible.

What links here

Every essay whose body links to this one.

The objects this essay names

Each one links to every other essay that touches it.

Absolute luminanceChromaCIECAM16CIEDE2000Colour differenceΔEGamutPQ, the perceptual quantiserTolerance