Von RGB über XYZ zum Spektralfarbzug

Ableitung des Spektralfarbzugs aus dem RGB-Dreieck durch negatives Rot

Die hufeisen- oder schuhsohlenförmige Farbtafel des CIE – den Spektralfarbzug – sehen wir in vielen Publikationen.

Wer hat sich nicht einmal die Frage gestellt, wie die Schuhsohlen-Form des CIE-Farbmodells zustande kommt und warum wir mit X, Y und Z rechnen und nicht mit RGB?

Maxwell extrahierte 1861 mit einer speziellen Kamera und drei verschiedenen Filtern das rote, blaue und grüne Licht aus dem reflektierten polychromatischen Licht einer Szene. Die so entstandenen Filme projizierte er auf dieselbe weiße Fläche. Auf der Wand entstand eine korrekte Reproduktion der ursprünglichen farbigen Szene. So bewies Maxwell, dass jede Farbe (näherungsweise) durch Licht aus drei Wellenlängen reproduziert werden kann.

Heute ist bekannt, dass die Reize der drei Zapfen nicht einfach als drei Farbreize verarbeitet werden, sondern komplexer kombiniert werden. Tatsächlich kann keine der trichromatischen Theorien alle Farben erklären und dennoch sind drei Farben genug, um den Raum aller sichtbaren Farben zu definieren. Das Maxwell-Dreieck erklärt diese Einschränkung:

Die Mischung aus Blau und Grün erzielt kein hochgesättigtes Cyan
Erst die zusätzliche (virtuelle) Lichtquelle bringt rein rechnerisch das spektrale Cyan

Das Maxwell-Dreieck demonstriert eine additive Farbmischung, bei der drei farbige Lichtquellen an den Ecken eines gleichschenkligen Dreiecks liegen, so dass sie zum Mittelpunkt des Dreiecks strahlen. Der Lichtstrahl nimmt gleichmäßig ab, bis er auf der gegenüberliegenden Seite den Nullpunkt seiner Intensität erreicht.

Was auf dem ersten Blick wie eine schlüssige Darstellung eines Farbsystems erscheint, birgt einen entscheidenden Nachteil: Obwohl die spektralen Farbtöne in ihren Positionen stimmen, ist der Mittelpunkt zwischen Blau und Grün nicht so hoch gesättigt wie das spektrale Cyan.

Der Trick: negative Farben

Damit der Mittelpunkt zwischen Blau und Grün und das spektrale Cyan dieselbe Sättigung aufweisen, müsste das spektrale Cyan mit einer dritten Spektralfarbe – Rot – „verdünnt“ werden. Mathematisch entspricht dies der Addition von negativem Rot, das die Position des Cyan aus dem Dreieck herausführen würde.

Das Erste Graßmann'sche Gesetz sagt, dass dieser Trick legal ist:

Jede Farbe kann aus drei unabhängigen Grundfarben durch eine additive Mischung erzeugt werden. Dabei sind auch negative Anteile gültig (äußere oder uneigentliche Mischung).

Rundherum verdünnt: der Spektralfarbzug

Wenn dieser Trick für jeden spektralen Farbton verwendet wird, entsteht eine Kurve, die als Spektralfarbzug bezeichnet wird. Die Kante zwischen Rot und Blau ist nicht spektral und bleibt darum gerade. Die einzigen Spektralfarben, die aus den drei Primärvalenzen Rot, Grün und Blau gemischt werden können, sind also Rot, Grün und Blau.

Der gelb unterlegteSpektralfarbzug entsteht durch die negativen Anteile an Rot für die Erzeugung des hoch gesättigten Cyans.

Auf diese Weise entstehen die Farbmischkurven zur Bestimmung der reinen Spektralfarben. Die Kurven zeigen die Menge an rotem, grünen und blauen Licht, die wir brauchen, um eine Farbe einer bestimmten Wellenlänge zu erzeugen.

Farbmischkurven zur Bestimmung der Farbwerte für reine Spektralfarben (2° Standard-Beobachter). Die Farbmischkurven geben an, welche Anteile der drei Primärfarben erforderlich sind, um die Farbgleichheit zu einem bestimmten monochromatischen Reiz zu erzielen.

Der rot unterlegte Graph hat einen Bereich mit negativen Werten. Dieser Bereich lässt sich nicht durch die Standardprozedur (ein Farbmuster, drei Lichtquellen) der CIE erzielen. Erst durch eine imaginäre Lichtquelle in einer Primärfarbe, die das Farbmuster zusätzlich anstrahlt, wird das gesättigte Cyan erreicht – darum also hat der Graph für Rot einen negativen Bereich.

Tatsächlich können Monitore, die Farben durch die Mischung aus Rot, Grün und Blau darstellen, keine Wellenlängen von rund 500 nm erzeugen. Die Kurven der Tristimuluswerte sind besser anhand eines Beispiels zu verstehen:

Spektrum des sichtbaren Lichts 400 500 600 700

Der Versuchsaufbau à la CIE erzielt Gelb bei 580 nm durch das Mischen gleiche Anteile von Rot und Grün. Genau das zeigt der Graph mit den trichromatischen Empfindlichkeitskurven: Die Kurven für Grün und Rot überschneiden sich bei 580nm – Gelb.

Monitore haben kein Gelb

Der Monitor des Computers erzeugt Gelb durch die Mischung von Rot und Grün, Cyan durch die Mischung von Blau und Grün. Ein Gerät, das mit einem Farbmodell arbeitet (z.B. der Monitor, der auf dem RGB-Farbmodell basiert), muss aber dennoch nicht alle Farben darstellen können, die wir sehen. Wir sagen, ein Gerät besitzt einen Farbraum, die Menge aller Farben, die ein Gerät erzeugen oder darstellen kann.

1260 px
1387
The CIE, which stands for International Commission on Illumination (or Commision Internationale de l'Eclairage), in 1931, defined three standard primaries (X, Y, and Z) to replace red, green, and blue, because all visible colors could not be specified with positive values of red, green and blue components. (In other words, not all visible colors can be specified in the RGB color space! -- at least not with positive coefficients.) With this newly created X, Y, and Z primaries, all visible colors could be specified with only positive values of the primaries. The primary Y was intentionally defined to match closely to the quality of luminance of a color. Note that arbitrarily combining X, Y, and Z values can easily lead to a "color" outside the visible color spectrum. The picture to the left is taken from Computer Graphics, mentioned above, and shows the cone of visible colors, as well as the plane X+Y+Z=1 (discussed below). Lowercase x, y, and z refer to the normalized X, Y, and Z values [normalized such that x + y + z = 1, so x = X/(X+Y+Z), y = Y/(X+Y+Z), and z=Z/(X+Y+Z)]. Thus, x, y and z are on the (X + Y + Z = 1) plane of the solid of visible colors in X,Y,Z space. These lowercase letters are called chromaticity values, and a projection onto the (X,Y) plane of the (X+Y+Z=1) plane of the figure to the left is called the chromaticity diagram. On this diagram, all perceivable colors with the same chromaticity but different luminances (brightness) map into the same point. This chromaticity diagram is shown to the right (it is also taken from Computer Graphics), with the dot marking the "C-illuminant" (or white point), and the numbers along the boundary correspond to wavelength in nanometers. The CIE LUV color space is a perpetually uniform derivation of this standard CIE XYZ space. (Percpetually uniform means that two colors that are equally distant in the color space [specified by the standard cartesian distance function of the square root of the squares] are equally distant perceptually.) The L parameter corresponds roughly to illuminance or brightness. If both U and V are set to 0, then varying L will take you through the gray-scale. The U parameter seems to mimic mostly shifts from green to red (with increasing U), and the V parameter seems to mimic mostly blue and purple type colors. There are two reasons we might use non-RGB colorspaces, including LUV, in computer vision. The first reason is that differences in RGB space do not correspond well to perceived differences in color. That is, two colors can be close in RGB space but appear very different to humans and vice versa. The second reason (and I would say the more important one for object detection) is that spaces like LUV decouple the "color" (chromaticity, the UV part) and "lightness" (luminance, the L part) of color. Thus in object detection, it is common to match objects just based on the UV part, which gives invariance to changes in lighting condition. R B G Z Y X R B G Maxwell-Dreieck zur Darstellung Grün Rot Blau Cyan Gelb Magenta Maxwell-Dreieck zur Darstellung Grün Rot Blau Cyan Gelb Magenta Farbmischkurven zur Bestimmung der Farbwerte für reine Spektralfarben 400 500 600 700 Z Y X Wellenlänge [nm] 0 0,1 0.2 0,3 0,4 -0,1 Ableitung des Spektralfarbzugs aus dem RGB-Dreieck durch negatives Rot R B G Z Y X R B G