The Same Colour Twice
Two spectra with nothing in common that are the same colour, until you change the light.
What it is
Two swatches. A smooth spectrum on the left, a double-humped one on the right, 77% different at their worst wavelength. Under equal-energy light they’re the same colour to fourteen decimal places.
The illuminant sweeps from 20,000 K down to 2,000 K and back. Tap for a different metamer of the same colour.
How it works
The eye reduces a spectrum to three numbers by integrating it against three colour-matching functions. Three numbers, an infinity of spectra, so every colour is a whole family of spectra.
The family is easy to describe once you say it in linear algebra: the differences between metamers are exactly the vectors orthogonal to all three matching functions. That’s a null space, so I can compute one.
Take a random smooth vector, Gram-Schmidt the three matching functions, project the random vector off all three, and what’s left is a metameric black. A spectrum with real ups and downs that the eye scores as exactly nothing. Add as much of it as a spectrum can absorb while staying between 0 and 1 and you have a different spectrum of the same colour, by construction rather than by search.
The tests check the construction rather than trusting it. The black integrates to under 10⁻¹² against all three functions, the metamer’s tristimulus values match to a relative 10⁻¹², and the sRGB triples are identical to ten decimal places.
What surprised me
The match is exact, and exactly as fragile as the light it was built for.
Five metamers of one spectrum:
| spectral difference | ΔE under equal energy | ΔE at 6500 K | ΔE at 2800 K | ΔE at 2000 K |
|---|---|---|---|---|
| 95% | 7 × 10⁻¹⁴ | 2.2 | 8.6 | 15.9 |
| 110% | 6 × 10⁻¹⁴ | 4.1 | 16.1 | 28.2 |
| 132% | 2 × 10⁻¹³ | 3.5 | 15.7 | 21.9 |
| 170% | 1 × 10⁻¹³ | 1.0 | 5.4 | 9.6 |
A ΔE of 2.3 is roughly a just-noticeable difference. So these pairs go from identical to the last bit a double can hold under one light, to seven noticeable steps apart under a domestic bulb.
The reason is structural and I didn’t see it until I’d written the null-space projection. A metameric black is orthogonal to the matching functions, BUT what the eye integrates is the spectrum times the illuminant, and being orthogonal to x̄ doesn’t make you orthogonal to x̄ times a blackbody curve.
Changing the light doesn’t just change both colours, it re-weights the very inner product that made them equal. Metamerism isn’t a property of two surfaces, it’s a property of two surfaces and a light, and there’s nothing you can do about that, because a surface has no colour to be a property of.
That’s presumably why buying paint under shop lighting is the folk example of this, and why the effect has a whole industry of standardised viewing booths behind it. What I hadn’t appreciated is how big the failure is next to the precision of the match. Fourteen digits of agreement, thrown away by changing a bulb.
What I would do next
Solve for the metameric black that maximises ΔE at 2800 K subject to staying in range, so the worst-case pair rather than a random one. It’s a small linear program and I’d like a picture of the answer.