Different blackbody colors on the web

Mitchell Charity <[email protected]>
  > What color is a blackbody?
  >   > Different blackbody colors on the web
  >   > Blackbody colors - choosing parameters
  >   > Blackbody colors - intensity

There are currently (May 2001) two rather different sets of colors being claimed for blackbody radiation on the web. What is the right thing?

One is basically just red, white and blue (A).
The other is rather colorful (B).
(A)
(B)

For example, (as of 2001-May-15)
(A)

Where's purple

BlackBody Physlet

(B)

Color Science

Colour Rendering of Spectra's specrend yields

      Temperature       x      y      z       R     G     B
	 3000 K      0.4369 0.4041 0.1590   0.464 0.398 0.138 (SMPTE)
	 3000 K      0.4369 0.4041 0.1590   0.471 0.402 0.127 (EBU)
where the RGB values are yellowish.

Blackbody Radiation Physlet

Spectra converter integrates a 3000 K bbr power spectrum to yellow.
[Currently (2001-Jun-04) uses an old color space. They plan to switch to sRGB.]

A useful descriminator is whether 3000 K (xy 0.4369 0.4041) is distinctly yellow (B), or merely orange (A). Say pixel colors of #fbff73 versus #ffbb71.

It appears the difference arises in the XYZ to RGB (linear) conversion step, and lies in the choice of white point.
(A)
(B)
(A) uses the standard D65 whitepoint (at about x (horizontal) 0.31, y 0.33).
(B) uses something else.

My fuzzy understanding is that D65 is the Right Thing.
But I rather expected yellow to be in there somewhere.
So... I am puzzled.

Also see Blackbody colors - choosing parameters.

Another possible source of differences is clipping during sRGB conversion. I normalize my linear RGB values to avoid clipping. Which is equivalent to adjusting intensity (scaling the CIEXYZ coordinates to choose the maximum intensity Y which avoids clipping). This is the right thing here, as we are concerned with chromaticity, and don't care about intensity. But most code cares about both. So if Y is set to 1.0, or 100, both common conventions, the resulting R, G, or B values may be too bright to display, greater than one, and are then clipped back when converting to sRGB. This distorts chromaticity and gives odd colors.

"Foundry colors"

A reader passed on this:
  But there is still something that I cannot understand, though. The problem
  has to do with the temperature scale. In earlier times when foundries
  weren't equipped with thermometers it was common to judge the temperature by
  the incandescent color. I quote from a book:

    "Assuming there is little light other than that emitted by the glowing
    charge in the furnace, you can judge a dull red glow to be from about 950°F
    (783K) to 1000°F (811K). Thereafter, as the temperature climbs, the red glow
    will brighten noticeably at about each 100 degree increment until it changes
    to orange at about 1600°F (1144K). The orange glow brightens through about
    1900°F (1311K) where it begins to show a yellow tone. It will be quite
    yellow at about 2100°F (1422K), and it will show white at about 2400°F
    (1589K). It will be dazzling white at about 2600°F (1700K)."

[emphases mine]

Note the absence of any D65 daylight background lighting against which to judge color. So white-adaptation is significant. Similarly, note the light intensity varies greatly. From dim rod grayness, to dazzled cone saturated whiteness. But not knowing how to quantify these, I don't know if they are the entire story.

Links

CIE Chromaticity Diagrams


Comments encouraged - Mitchell Charity <[email protected]>

Notes:
  Hopefully this page will become obsolete at some point.

Doables:
  Add link to 3000 K spectrum data so folks can feed it to the lut.fi converter.

History:
  2002-Jan-02  Added "foundry colors" section.
  2001-Jun-25  Added `what is lut.fi doing' and sRGB clipping notes.
  2001-Jun-04  on-line