Jul 08

Moderne Farbmodelle

Ein Farbmodell ist ein geometrisches oder mathematisches Rahmenwerk, das beschreibt, wie das menschliche Auge Farben sieht und Farben zueinander in Beziehung setzt. Farbmodelle haben eine oder mehr Dimensionen, die zusammen das sichtbare Spektrum der Farben darstellen.

Jeder Dimension werden bestimmte Farben zugewiesen, damit die Farben des Modells numerisch beschrieben werden können. Sobald eine numerische Darstellung vorliegt, können Farben beschrieben, klassifiziert, verglichen und geordnet werden.

Farbmodelle mit drei Grundfarben

Verschiedene Farbmodelle basieren auf unterschiedlichen Grundfarben und Anordnungen. In einem Farbmodell mit einer Farbe könnten wir nur einen Farbeindruck in unterschiedlichen Helligkeiten erzeugen, in einem Farbmodell mit zwei Grundfarben schon alle Farben auf der Strecke zwischen den beiden Grundfarben reproduzieren.

Ein Modell mit drei Grundfarben (Dreifarbentheorie oder Trichromatische Theorie) erzeugt alle Farbeindrücke innerhalb eines Dreiecks (Farbebene) oder Spates (Farbraum). Hermann von Helmholtz und Thomas Young stellten bereits Mitte des 19. Jahrhundert fest, dass sich fast jeder Farbeindruck durch das Mischen dreier Primärfarbstrahlen erzielen läßt.

Trichromatische Farbreproduktionen nutzen nur drei Primärfarben, um alle anderen Farben zu erzeugen. Die Prämissen sind

trichromaten.jpg

Trichromatische Farbreproduktionen nutzen nur drei Primärfarben zur Erzeugung aller sichtbaren Farben. Die trichromatische Farbtheorie beruht auf der Fähigkeit des Auges, in gleicher Weise auf zwei oder mehr Stimmulanzen unterschiedlicher Wellenlängen zu reagieren – so erzeugt ein Licht mit einer Wellenlänge von 580 nm Gelb, aber ebenso zwei Lichtquellen mit den Wellenlängen 700 nm (Rot) und 520 nm (Grün).

CMYK3Kreise.gif D.h., es gibt zwei oder mehr sichtbare Wellenlängen, die das Auge als gleiche Farben wahrnimmt, ein Phänomen, das als Metamerismus bezeichnet wird. Durch diese Eigenschaft können wir eine spektrale Reproduktion (wie das fotografische Farbbild aus dem Labor), die teuer und unhandlich wäre, durch eine trichromatische Farbreproduktion, die billiger und besser zu steuern ist, ersetzen.

Wir brauchen verschiedene Farbmodelle für verschiedene Anwendungen – Computer lieben das RGB-Modell, der Drucker das CMYK-Modell, der Grafiker das HSI-Modell und der Fernseher das YUV-Modell. Keines dieser Modell würde als generelles Modell den Anforderungen aller Anwendungen genügen.

RGB.GIF

Unser Monitor benutzt bekanntlich Rot, Grün und Blau als Primärfarben, der Druck Cyan, Magenta und Gelb. Wenn die Farbpunkte nur klein genug sind, vermischt unser Auge Kombinationen – z.B. in Form von Druckpunkten – zu einer Farbe. Da diese Primärfarben in der Natur nicht rein vorkommen, arbeitet insbesondere der Druck mit vielen kleinen und großen Tricks, um die trichromatische Farbmischung – so gut es geht – zu unterstützen.

Das RGB-Farbmodell

Das RGB-Farbmodell ist ein dreidimensionaler Farbraum, der mit roten, grünen und blauen Stimuli definiert ist. Die Grundfarben Rot, Grün und Blau spannen einen maximal großen Farbraum auf – tatsächlich aber kann das RGB-Modell nicht alle Farben reproduzieren (darauf kommen wir später noch einmal zurück). Beim Computer sind RGB-Farbräume die am häufigsten benutzen Farbräume, da die meisten Geräte das RGB-System direkt unterstützen.

RGB-Farbwuerfel.jpg
Jede Farbe, die in einem RGB-Raum liegt, kann als Mischung aus den drei Primärfarben Rot, Grün und Blau angegeben werden. RGB-Räume werden meistens als Würfel dargestellt, wobei an den Ecken Schwarz, die drei Primärfarben (Rot, Grün und Blau), die drei Sekundärfarben Cyan, Magenta und Gelb und Weiß liegen.

Die Farben des RGB-Farbmodells werden als Tripel (R, G, B) beschreiben, wobei R, G, B = [0, 1]. Den RGB-Farbraum können wir uns als dreidimensionalen Würfel vorstellen, in dem jede Achse eine Primärfarbe darstellt. Die Farben des RGB-Farbraums sind Punkte innerhalb des Würfels und werden entsprechend ihrer Koordinaten angegeben.

Die Primärfarben von RGB sind Rot=(1,0,0), Grün=(0,1,0) und Blau(0,0,1). Die Sekundärfarben von RGB sind Cyan=(0,1,1), Magenta=(1,0,1) und Gelb=(1,1,0).

Die Natur des RGB-Farbsystems ist additiv – mehr Farbe macht das Bild heller. Schwarz ist der Ursprung, Weiß ist die Ecke, an der R=G=B=1 gilt. Grau erstreckt sich von Schwarz nach Weiß entlang einer Linie, die die beiden Punkte verbindet. Ein Grauton kann also als (x,x,x) beschrieben werden; rgb(0.8,0.8,0.8) z.B. ist ein mattes Weiß oder ein helles Grau.

Normalisierung

2005041908190113_3.jpg

Die Farben werden häufig in normalisierter Form angegeben. Die Normalisierung sorgt dafür, dass R+G+B=1 ist.

Warum Das RGB-Modell nicht ausreicht

Das RGB-Modell ist nicht intuitiv und eine Farbe ist aus den Anteilen der Primärfarben Rot, Grün und Blau kaum vorhersagbar. Oder kann jemand sagen, welche Farbe rgb(220,147,54) ist? Viel schwerer aber wiegt, dass die Änderung der Helligkeit einer Farbe eine nichtproportionale Änderung der anderen Farbkomponenten erfordert.

Trichromatische Modelle wie das RGB-Modell vereinfachen die Darstellung von Bildern auf Geräten wie Monitoren, da wir wie bereits erwähnt auf eine spektrale Reproduktion verzichten können. Für die Bearbeitung von Bildern sind trichromatische Modelle keinesfalls ideal. Im RGB-Modell korrelieren die roten, grünen und blauen Komponenten in in einem hohen Maß, so dass nicht alle Algorithmen der Bildverarbeitung/Bildbearbeitung ohne komplexe Transformationen brauchbare Ergebnisse liefern.

Führen wir uns diesen Umstand vor Augen:

Noch besser ist allerdings ein Vergleich der Rottöne im HSB-Modell: Der Farbton wurde von Hue = 25 auf Hue = 28 verschoben, die Sättigung von 79 auf 61% gesenkt. Helligkeitskorrekturen im RGB-Modell sind also immer mit einer Farbverschiebung verbunden.

Das HSV- und HLS-Farbmodell

HSV- und HLS-Räume sind Transformationen des RGB-Raums. Das HSI-Modell besteht aus dem Farbton Hue (H), der Sättigung Saturation (S) und der Intensität Intensity (I). Im HSV- bzw. HLS-Modellen sind keine Kenntnisse über die Prozentanteile von Rot, Grün oder Blau erforderlich, um eine Farbe zu erzeugen. Der gewünschte Farbton wird eingestellt und das wars. Um vom dunklen Rot zum Rosa zu kommen, wird die Sättigung verringert. Um eine Farbe heller oder dunkler zu machen, wird die Intensität geändert.

Eine ganze Reihe von Anwendungen nutzt das HSI-Farbmodell. Dazu gehören die maschinellen Farberkennungsverfahren, das Histogramm (nicht immer), alle Transformationen der Intensität und Convolutionsalgorithmen. Diese Operationen sind wesentlich einfacher in HSI als in RGB durchzuführen.

Die Intensität entspricht der Luminanzkomponente Y des YUV-Modells. HUE gibt die dominante Wellenlänge einer Mischung von Lichtwellen wieder, also die dominante Farbe, so wie sie vom Beobachter empfunden wird. Die Sättigung beschreibt die Reinheit des Farbtons (wie viel weißes Licht enthält der Farbton?). Die Vorteile von HSI sind:

Während RGB als dreidimensionaler Würfel beschrieben wird, kann das HSI-Modell als Farbdreieck beschrieben werden. Alle Farben liegen innerhalb des Dreiecks, dessen Schenkel durch die drei initialen Farben definiert sind.

Ziehen wir einen Vektor vom zentralen Punkt des Dreiecks zum Farbpunkt P, dann ist Hue (H) der Winkel des Vektors in Hinsicht auf die rote Achse. Der Winkel 0° entspricht Rot, 60° Gelb, 120° Grün. Die Sättigung (S) ist der Grad, in dem die Farbe nicht von Weiß verwässert wird und ist proportional zur Distanz vom Zentrum des Dreiecks.

Viele bildverarbeitende/bildbearbeitende Techniken (wie z.B. das Histogramm) arbeiten mit einer Intensitätskomponente des Bildes. Eine Intensitätskomponente finden wir z.B. im HSI-Farbmodell.

Graustufenbilder

Jeder Fotograf, der sich in die Schwarzweißfotografie vertieft hat, kennt die Problematik: Ein Schwarzweißbild kann nicht so einfach auf der Basis der Helligkeiten der Farben basieren. So weisen z.B. Rot und Grün nahezu dieselbe Helligkeit auf und in Schwarzweißbildern würde rote Äpfel im grünen Blattwerk untergehen und ein rotes Haus wäre kaum vom grünen Wald dahinter zu trennen.

Die Schwarzweißfotografie hat darum immer die Farben mit Filtern getrennt, der Schwarzweißfilm mit einer Gewichtung der Farbanteile gearbeitet.

Die Ableitung der Graustufen aus einem RGB-Bild könnte zwar als Intensitätskomponente herangezogen werden, das ist aber nicht unbedingt das angebrachte Verfahren. Um ein Bild vom RGB-Farbraum in Graustufen umzurechnen, wird i.A. die folgende Gleichung benutzt:

Graustufenintensität = 0.299R + 0.587G + 0.114B (NTSC-Standard für Luminanz)

Eine andere mögliche Konvertierung ist

Graustufenintensität = 0.333R + 0.333G + 0.333B

Das liefert ein ziemlich fades Graustufenbild, wird aber z.B. bei der Konvertierung von RGB nach HSI benutzt. Da Grün eine große Komponente der Grauscala darstellt, konvertieren einige Algorithmen RGB nach Graustufen allein auf der Grünkomponente.

20050419101605741_1.jpg
Der Gesamtfarbkanal, der rote, grüne und blaue Kanal des Farbbildes: Die Grünkomponente enthält fast immer die meisten Bildinformationen.

Das CMY-Farbmodell

Das CMY-Farbmodell ist eng mit dem RGB-Farbmodell verwand. Seine Primärfarben sind Cyan (C), Magenta (M) und Gelb (Y). Die Sekundärfarben des CMY-Modells sind RGB, also die Primärfarben des RGB-Modells. Die Umrechnung von RGB nach CMY passiert also durch

 C = 1.0 - R           
 M = 1.0 - G      
 Y = 1.0 - B

und von CMY nach RGB:

 R = 1.0 - C
 G = 1.0 - M
 B = 1.0 - Y 
oder [C,M,Y] = [1,1,1] - [R,G,B] bzw. [R,G,B] = [1,1,1] - [C,M,Y]

Der Wertebereich von C, M und Y ist C, M, Y ? [0,1].

Das CMY-Modell bildet die Basis für das Farbmodell des Offsetdrucks – allerdings subtraktiv angewendet. Ein Punkt der Farbe Cyan reflektiert alle RGB-Farben außer Rot oder anders ausgedrückt: Cyan absorbiert Rot und reflektiert nur den Grün- und Blauanteil. Ein Punkt der Farbe Magenta reflektiert alle Farben außer Grün (Magenta absorbiert Grün). Wenn Cyan und Magenta gemischt werden, entsteht Blau – anders als das Weiß, das im additiven Farbsystem entstehen würde.

Warum die Farbseparation eine Geheimwissenschaft ist … das CMYK-Farbmodell

Ein weiteres Modell ist CMYK. Schwarz (K) wird im Druckprozess zugesetzt, um ein reineres Schwarz zu erhalten als durch die Mischung der drei Farben zu erzielen ist und das reinere Schwarz erzielt wiederum einen höheren Kontrast. So ganz nebenbei ist die schwarze Farbe i.d. R. billiger als farbige Tinten oder Pigmente.

Eine Konvertierung von CMY nach CMYK ist

 K = min (C,M,Y)
 C = C - K
 M = M - K
 Y = Y - K

Um von CMYK nach CMY zu konvertieren, wird die schwarze Komponente zum C, M und Y addiert.

Das ist nun aber immer noch reine Mathematik. Tatsächlich wird es noch komplizierter, weil Drucker Farben nicht mischen, sondern aus vier kleinen Pünktchen in Cyan, Magenta, Gelb und Schwarz ein Schweinchenrosa mischen. Erst unser Auge, das die kleinen Druckpunkte nicht mehr voneinander unterschieden kann, mischt die vier Farben zum Rosa.

Und noch ein Schritt weiter: Ein rosa Pixel wird nicht aus vier, sondern aus 16 und mehr Druckerpunkten zusammengesetzt.

Und noch ein Schritt weiter: Die Punkte sind in den Rastern des Offsetdrucks nicht gleich groß, sondern Helligkeiten werden durch große und kleine Punkte simuliert.

YUV

YUV-Farben werden bei europäischen TV-Ausstrahlungen verwendet (YIQ beim U.S.-TV). Das YUV-Farbmodell trennt die Farbinformationen von den Helligkeitsinformationen. Da das menschliche Auge sensibler auf Helligkeiten als auf Farben reagiert (wir können bei Dunkelheit immer noch Umrisse erkennen, bis zu einem weiten Grad sogar noch Perspektive und Lage im Raum, nicht aber Farben), werden mehr Bits zum Speichern der Luminanzinformationen als für die Farbunterschiede benutzt.

Y steht für die Luminanz im Bild, während U und V aus den Farbinformationen bestehen (auch Chrominanz). Die Luminanzkomponenten können wir auch als die Graustufen-Version des RGB-Bildes betrachten. Tatsächlich wird auf einem Schwarzweiß-TV nur die Y-Komponente des Farb-TV-Signals gezeigt.

Statt die Informationen eines Bildes in 8 Bit für Rot, 8 Bit für Grün und 8 Bit für Blau zu codieren, kann ein RGB-Bild auf 16 Bit pro Pixel reduziert werden, wenn die Luminanz und die Farbunterschiede benutzt werden (CCIR 601):

Ey = 0.299R + 0.587G + 0.114B
Ecr = 0.713(R - Ey) = 0.500R-0.419G-0.081B (Color Difference (red), CR (auch als "V" bezeichnet) = R - Y) 
Ecb = 0.564(B - Ey) = -0.169R-0.331G+0.500B (Color Difference (blue), CB (auch als "U" bezeichnet) = B - Y)

Wobei Ey, R, G und B im Wertebereich [0,1] liegen und Ecr und Ecb im Bereich [-0.5,0.5] liegen.

Zurück geht's mit

 R = Y + 1.403V'
 G = Y - 0.344U' - 0.714V'
 B = Y + 1.770U'

Die Vorteile von YUV gegenüber von RGB sind:

Der Großteil der Informationen wird in der Y-Komponente gesammelt, während der Informationsumfang von U und V geringer ist. Diese Eigenschaft trägt zur besseren Komprimierung des Bildes bei. Da die Korrelation zwischen den verschiedenen Farbkomponenten reduziert wird, kann jede der Komponenten getrennt komprimiert werden. Das YUV-Farbsystem wurde für die JPEG-Komprimierung übernommen.

Am Rande: Bei der JPEG-Komprimierung werden die Farbunterschiede noch weiter heruntergebrochen (subsampling), um die Daten noch weiter zu verringern. Beim JPEG 4:1:1-Schema gibt es für je vier Y-Anteile für jeden CB- und CR-Anteil.