A distance raised to a power has no length
Assumes The disagreement is at the near end, A difference is not a distance and How many colours are there.
A colour difference is used in two ways that feel like one. It is used to say how far apart two colours are, and it is used to add: to count how many distinguishable steps a gradient has, to sum the errors of a chain’s stages, to measure how far a colour has travelled. The first needs a metric. The second needs a length, which is a stronger thing, and one unit in common use has the first and not the second.
A metric that cannot be added
CAM16-UCS’s power-corrected difference is a metric and has no length: summed along a path it grows without limit as the path is cut finer.
- The triangle inequality holds: over four thousand random triples of colours no direct difference exceeds the sum of the two indirect ones.
- A ramp from black to white measures 25.0 in one step, 58.6 in ten, 137 in a hundred and 755 in ten thousand, and the growth is the number of steps to the power 0.3700 — exactly one minus 0.63.
- The same ramp measures 99.0 in ΔE*ab and 96.1 in the model’s own Euclidean space at every step count, and settles at 74.6 in ΔE₀₀ once the steps are small.
- Halving the size of a step multiplies the number of steps that fit by 3.00, where a length would double it. At one unit 166 steps fit between black and white; at half a unit, 498.
What the correction is
The appearance model’s uniform space, CAM16-UCS, lays out a lightness, a colourfulness and a hue on three Cartesian axes so that a Euclidean distance between two colours means something. The distance the appearance essays here use is not that Euclidean distance. It is 1.41 times the distance raised to the power 0.63, a correction fitted later so that a single formula reproduces both small colour-difference data and large colour-difference data.
The correction is a good fit to what it was fitted to. People judging a large difference and a small one do not scale them in proportion to a Euclidean distance, and a concave power brings large differences down relative to small ones. The disagreement is at the near end found that the exponent is why the unit disagrees with the others most on near-threshold pairs.
The corrected and uncorrected differences are equal at 2.53 units. Below that the correction makes a difference larger — a Euclidean half unit becomes 0.91 — and above it smaller: a Euclidean twenty becomes 9.3. Every consequence below follows from one property of that curve, which is that it bends downwards everywhere.
Why the axioms still hold
A metric needs three things: distance zero only between identical points, symmetry, and the triangle inequality — the direct route is never longer than a detour. A difference is not a distance found that ΔE₀₀ fails the third and ΔE94 fails the second.
The corrected unit satisfies all three, and it does so for a structural reason. Any increasing concave function of a metric that is zero at zero is a metric. Symmetry and identity are inherited directly. The triangle inequality survives because a concave function that starts at zero is subadditive — the value at a sum is at most the sum of the values — so if the Euclidean distance obeys it, the corrected distance obeys it with room to spare. Four thousand random triples of colours inside sRGB confirm it: the largest excess of a direct difference over its detour is −0.95, which is to say the detour is always longer, often by a lot.
So this is not a formula with a bug. It is a well-behaved metric of a particular kind, and the kind has a property that is well known in geometry and rarely mentioned in colour.
Why it has no length
The length of a path in a metric is the limit of the sum of the distances between successive points as the points get closer together. For a Euclidean distance on a straight line the sum does not depend on how many points are taken, and the limit is simply the distance between the ends.
Raise the distance to the power 0.63 and cut a straight path into n equal pieces. Each piece has Euclidean length D over n, so each contributes 1.41 times (D/n)^0.63, and there are n of them. The sum is 1.41 times D^0.63 times n^0.37, and n^0.37 grows without bound.
That is the whole of the measurement in the first figure. The ramp from L* 1 to L* 100 is a straight line in the model’s own space, 96.1 units long, and cut into n pieces its corrected length is 25.0 times n to the 0.37: 32.3 at two pieces, 45.4 at five, 88.0 at thirty, 321.9 at a thousand, 754.6 at ten thousand. The growth exponent measured between a thousand and ten thousand pieces is 0.3700, which is one minus 0.63 to the fourth decimal place. There is nothing approximate in it and nothing about colour: it would be the same for any straight path in any space under the same correction.
A straight line as crumpled as a snowflake’s edge
Metric geometry has a way of saying how badly a distance of this kind treats a line, and it turns the step count into a dimension.
Under a distance raised to the power 0.63, a straight segment has, as far as measuring it is concerned, the fractal dimension 1/0.63, which is 1.59. Halving the ruler multiplies the count of steps by two raised to the dimension: by 2 for an ordinary line, and by 3.003 here, which is the step count’s ratio exactly. The edge of the Koch snowflake, the standard example of a curve with no finite length, has dimension 1.26 and multiplies its count by 2.40 when the ruler halves. By this measure the neutral axis read in the corrected unit is more crumpled than the snowflake’s edge, although in the model’s own coordinates it is perfectly straight.
Nothing about the colours on it has become rough. The roughness is in the ruler, which charges proportionately more for a short step than for a long one, so that the more finely a path is divided the more it costs — the way a coastline’s measured length grows as the ruler shortens. A ruler that behaves on a straight line the way ordinary rulers behave on a coastline cannot be used to measure lines, and a gradient, a mixing path and a chain of stages are all lines.
The other units on the same ramp
The comparison is what makes the property visible, because the three other units treat the ramp in three different ways.
ΔE*ab gives 99.0 at every step count, because it is a Euclidean distance in CIELAB and a neutral ramp is a straight line in CIELAB. The model’s uncorrected J′a′b′ gives 96.1 at every step count, for the same reason in its own space. Both are lengths, and on a straight line in their own coordinates the length is just the distance.
ΔE₀₀ gives 98.9 in one step and settles at 74.6 from about thirty steps on. It is not a Euclidean distance: its lightness weight changes along the ramp, so one large step and many small ones disagree. But as the steps shrink, the sum converges, because locally ΔE₀₀ behaves like a smoothly varying quadratic form, and a quadratic form has a length. ΔE₀₀ has a length and a single large step overstates it by a third.
Only the corrected unit diverges, and it diverges at every scale, because the correction is a power law with no characteristic size. There is no step small enough for the sum to settle.
Counting steps
The most common use of adding colour differences is counting: how many distinguishable steps a gradient contains, how many just-noticeable differences separate black from white, how many colours there are.
In a length, counting is well defined up to the choice of step size and inversely proportional to it. In the corrected unit it is not even that. 166 steps of one unit fit between black and white; 498 steps of half a unit; 1,497 steps of a quarter. Halving the step triples the count — two to the power 1/0.63 is 3.003 — so a count stated without its step size is not a number, and a count stated with a step size cannot be converted to another step size by the rule everybody uses.
That matters for any argument that rests on a threshold. A just-noticeable difference is a small number in every unit — a threshold is not a unit, but it is always small in one — and small numbers are exactly where the correction enlarges differences. A gradient designed to have a hundred just-noticeable steps in the corrected unit has a different number of steps of the same visible size depending on whether a step was defined at the threshold or measured from the whole ramp.
Summing stages
The second common use is summing: an error budget adds the contributions of several stages, as a delivery chain’s budget does. In the corrected unit that sum is not the difference the stages produce together even when every stage pushes the colour the same way.
A delivery chain’s four stages, measured in the corrected unit, add to more than the chain’s end-to-end error, and the shortfall was reported as evidence that the stages partly cancel. Some of it is. Most of it, on the colorimetric intent, is the exponent: a chain whose four stages lay end to end in a straight line and added exactly in the model’s own space would still read 0.74 of its stage sum in the corrected unit, against a published 0.66. The stages were added in a unit that cannot add takes that apart.
The general form is short. Stages of equal size that add exactly read, in the corrected unit, the number of stages to the power −0.37 of their corrected sum: 0.77 for two, 0.60 for four. The more evenly a budget divides its error among its stages, the more the unit’s sum overstates the whole.
Comparing bows and paths
The third use is subtler. Any statement about how far a colour travels along a curve — a mixture’s bow, a round trip’s drift, a gradient’s evenness — is a length along a path, and in the corrected unit the path’s length depends on how finely it was sampled.
A bow measured as one distance — the half mixture from the midpoint — is safe, because it is one distance. The same bow expressed as a share of the separation is safe too, provided both are Euclidean or both corrected; but a share taken with a corrected numerator and a corrected denominator is not the same share as the Euclidean one, because the correction shrinks the larger denominator more. Which mixture bows most depends on the ruler found the smaller numbers usually quoted for the model were the correction for exactly that reason.
What may be done with numbers in the unit
The rules are short once the property is named.
Comparing two differences is fine. The correction is increasing, so it preserves order: if one pair is further apart than another in the Euclidean distance, it is further apart in the corrected one. Rankings, thresholds and acceptance decisions on single pairs are unaffected.
Adding differences is not. A sum of corrected differences is not the corrected difference of anything, and it depends on how the total was divided up. Budgets, path lengths and step counts must be taken in the Euclidean distance and corrected once at the end, if at all.
Averaging differences is safe only across pairs, not along a path. The mean corrected difference over a set of independent pairs is a well-defined statistic. The mean step along a path is not, because the number of steps is arbitrary.
Converting a count between step sizes needs the dimension, not the ratio. A count of steps of one size becomes, at half the size, the count times 3.003 rather than times two: 166 steps of one unit become 498 of half a unit, which is what the step count measured, and not 332. A published count of just-noticeable steps can be moved to a different threshold only with the exponent in hand.
What was computed, and how
The ramp runs along the neutral axis from L* 1 to L* 100 in equal steps of lightness, with each point converted to tristimulus values under D65 and read by the model at an adapting luminance of 100, a twenty per cent background and an average surround. Each step’s difference is taken in four units and the steps are summed.
The step count lays steps of a stated corrected size end to end along the model’s neutral axis, which is straight in J′a′b′, so the count is the axis’s Euclidean length divided by the Euclidean length each corrected step corresponds to.
The triangle inequality is tested on four thousand triples of colours drawn uniformly in the sRGB cube with a fixed seed. The growth exponent is the logarithm of the ratio of the corrected lengths at ten thousand and at a thousand steps, divided by the logarithm of ten.
Where the measurement stops
One path, the neutral ramp, which is a straight line in both CIELAB and the model’s space. On a curved path the corrected length still diverges at the same rate, because the divergence comes from the correction’s power law rather than from the path; the constant in front would differ.
Nothing here says the correction is wrong. It says the unit is not a length, which the authors of the correction never claimed and which the way the unit is used sometimes assumes.
And the model’s uncorrected Euclidean distance is not a perfect length for colour either. It is additive along straight lines in its own coordinates, which is what makes it usable for sums; whether its sums match people’s judgements of accumulated difference is a separate and open question.
The habit
The habit is about a correction that makes a quantity better at one job and unfit for another.
A concave correction to a distance is a standard way of fitting human judgements, which compress large differences. It keeps every property a comparison needs and destroys the one a sum needs. The unit is then used for both, because the numbers look the same.
The move is to ask of any unit whether it is additive along a path before summing in it. The test is to cut something in half and add the halves.
The failure mode is a budget, a count or a length stated in a unit whose sums depend on how the total was divided. A number that triples when its steps are halved is not a count of anything.
Who noticed it first
That a concave power of a metric is again a metric, and that it is not a length metric — its induced path length is infinite on any non-constant path — is standard in metric geometry, where such metrics are called snowflake metrics after the curve whose length diverges in the same way.
That the power correction used with CAM16-UCS is one, and what that does to counting steps and summing a delivery chain’s stages, does not appear in the colour sources consulted here. The correction’s exponent was fitted to difference data, and data about pairs cannot say anything about sums along paths.
Still open: what an accumulated difference looks like to a viewer
Whether a viewer judging how far a colour has travelled along a gradient — rather than how far apart its ends are — follows a Euclidean sum, a corrected sum, or something else is an experiment that has not been run on this unit. It is the experiment that would decide whether the correction belongs on differences between pairs only, or on increments too.
What this makes readable
Essays that name this one as a prerequisite.
Named alongside this one
Essays reaching for the same objects. Nobody chose these; they are what the index of named objects makes visible.
- A name is not a threshold ciede2000 · δe · just-noticeable difference · perceptual uniformity · specification
- Where the formula is not smooth ciede2000 · δe · just-noticeable difference · perceptual uniformity · specification
- Which of two is worse ciede2000 · δe · just-noticeable difference · perceptual uniformity · specification
- A colour has a name ciede2000 · δe · perceptual uniformity · specification
- A difference has no place ciede2000 · δe · just-noticeable difference · specification
- A gamut charges a gradient nothing ciede2000 · colour difference · gradient · perceptual uniformity
What links here
Every essay whose body links to this one.
- Two uniform spaces disagree about between
- Which mixture bows most depends on the ruler
- A third space breaks the tie only once
- A tolerance has no light level
- The straight line is not the shortest gradient
- A chain measured in a unit that cannot add
- The units part by hue, not by light level
- A projection has no reason to detour
The objects this essay names
Each one links to every other essay that touches it.
CIECAM16CIEDE2000Colour differenceConvergenceΔEGradientJust-noticeable differenceMetric axiomsPerceptual uniformitySpecification