Difference and uniformity

No calibration reads the lamps and the LEDs together

A three-channel ambient sensor pinned on two Planckian lamps reads every lamp and every lamp-and-daylight mixture well enough to keep a dark picture's shadows under a ΔEITP unit, and misreads every white LED badly enough to tint them by two to four. Its errors on the LEDs all point one way, and the prediction was that a matrix fitted in least squares to every light in a census would bring every LED under 0.004 while the lamps rose only towards 0.003. It does not. Fitted to the census, each light held out, the sensor's worst LED error falls from 0.017 to 0.0066 and its worst lamp error rises from 0.0033 to 0.0126; thirteen of forty-seven lights still pass a unit, among them the 2,700 K lamp the original calibration read exactly. A matrix exact on the lamp, daylight and one 4,000 K LED reads every mixture and every 4,000 K LED nearly perfectly and fails the 2,700 K LEDs, none read better than 0.0063. A fourth channel leaves six lights beyond a unit. Three broad channels have one matrix, and it can be right about one kind of spectrum.

Assumes A sensor calibrated on lamps cannot read an LED, Lamp and daylight together sit below the locus and A room sensor must read the lamp to a hundred kelvin.

A display that declares its room’s light in the light’s own chromaticity keeps a dark picture’s shadows nearly untinted — the result lamp and daylight together sit below the locus found for every mixture of a warm lamp and the evening’s daylight, after a warm room tints the black, not the halo found the room’s colour reaching the shadows through the screen’s reflection. The chromaticity has to come from somewhere, and in a display it comes from a small ambient-light sensor behind the bezel.

A sensor calibrated on lamps cannot read an LED modelled such a sensor — three broad Gaussian channels at 450, 540 and 610 nm, its matrix to XYZ the closest copy of the colour-matching functions that reads a 2,700 K and a 6,500 K Planckian lamp exactly — and read forty-seven lights with it. Every smooth light was read within 0.0035 in the CIE 1960 plane and every spiky light worse than 0.007: every lamp and every mixture kept the moon picture’s shadows under a ΔEITP unit at a tenth of a candela, and every one of thirty white LEDs pushed them past one and a half. Its errors on the LEDs pointed nearly the same way, towards green.

An error that points one way invites a correction. The prediction was that a matrix fitted in least squares to every light in a census brings every LED under 0.004 and under a unit, while the Planckian lamps rise towards 0.003; and that a matrix exact on three lights — a lamp, daylight and one LED — rescues the LEDs near the one it was shown and fails the rest. The alternative named was that no matrix brings the LEDs and the lamps under a unit together, in which case three broad channels cannot serve a room that might be lit by either.

Every calibration leaves lights beyond a unit

Under four calibrations of the same three channels — exact on two lamps; exact on the 2,700 K lamp, D65 and one 4,000 K LED; fitted in least squares to the lamp, daylight and six LEDs; and fitted to the whole forty-seven-light census with each light read by the matrix fitted without it — the number of lights tinting the moon picture beyond a ΔEITP unit at a tenth of a candela is 33, 22, 8 and 13. Fitted to the census, the sensor’s worst error on an LED falls from 0.0172 to 0.0066 and its worst on a Planckian lamp rises from 0.0033 to 0.0126; the 2,700 K lamp, read exactly by the original, tints by 1.12. Exact on three lights, the sensor reads every lamp-and-daylight mixture exactly and every 4,000 K LED within 0.0030, and no 2,700 K LED better than 0.0063. A fourth channel at 580 nm, fitted to the census, leaves six lights beyond a unit and the lamps read worse than the original’s.

  • The prediction fails at both ends. The census fit brings the LEDs nowhere near 0.004, and the lamps go not to 0.003 but past 0.012.
  • The three-light prediction holds as stated. The LED shown is read perfectly, its neighbours at the same temperature nearly so, and the others still badly.
  • The alternative holds. No calibration of these three channels brings the LEDs and the lamps under a unit together, and a fourth channel narrows the gap without closing it.
Every calibration leaves some lights beyond a unit. For the modelled three-channel sensor under four calibrations, and a fourth channel added: how many of the forty-seven lights — nine lamp-and-daylight mixtures, five Planckian lamps, thirty LEDs, three tubes — leave the moon picture tinted beyond a ΔEITP unit with the floor declared in the sensor's reading, at a tenth of a candela. two lamps, exact: 33; three lights, exact: 22; eight lights, fitted: 8; whole census, fitted: 13; census, four channels: 6.
Fig. 1 For the sensor under four calibrations, and with a fourth channel added, how many of the forty-seven lights — nine mixtures, five Planckian lamps, thirty LEDs, three tubes — tint the moon picture beyond a ΔEITP unit at a tenth of a candela, family by family.

Read the rows as a sequence. The original calibration fails every LED and every tube and nothing else. Exact on an LED, the sensor rescues twelve LEDs and loses two Planckian lamps. Fitted to eight lights, it rescues all but three LEDs and loses three lamps. Fitted to all forty-seven, it does a little worse on the LEDs than the eight-light fit — it has to listen to the tubes and lamps as well — and loses four of the five lamps and two mixtures. Each step towards the LEDs takes lights from the other side, and the fourth channel moves the whole ledger down without emptying it: two lamps, two LEDs and two tubes still beyond a unit.

The trade, drawn

Reading the LEDs better costs the lamps. For each calibration, the sensor's worst chromaticity error on any of the thirty LEDs against its worst on any of the five Planckian lamps. two lamps, exact: LEDs 0.0172, lamps 0.0033; three lights, exact: LEDs 0.0081, lamps 0.0102; eight lights, fitted: LEDs 0.0054, lamps 0.0138; whole census, fitted: LEDs 0.0066, lamps 0.0126; census, four channels: LEDs 0.0050, lamps 0.0088. No calibration puts both under the error that tints about one unit, near 0.0045.
Fig. 2 For each calibration, the sensor’s worst chromaticity error on any LED against its worst on any Planckian lamp, beside the error that tints the moon picture about one unit.

Put the worst LED against the worst lamp and the calibrations lie along a line running from the lower right to the upper left. The original sits at the lamps’ end — lamps within 0.0033, LEDs at 0.0172. Every recalibration moves up and to the left: the eight-light fit to 0.0054 on the LEDs and 0.0138 on the lamps, the census fit to 0.0066 and 0.0126, the three-light matrix to 0.0081 and 0.0102. None reaches the lower left, where both families would be read within the 0.0045 that tints about a unit. The fourth channel comes nearest, at 0.0050 and 0.0088, which is the line moved inward rather than broken.

That shape is what a single matrix over a mismatched set of channels must produce. The matrix is nine numbers, and the sensor’s channels form one copy of the colour-matching functions for every light; the copy is wrong in some band, and a lamp and an LED put their power in that band differently. Bending the copy to suit the LEDs’ blue spike and yellow hump bends it away from the smooth slope of a lamp’s spectrum in the same band. A calibration chooses which spectra to be right about, and with three channels it cannot choose both.

One LED in the calibration rescues its own temperature

An LED in the calibration rescues its own temperature. For the thirty LEDs, grouped by the temperature they were built at, the sensor's error exact on two Planckian lamps and exact on the 2,700 K lamp, D65 and one 4,000 K LED, the two drawn side by side at each temperature. With the LED in the calibration every 4,000 K LED reads within 0.0030, the 6,500 K ones within 0.0067 and the 2,700 K ones no better than 0.0063.
Fig. 3 The thirty LEDs, grouped by the colour temperature they were built at, read by the sensor exact on two lamps and exact on the 2,700 K lamp, D65 and one 4,000 K LED.

The three-light matrix is the simplest correction a maker could apply: keep the warm lamp, swap the 6,500 K lamp for real daylight, and add one LED. It reads every lamp-and-daylight mixture exactly, because a sensor’s reading is linear in the light — a mixture of two lights it reproduces is reproduced. And it reads the LED it was shown, a 452 nm LED without red phosphor at 4,000 K, exactly too.

The other LEDs sort by temperature. All twelve at 4,000 K, whatever their pump or red phosphor, read within 0.0030; the 6,500 K ones within 0.0067; and the 2,700 K ones no better than 0.0063 and as badly as 0.0081. An LED’s spectrum at one temperature is much like another’s at the same temperature — the converter share sets the balance between the blue spike and the yellow hump, and the temperature fixes that balance — so one LED in the calibration teaches the sensor its whole temperature class and little about the others. A warm LED carries a smaller blue spike and a larger hump than the 4,000 K one the sensor learned.

Daylight in the calibration makes the evening free

The three-light matrix holds a second lesson, about the lights it reads exactly rather than the ones it fails. The original sensor misread the lamp-and-daylight mixtures by up to 0.0023, rising with the daylight, because it was pinned on a 6,500 K Planckian lamp and there is no D65 lamp: daylight’s spectrum carries the atmosphere’s absorption and more violet than any radiator, and a sensor shown the radiator reads the daylight as a slightly different light. Swapping the radiator for daylight itself costs nothing and removes the whole error, not just at daylight but at every mixture, since a sensor’s channel signals are sums over the spectrum and a mixture’s signals are the same mixture of its parts’ signals.

That linearity is worth stating generally, because it says which calibration lights are worth having. A sensor reads exactly every light that is a mixture of lights it reproduces exactly. Three exact lights span a family of mixtures — here, every combination of a warm lamp, daylight and a 4,000 K LED — and the evening room a room sensor must read the lamp to a hundred kelvin was written about, a warm lamp with daylight from the window, lies entirely inside it. A room lit by any blend of those three is read perfectly; a room lit by a different LED, or a cooler lamp, is read by how closely its spectrum resembles some blend of them. The 2,700 K LEDs fail the three-light matrix because no blend of a warm lamp, daylight and a 4,000 K LED has a warm LED’s small blue spike and large yellow hump.

So a maker choosing three calibration lights is choosing a family of rooms, not three points. The lamp and daylight are the obvious two, since the evening mixture is the commonest room a television meets after dark; the third decides which LEDs come free with them, and the census suggests a warm one, since warm LEDs are both the commonest domestic LEDs and the ones the 4,000 K choice served worst.

Fitted to everything, the sensor gives up the lamps

Fitted to everything, the sensor trades the LEDs for the lamps. For each of the forty-seven lights, the moon picture's tint at 0.1 cd/m² with the sensor exact on two lamps against its tint with the sensor fitted in least squares to the other forty-six; tints under 0.1 drawn at 0.1. The LEDs fall from 1.66–3.60 to 0.09–1.38; the 2,700 K lamp alone rises from 0.19 to 1.12.
Fig. 4 For each of the forty-seven lights, the moon picture’s tint with the sensor exact on two lamps against its tint with the sensor fitted in least squares to the other forty-six.

The census fit is the calibration the prediction expected to work, and its failure is the instructive one. Every LED moves down towards the diagonal and below it, from 1.66–3.60 units to 0.09–1.38; every lamp and mixture moves up. The 2,700 K lamp alone goes from 0.19 to 1.12, and the first two mixtures with it, because a fit that gives thirty of its forty-seven votes to LEDs pulls the matrix towards them, and the warm lamp is the light least like an LED in the census.

Holding each light out of its own fit is what makes this a fair reading: a fit that included the light it is judged on would flatter itself. The difference is small here, because forty-seven lights pin nine numbers firmly — the full-census matrix with no light held out reads the LEDs within 0.0062 and the lamps within 0.0091 — and it does not change which side loses.

Which lamps it fails

The fitted sensor fails the warmest and coolest lamps. For the five Planckian lamps, the 2,700 K lamp and daylight, the moon picture's tint with the sensor exact on two lamps, fitted to the census with three channels and with four. Fitted to the census, the 2,200 K lamp tints by 2.63 and the 8,000 K one by 3.14, where the two-lamp sensor kept both under a unit.
Fig. 5 For the five Planckian lamps, the 2,700 K lamp and daylight, the moon picture’s tint at a tenth of a candela with the sensor exact on two lamps, fitted to the census, and fitted to the census with a fourth channel at 580 nm.

The lamps the census fit loses are the ends of the range. The 2,200 K lamp tints by 2.63 and the 8,000 K one by 3.14, where the original sensor kept them at 0.78 and 0.28; the 3,000, 4,000 and 5,000 K lamps sit near a unit. The census holds Planckian lamps only from 2,200 to 8,000 K and mixtures between 2,700 K and daylight, so its fit is thinnest at the ends of the locus, and a matrix bent towards the LEDs swings the ends furthest.

The fourth channel helps the middle and not the ends: the 2,200 K lamp tints by 2.85 with four channels, worse than with three, and the 8,000 K lamp by 1.93. A channel at 580 nm gives the matrix a second handle on the yellow hump an LED puts there, which is where three channels confused it, and adds nothing at the deep red where a 2,200 K lamp puts most of its light. Two sensors disagree about deep red, not lines found the same band deciding a different sensor’s verdicts.

Where each calibration puts its worst error

Where each calibration puts its worst error. For each calibration, the sensor's worst chromaticity error among the lamp-and-daylight mixtures, the Planckian lamps, the LEDs and the fluorescent tubes, in that order. The halophosphate tube is the worst-read light under every calibration but one, from 0.0130 to 0.0205.
Fig. 6 For each calibration, the sensor’s worst chromaticity error among the mixtures, the Planckian lamps, the LEDs and the fluorescent tubes, in that order.

One family stays out of reach whatever the calibration does. The fluorescent tubes’ worst error never falls below 0.0130, and under the three-light and eight-light matrices it rises to 0.0205 and 0.0201 — the worst reading in the census. The halophosphate tube is the culprit: two broad phosphor bands and the mercury lines, a spectrum like no lamp’s and no LED’s, and a fit that adds LEDs moves the matrix away from it as surely as from the lamps. A display in an office lit by old tubes is the case no ambient-sensor calibration in this census reads.

What a display maker should take from this

A three-channel sensor can be calibrated for the lamps or for the LEDs, and the census says it cannot be calibrated for both. A maker who knows a product will live in LED-lit rooms can recalibrate on LEDs and buy most of them back — the eight-light fit brings twenty-seven of thirty under a unit — at the cost of the warmest and coolest lamps and of every halophosphate tube. A maker who does not know has to choose which mistakes the shadows will carry.

A calibration point at each LED temperature is worth more than many at one. The three-light matrix’s lesson is that an LED teaches the sensor its temperature class. Two LEDs, one warm and one cool, would cover more of the census than six chosen at random, and a least-squares fit weighted towards the lights a product will actually meet would beat one weighted by the census’s own mix.

The fix that would work is a channel the sensor does not have. A sensor designed for its inverse found a camera’s dyes, chosen near the Luther condition, deciding what any later correction could reach; an ambient sensor’s channels decide it the same way. Every calibration here moves along one line; the fourth channel moves the line. A sensor that read lamps and LEDs together would need copies of the colour-matching functions that are right in the blue spike’s band and the yellow hump’s at once, and three broad channels cannot make them.

How the sensor was recalibrated

The sensor’s three channels are the earlier essay’s Gaussians — 450 nm 80 wide, 540 nm 90 wide, 610 nm 90 wide — on the 5 nm grid; the fourth, for the last calibration, sits at 580 nm 60 wide, with the outer channels moved to 620 nm 80 wide. An exact calibration takes each row of the matrix as the least-squares copy of one CIE 1931 function constrained to reproduce every calibration light’s XYZ exactly, a Lagrange system per row; with the three exact lights the constraints fix the matrix outright. A least-squares calibration takes each row as the combination of channel signals that best reproduces the calibration lights’ XYZ, each light normalised to unit luminance so that bright and dim lights weigh alike. The census fits are repeated forty-seven times, each without the light being read.

The forty-seven lights are the earlier essay’s: nine mixtures of a 2,700 K Planckian lamp and D65; thirty white LEDs built onto the Planckian locus at 2,700, 4,000 and 6,500 K with pumps at 440, 452 and 465 nm and four strengths of red phosphor; Planckian lamps at 2,200, 3,000, 4,000, 5,000 and 8,000 K; and triphosphor, halophosphate and broadband fluorescent tubes. The six LEDs in the eight-light fit span all three pumps and temperatures. Each light’s error is its distance from the sensor’s reading in the CIE 1960 plane, and its tint the moon picture’s worst ΔEITP chroma difference on a 1,000 cd/m² local-dimming panel at 0.1 cd/m² of room light, as before.

What this does not reach

One set of channels. The channels are a modelled sensor’s, and the trade’s position is theirs. Narrower channels, or channels placed where the colour-matching functions bend, would move the line; whether some three-channel design escapes it is not searched.

A census, not a market. The forty-seven lights are this collection’s lamps, mixtures and LEDs, weighted by how many of each the census happens to hold. A fit weighted by the lights a product meets would sit elsewhere on the line.

A sensor that knows nothing. Every calibration here is one matrix for every light. Radiators and LEDs are one family to the sensor and two stages catch the tube and bill the lamps they misplace found narrow-channel sensors able to sort lamps into families first; a three-channel sensor’s own signals might carry a weaker version of the same sorting, which would allow a matrix per family.

Still open: how many channels the lamps and the LEDs need together

A fourth channel moved the trade inward without closing it. Six channels, narrower and spread from 445 to 650 nm, give the matrix handles in every band where a lamp and an LED differ — the blue spike, the trough beside it, the yellow hump and the deep red.

The calculation is the census fit with each light held out, for sensors of four, five, six and eight Gaussian channels spread evenly from 445 to 650 nm at widths falling as their number rises, the number of lights beyond a unit and each family’s worst error read at each. The prediction is that six channels bring every lamp, mixture and LED under a unit — a first look puts the LEDs within 0.003 and the lamps within 0.0025 — and that no number of channels below eight reads the halophosphate tube, whose broad bands and lines differ from every other light at once. If the count of lights beyond a unit falls by about the same number with each added channel, the sensor’s problem is resolution in general and not any one band, and a maker’s choice is simply how many channels to pay for. Seven channels end the trade and lose the tube makes that calculation.

Nine numbers and forty-seven lights

The habit here is about counting what a correction can change.

The earlier essay’s errors pointed one way, and an error that points one way looks like one error. The prediction treated it as such and expected one matrix to remove it. But the matrix that produces the error is the same nine numbers that produce every other light’s reading, and moving them to cancel the LEDs’ error moves every reading at once.

The failure mode is to correct an error on the cases that show it without re-reading the cases that did not. The original calibration’s virtues were invisible in the LED census, because the LEDs were all it was failing; the lamps were where its virtues lay. The test is to read every light under every correction — here, forty-seven lights under five matrices — and to count what each correction costs as well as what it buys.

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.

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.

Colour-matching functionsCorrelated colour temperatureDeclared inputΔEHigh dynamic rangeSpectral power distribution