Zum Seminar Bildkommunikation im SS2000.
Von Monika Gehweiler und Marc Janott.
(von Monika Gehweiler)
Farbe ist keine physikalische Größe, sondern eine Sinneswahrnehmung. Diese wird meist mit den drei Größen Farbe, Sättigung und Helligkeit beschrieben: Die Farbe (hue) unterscheidet zwischen Farben wie Rot, Grün, Lila und Gelb. Die Helligkeit (lightness) beschreibt die wahrgenommene Intensität eines reflektierten Lichts. (Die Intensität bei einem selbstleuchtenden Objekt nennt man brightness.) Die Sättigung (saturation) gibt an, wie weit eine Farbe von einem Grauwert gleicher Intensität entfernt ist. Dabei enthalten ungesättigte Farben mehr weißes Licht als die gesättigten Farben.
Aus nur wenigen sogenannten Grundfarben kann man mit Hilfe von Farbmischung sehr viele Farben erzeugen. Dabei unterscheidet man zwei Farbmischungsarten:
Von subtraktiver oder multiplikativer Mischung spricht man, wenn Farbstoffe oder Farbpigmente gemischt werden. Verwendet man jedoch farbiges Licht, nennt man dies additive Mischung. Beiden Mischungsarten ist gemeinsam, dass drei Grundfarben ausreichen.
Hier in dieser Arbeit geht es um die additive Farbmischung.
Eine additive Mischung aus drei Grundfarben ist durch drei Zahlen bestimmt, die die relativen Leuchtdichten der drei Mischungskomponenten angeben. Diese nennt man die drei Farbwerte R, G, B einer Mischfarbe. Sie beziehen sich auf die gewählten Grundfarben und sind als relative Leuchtdichten dimensionslos. Normiert werden die Farbwerte durch die Festlegung, dass sie für ein Weiß bestimmter Leuchtdichte die Werte R = G = B = 1 annehmen. Die Anteile einer Farbe an den drei ausgewählten Grundfarben bilden die Farbvalenz dieser Farbe. Die Grundfarben selbst nennt man Primärvalenzen.
Man kann die drei Farbwerte als Vektor auffassen. Dann ist die Farbvalenz ebenfalls ein Vektor und die Primärvalenzen bilden in dieser Darstellung die Einheitsvektoren eines dreidimensionalen Vektorraums
Die additive Mischung einer Farbvalenz mit den Farbwerten R, G und B aus den drei Primärvalenzen, lässt sich dann wie folgt in einer Gleichung darstellen:
F = R*R + G*G + B*B oder in Vektorschreibweise
++
Für die Addition zweier Farbvalenzen F1=R1R + G1G + B1B und F2 =R2R + G2G + B2B gilt folgende Beziehung:
F1 + F2 = (R1 + R2)R + (G1+G2)G + (B1+B2)B
Mit der Vektorschreibweise kann man die additive Farbmischung auch graphisch in einem dreidimensionalen Vektorraum darstellen, wobei die Primärvalenzen dessen Basisvektoren bilden. Der Ort der ermischten Farbe liegt dann an der Spitze des Ortsvektors F1 + F2. Dies bedeutet dann aber, dass er in der Ebene liegt, die die Vektoren der beiden Komponenten aufspannen. Die Farbwerte einer solchen ermischten Farbvalenz sind die Verhältinisse der Längen der Vektorkomponenten zu den Längen der Basisvektoren.
Liegt der zu ermischende Vektor innerhalb des von den Basisvektoren gebildeten Winkels, spricht man von innerer additiver Mischung, liegt er außerhalb von äußerer additiver Mischung. Letzteres würde bedeuten, dass zur Erzeugung der gewünschten Farbe eine Subtraktion von Farbreizen notwendig wäre. Diese ist aber physikalisch nicht möglich. Wie läßt sich dies dann aber interpretieren?
Das negative Zeichen lässt sich in der Gleichung dadurch eliminieren, dass man den entsprechenden Term T auf die andere Seite bringt. Bei der additiven Mischung entspricht dies folgendem Vorgehen: Es werden nicht die Farbvalenzen addiert und dann das Ergebnis mit F verglichen, sondern es wird T zu F addiert und mit der Addition der beiden anderen (positiven) Valenzen verglichen.
Die Farbwerte der Spektralfarben (monochromatische Lichter verschiedener Wellenlängen) nennt man Spektralwerte. Diese wurden in einem Experiment ermittelt, bei welchem die Spektralfarben mit additiven Mischungen aus drei Primärvalenzen verglichen wurden. Dabei wurden Lichter der folgenden Wellenlängen verwendet:
700,0 nm als rote Primärvalenz R
546,1 nm als grüne Primärvalenz G
435,8 nm als blaue Primärvalenz B
Dies ergab folgende Spektralwertkurven:
Hier erkennt man, dass sich nicht alle Spektralfarben durch innere additive Mischung aus den drei Primärvalenzen R, G und B erzeugen lassen, was auch bei dem Experiment festgestellt worden ist. (Betrachte den Spektralbereich zwischen etwa 450 nm und etwa 550 nm).
Mit Hilfe dieser Spektralwertkurven lässt sich der Spektralfarbenzug in die Farbtafel eintragen:
Die Gerade, auf der die Farbwerte R und B liegen nennt man Purpurgerade. Diese bildet zusammen mit dem Spektralfarbenzug ein konvexes Gebiet, in welchem alle Farbörter derjenigen Farben liegen, die sich aus zwei oder mehreren Spektralfarben durch innere additive Mischung erzeugen lassen. Also liegen alle physikalisch realen Farben innerhalb eben dieses Gebietes.
Auch in dieser Darstellung erkennt man wiederum, dass sich einige Farben nur durch äußere additive Mischung aus den drei gegebenen Primärvalenzen R, G, B erzeugen lassen. (Das sind alle Farben, deren Farbörter außerhalb des von R, G und B aufgespannten Dreiecks liegen.)
Da die äußere additive Mischung für die Rechnung und Farbmessung recht unangenehm ist, nahm sich die Internationale Beleuchtungskomission (CIE) zum Ziel, drei Primärvalenzen zu finden, aus denen sich alle physikalisch existierende Farben durch innere additive Mischung erzielen lassen.
Aufgrund der Konvexität des Spektralfarbenzugs kann es sich hierbei nicht um reale, sondern nur um virtuelle Farbvalenzen handeln.
Bei der Wahl dieser drei Primärvalenzen (X, Y und Z) berücksichtigte die CIE zum einen die Form des Spektralfarbenzuges und zum anderen versuchte sie, praktische Eigenschaften für das entsprechende Modell zu erhalten:
Da der Spektralfarbenzug etwa ab der Wellenlänge 580 nm geradlinig verläuft, wählten sie eine Dreiecksseite so, dass diese eben mit diesem Teil zusammen fällt.
Die Dreiecksseite zwischen X und Y wurde so gewählt, dass die relative Leuchtdichte einer Farbvalenz dem Normfarbwert Y entspricht.
Die CIE schlug also im Jahre 1931 folgende Primärvalenzen vor:
X = 2,365 R + 0,515 G + 0,005 B
Y = -0,897 R + 1,426 G - 0,014 B
Z = -0,468 R + 0,089 G + 1,009 B
Was zu folgenden Umrechnungsmatrizen führt:
Trägt man nun die Farbwerte der Normvalenzen in die Farbtafel der drei spektralen Primärvalenzen ein, erhält man folgendes.
Ebenso wie in den letzten beiden Schaubildern erkennt man im folgenden Diagramm, in welchem die Spektralwertkurven bezüglich der Normprimärvalenzen eingetragen sind, dass nun alle Farben durch innere additive Mischung erzeugbar sind.
Literatur:
Niedrig, H. (Hrsg.)(1993): Optik.(=Bergmann Schaefer. Lehrbuch der Experimentalphysik. Bd3) Berlin, New York.
Foley, J.D. et.al.(1994): Grundlagen der Computergraphik.Einführung, Methoden, Prinzipien. Bonn u.a.
Links:
Homepage der CIE
http://www-cvrl.ucsd.edu/
http://www.cs.rit.edu/~ncs/color/
http://www.colorpro.com/info/index.htm#TOP
http://www.physics.sfasu.edu/astro/color.html
http://www.cs.sfu.ca/CourseCentral/365/li/material/notes/Chap3/Chap3.3/Chap3.3.html
(von Marc Janott)
Mit den so gewählten Norm-Primärvalenzen kann jede sichtbare Farbe durch positive Werte XYZ beschrieben werden (innere Mischung). Die Primärvalenzen spannen den Raum aller Farben als Basis eines Vektorraums auf. Sie bilden drei (rechtwinklige) Achsen eines Koordinatensystems mit Schwarz im Ursprung (bei X=Y=Z=0). Alle sichtbaren Farben liegen im positiven Oktanden (haben also positive Werte für X, Y, Z).
Auch die RGB-Valenzen spannen als Basis den Vektorraum der Farben auf. Beide Systeme haben denselben Ursprung, jedoch liegen die Achsen anders im Raum.
Farbwerte RGB und XYZ aus dem RGB-System und dem XYZ-System lassen sich durch eine Basistransformation ineinander überführen. So können Werte bzgl. des einen Koordinatensystems in Werte bzgl. des jeweils anderen Koordinatensystems umgerechnet werden. Die Transformation wird durch Umrechnungsmatrizen beschrieben.
Dabei werden für RGB die folgenden Wellenlängen angenommen:
Rot: 700,0 nm
Grün: 546,1 nm
Blau: 435,8 nm
???Das entspricht den RGB-Primärvalenzen, wie sie oben erklärt wurden.
Rot, im RGB-System der Vektor , wird also im XYZ-System durch den Vektor beschrieben, Grün durch und Blau durch .
Daraus wird ersichtlich, daß die positven RGB-Farben allesamt im positiven Oktanden des XYZ-Systems liegen (also nur positive Werte X, Y, Z annehmen).
Um die reine Farbe ohne ihre Intensität im Farbraum als Richtungsvektor zu beschreiben werden die XYZ-Werte normiert.
, und
Schwarz ist dabei nicht definiert (Division durch 0), was aber keine Problem darstellt, da Schwarz sowieso keine eindeutige Farbrichtung zuzuordnen ist. Intuitiv würde man es vielleicht am ehesten als ganz dunkles Grau, oder null mal Weiß auffassen. Ebenso sinnvoll ist es aber, Schwarz als ganz dunkles Gelb, oder null mal Grün anzusehen. Durch die Normierung soll aber eine Farbrichtung erfaßt werden. Die Helligkeit spielt dabei keine Rolle mehr. Schwarz, das ja nur durch seine Helligkeit null definiert ist, fällt also aus der Betrachtung heraus.
Aufgrund der Definition gilt nun . Die Vektoren spannen also im XYZ-System die Ebene auf, in der die Punkte , und liegen.
Wegen der Beziehung sind die Werte x und y ausreichend, um eine Farbrichtung eindeutig zu beschreiben. Dadurch ist es möglich, alle Farben (ohne Helligkeitsinformation) in einem zweidimensionalen xy-System zu erfassen. Da alle sichtbaren Farben positive XYZ-Werte im XYZ-System besitzen, ist es auch ausreichend, positive xy-Werte im xy-System zu betrachten.
Diese Überlegungen haben uns nun den Weg geebnet, um Herkunft und Bedeutung des CIE-Diagramms verstehen zu können.
Die aus den Farbvergleichstests hervorgegangenen Spektralwertkurven liefern uns für jede sichtbare Wellenlänge im Abstand von 5 nm das Mischungsverhältnis für Rot, Grün und Blau, um die Farbe, in der uns Licht dieser Wellenlängen erscheint, durch additive Mischung zu erzeugen.
Im ersten Schritt überführen wir nun die 81 für die sichtbaren Wellenlängen 380 nm bis 780 nm experimentell gefundenen RGB-Werte vom RGB-System in das XYZ-System und erhalten entsprechend 81 XYZ-Werte.
Im zweiten Schritt normieren wir die 81 XYZ-Werte des XYZ-Systems zu 81 xyz-Werten, immer noch im XYZ-System. Dadurch erhalten wir einen Zug von Punkten auf der durch aufgespannten Ebene. Alle sichtbaren Farben liegen nun innerhalb des durch diesen Punktezug geformten hufeisenähnlichen Bereiches. Entlang der Verbindung zwischen den Endpunkten des Hufeisens liegen die sichtbaren Farben, die sich nur durch Mischung von Wellenlängen aus den Bereichen der Endpunkte erzielen lassen. Diese Verbindung wird Purpurgerade genannt.
Im dritten Schritt werden die 81 xyz-Werte aus dem XYZ-System auf das xy-System projiziert (d.h. die z-Werte werden ignoriert), und wir erhalten 81 xy-Werte, die wir in einem Diagramm erfassen können.
Im vierten Schritt färben wir die xy-Werte entsprechend ihrer Wellenlängen ein. Auch den gesamten Bereich innerhalb des Hufeisens färben wir ein. Wir tun das, indem wir von jedem eingezeichneten Punkt zu jedem anderen linear deren Farben interpolieren.
Das Ergebnis ist eine zweidimensionale Farbtafel, an der sich für alle sichtbaren Farben ihre eindeutigen xy-Werte ablesen lassen. Dieses Diagramm wurde von der CIE als Standard zur Kennzeichnung von Farben eingeführt.
Da die Y-Achse des XYZ-Systems die relative Leuchtichte (d.h. die Helligkeit) der Farbe bestimmt, wird der Y-Wert oft zum xy-Wert hinzugenommen, um eine Farbe mit ihrer Helligkeit eindeutig zu bestimmen. Durch einen Wert xyY und kann also eine Farbe mit ihrer Helligkeit beschrieben werden.
Um die Lage des RGB-Würfels (der Raum, der durch beschrieben wird) im XYZ-System zu bestimmen gehen wir folgendermaßen vor.
Zunächst suchen wir im xy-System bildschirmtypische xy-Werte für Rot, Grün und Blau - ein sogenanntes Gamut. Das sind die Grundfarben, aus denen ein Bildschirm alle darstellbaren Farben ermischt. Die dritte Komponente z ergibt sich direkt aus . Zusammen erhalten wir normierte xyz-Werte für das XYZ-System – Farbvektoren für Rot, Grün und Blau.
XYZ-System | Rot | Grün | Blau |
x | 0,62 | 0,21 | 0,15 |
y | 0,33 | 0,68 | 0,06 |
=> z | 0,05 | 0,11 | 0,79 |
Diese Werte interpretieren wir als Koordinaten für die rote, grüne und die blaue Ecke des Würfels. Die Koordinaten für die Ecken mit den Farben Cyan, Magenta und Gelb ergeben sich durch additive Mischung der Gamutfarben. Auf dieselbe Weise erhalten wir auch die Weiß-Koordinate.
Cyan = Blau + Grün
Gelb = Grün + Rot
Magenta = Rot + Blau
Weiß = Rot + Grün + Blau
XYZ-System | Cyan | Gelb | Magenta | Weiß |
x | 0,36 | 0,83 | 0,77 | 0,98 |
y | 0,74 | 1,01 | 0,39 | 1,07 |
=> z | 0,90 | 0,16 | 0,84 | 0,95 |
Weiß sollte eigentlich sein, aber davon mal ab. (???)
Schwarz liegt im Ursprung des XYZ-Systems.
Damit haben wir die Koordinaten aller Eckpunkte des RGB-Würfels und kennen seine Lage im XYZ-System. Die Größe des Würfels können wir nun beliebig skalieren, wodurch sich die Helligkeit der Farben an den Eckpunkten ändert. Weiß kann also verschiedene Helligkeiten annehmen. Es ist demnach nur als unbunt definiert.
Farbfernsehgeräte setzen die dargestellten Bilder aus Pixeln zusammen, deren Farbe und Helligkeit durch die Mischung von rotem, grünem und blauem Licht bestimmt sind. Für die Fernsehübertragung der Bilder (NTSC und PAL) werden die Farben der Pixel jedoch nicht durch drei Kanäle für diese Grundfarben kodiert, deren Intensitäten übertragen werden. Stattdessen wird das Signal in Helligkeitsinformation und zwei Farb-Balancewerte aufgeschlüsselt.
Der Kodierung liegen die folgende Überlegungen zugrunde: Das Fernsehsignal soll mit dem früheren Schwarz/Weiß-Fernsehen verträglich sein. Das bedeutet, daß ein von der Farbe isoliertes Helligkeitssignal benötigt wird. Die Farbinformation muß demnach auf einem zusätzlichen Kanal isoliert von der Helligkeit übertragen werden. Außerdem ist das menschliche Auge für Helligkeitsunterschiede viel empfindlicher als für Farbunterschiede. Auch aus diesem Grund ist es sinnvoll, die Helligkeit und die Farbe auf verschiedenen Kanälen zu übertragen. Auf diese Weise kann die Helligkeitsinformation höher aufgelöst werden als die Farbinformation.
Die Helligkeitsinformation ist eindeutig durch die Y-Komponente des XYZ-Systems beschrieben. Es liegt also nahe, diesen Wert zu verwenden. Schwarz/Weiß-Fernseher können durch das Y-Signal die Graustufen der Pixel widergeben.
Damit Farbfernseher die Pixel nun farbig darstellen können, wird zusätzlich zum Y-Signal noch der Farbton übertragen. Betrachtet man das CIE-Diagramm, so erscheint es sinnvoll, die Farbinformation z.B. als xy-Wert aus dem xy-System zu kodieren. Dieser naheliegende Ansatz wird aber in der Praxis nicht gewählt, da die Umwandlung eines xyY-Wertes in einen RGB-Wert technisch zu aufwändig wäre. (???)
Der Farbton wird statt dessen durch die Abweichung von Unbunt festgelegt. Die Abweichung wird in zwei Richtungen gemessen. Beim YUV-System z.B. wird im U-Kanal die Abweichung in Richtung Blau und im V-Kanal die Abweichung in Richtung Rot kodiert. Betrachtet man das CIE-Diagramm, erkennt man, daß das die Abweichung von Blau zu Unbunt der negativen Abweichung von Gelb zu Unbunt entspricht. Das U-Signal gibt also die Balance von Blau und Gelb an. Analog gibt das V-Signal die Balance von Rot und Cyan an.
Die beiden Geraden, auf welchen die Abweichungen liegen, spannen die Farbebene vollständig auf. Demnach können durch die beiden Werte für U und V alle Farben eindeutig kodiert werden.
Die Umwandlung in RGB-Werte aus solchen YUV-Werten ist technisch recht einfach umzusetzen. Die Helligkeit (Y) wird auf Rot, Grün und Blau verteilt. Die Blau-Gelb-Balance gewichtet diese Verteilung zugunsten von Blau oder zugunsten von Rot und Grün (das ist Gelb). Die Rot-Cyan-Balance wiederum gewichtet die Verteilung zugunsten von Rot oder zugunsten von Grün und Blau (das ist Cyan).
Ähnlich funktioniert das YIQ-System. Der Y-Kanal ist derselbe wie bei YUV, also die Y-Komponente aus dem XYZ-System, und trägt die vollständige Helligkeitsinformation. Die Kanäle I und Q kodieren ebenfalls wie beim YUV-System Farbbalancen, die jedoch anders gewählt sind. Der I-Kanal trägt die Orange-Cyan-Balance und der Q-Kanal die Grün-Magenta-Balance.
Das Helligkeitssignal setzt sich aus den Helligkeiten der Anteile von Rot, Grün und Blau zusammen. Die Anteile entsprechen annähernd der Empfindlichkeit des Auges für die drei Farben.
Das YUV-Signal ergibt sich aus den RGB-Werten wie folgt:
Die Rückwandlung in RGB-Werte ist umgekehrt:
Kompakter lassen sich diese Umwandlungen als Matrix schreiben:
, bzw.
Die Transformationen von RGB und YIQ können ebenfalls durch Matrizen beschrieben werden:
, bzw.
(???)
Letzte Änderung: 2001-07-23
webmaster@marc-janott.de