Dietrich Zawischa     Kontakt


Farbton, Sättigung, Helligkeit: HSB und HSL

– auf englisch Hue, Saturation und Brightness beziehungsweise Lightness.
Da der Kennzeichnung von Farben durch R', G' und B' nicht so leicht zu entnehmen ist, welche Farbe gemeint ist, wurden suggestivere Parametrisierungen des RGB-Farbraumes eingeführt, die von der Anordnung der gesättigten Farben im Kreis ausgehen.

HSB

Man kann mit dem PostScript-Befehl h s b sethsbcolor die drei Wert festlegen. Alle drei Argumente können Werte zwischen 0 und 1 annehmen. Während der Wert Sättigung (fast) selbsterklärend ist, ist zu Farbton/Hue h folgendes anzumerken: h=0 kennzeichnet Rot, h=1/6 Gelb, h=1/3 Grün, h=1/2 Cyan, h=2/3 Blau, h=5/6 Magenta (Purpur), und h=1 ist wieder Rot. Zwischen diesen Werten, die sich im R'G'B'-Schema leicht darstellen lassen, werden die Maßzahlen R', G', B' linear interpoliert. Der Parameter h ist also der Bruchteil des Kreisumfanges, von Rot (0) bis zur betreffenden Farbe gemessen, und zwar bei Anordnung wie im folgenden Bild gegen den Uhrzeigersinn. Die maximale Helligkeit b jedes Farbtons ist eins.
Andere Grafikprogramme geben den Farbton durch H = 360 h an, das entspricht der Messung in Winkelgraden, wie in Bild 5 gezeigt.

Bild 5: 36-teiliger Farbkreis, mit sethsbcolor eingefärbt wobei h in Schritten von 1/36 von 0 nach 35/36 läuft und s=1 und b=1 gesetzt wurde.
Die im obigen Bild gezeigten Farben bezeichnen wir als Vollfarben. Von deren Maßzahlen im R'G'B'-Schema hat mindestens eine den Wert 1 und mindestens eine den Wert 0. Diese Maßzahlen seien R'v, G'v, B'v, sie sind, wie gesagt, leicht aus der Angabe von h zu gewinnen. Sei H'=6h=H/60. Für eine durch h, s, b gegebene Farbe erhält man
(R'v,G'v,B'v) = (1,H',0)       für 0 ≤ H' < 1
(R'v,G'v,B'v) = (2−H',1,0)   für 1 ≤ H' < 2
(R'v,G'v,B'v) = (0,1,H'−2)   für 2 ≤ H' < 3
(R'v,G'v,B'v) = (0,4−H',1)   für 3 ≤ H' < 4(6)
(R'v,G'v,B'v) = (0,H'−4,1)   für 4 ≤ H' < 5
(R'v,G'v,B'v) = (1,6−H',0)   für 5 ≤ H' < 6

R'F = (sR'v+1–s)b
G'F = (sG'v+1–s)b (7)
B'F = (sB'v+1–s)b


  Bild 6: Schnitt durch den HSB-Farbzylinder von H=210 nach H=30. In den Waagerechten ändert sich die Sättigung s in Schritten von 0.2 (also 20% des Maximalwertes), in den senkrechten Reihen ändert sich die Helligkeit b um 0.1 (Zum Vergrößern aufs Bild klicken!)


Bei gegebenem R', G', B' berechnet man h, s, b wie folgt:
b = Max(R', G', B')
s = 1 – Min(R', G', B')/b
R'v = (R'/b–1+s)/s (8)
G'v = (G'/b–1+s)/s
B'v = (B'/b–1+s)/s
wobei vorausgesetzt wurde, daß weder s noch b Null sind. Die Bestimmung von h ist schwieriger zu beschreiben als durchzuführen.
h = 1/6 G'v            wenn R' = 1 und B'v = 0
h = 1 &minus 1/6 B'v       wenn R' = 1 und G'v = 0
h = 1/3 + 1/6 (B'v − R'v)       wenn G' = 1 (9)
h = 2/3 + 1/6 (R'v − G'v)       wenn B' = 1
Wenn s=0 ist, also R' = G' = B' (Grau), dann bleibt h unbestimmt und man kann es Null setzen, ebenso, wenn b=0 ist (Schwarz).
Den einfachen Umrechnungsformeln entnehmen wir, daß die Abstufung der Helligkeit wieder entsprechend der Formel für die Gamma-Korrektur erfolgt, und entsprechend auch die der Sättigung.
Dem obigen Bild 6 kann man entnehmen, daß die Reihen konstanter Sättigung und auch die konstanter Intensität in sich ziemlich gleichmäßig abgestuft wirken. Die Art, wie die Gamma-Korrektur berücksichtigt wird, entspricht also ziemlich gut unserer Empfindung.

Die Zwischenstufen im Farbton

Gleiches läßt sich von dem Farbkreis Bild 5 aber nicht sagen. Im grünen Bereich lassen sich die Felder kaum unterscheiden, überhaupt sind die Unterschiede zwischen den additiven Grundfarben und den benachbarten Feldern jeweils recht klein, zwischen den subtraktiven Grundfarben Gelb, Cyan und Magenta (Purpur) und ihren Nachbarfeldern dagegen sehr deutlich.
Und noch etwas: Wilhelm Ostwald hat seinerzeit seinen Farbkreis so aufgebaut, daß einander gegenüberliegende Farben zueinander komplementär sind, sich also additiv oder mit dem Farbkreisel zu Unbunt mischen lassen. Diese Eigenschaft (haben wir sie stillschweigend vorausgesetzt?) hat der oben in Bild 5 gezeigte Farbkreis nicht, nur für die drei Durchmesser, auf denen die Primärfarben liegen, sind die gegenüberliegenden Farben komplementär zueinander.
Schauen wir uns die Farborte der Felder im obigen Farbkreis im CIE-u'v'-Diagramm (Bild 7) an! In diesem Diagramm entsprechen die Abstände so gut wie eben möglich den empfundenen Farbunterschieden – dies gilt allerdings nur für Farben gleicher Helligkeit; für verschiedene Helligkeiten unterscheiden sich die als gleich empfundenen Schrittgrößen. Rechts daneben (Bild 8) die Farborte in einem Komplementärfarben einander gegenüber anordnenden Kreis.

         
Bild 7: Die Farborte der Felder vom
Farbkreis aus Bild 9 im CIE-u'v'-
Diagramm. Die Linien verbinden
Farben, die im Kreis einander gegen-
über liegen.

Bild 8: Die Verbindungslinien von
Komplementärfarben schneiden sich
im Weißpunkt

Bild 9: Noch einmal ein Farbkreis.
Wie in Bild 5 sind zwischen den
sechs Grundfarben die Werte von
R', G', B' linear interpoliert.
Bild 10: Farbkreis mit einander gegen-
über liegenden Komplementärfarben,
entsprechend Bild 8.

Der Farbkreis Bild 10 wurde erzeugt, indem zwischen den Grundfarben Rot, Gelb, Grün usw. die jeweils zu verändernden trichromatischen Maßzahlen R, G, B in gleichen Schritten gestuft wurden. Für die Umrechnung von R, G, B nach R', G', B' wurde ein Bildschirm-Gamma von 2.2 vorausgesetzt. Sollte dies für Ihren Monitor nicht zutreffen und es interessiert Sie, dann können Sie im PostScript-Quellcode Gamma und auch die Zahl der Sektoren nach Belieben verändern.

HSL

Eine wieder andere Parametrisierung des R'G'B'-Farbraumes durch die drei Maßzahlen H (Hue), S (Saturation) und L (Lightness) wurde ebenfalls eingeführt, um die Auswahl der Farbparameter "nach Gefühl" zu erleichtern, was vor allem für die Erstellung von Seiten und Grafiken für das World Wide Web von Bedeutung ist.
Seit CSS3 kann man Farben durch H, S und L angeben, z.B Gelb als hsl(60,100%,50%). Dabei ist das erste Argument der Farbton H (hue) gemessen in Grad auf dem Farbkreis wie in Bild 5. Das zweite Argument gibt die Sättigung S an und das dritte die Helligkeit (lightness) L. Den Vollfarben wird die lightness L=50% zugeordnet. Lightness 0% entspricht für alle Werte von H reinem Schwarz, Lightness L=100% reinem Weiß. Das Farbraum-Modell wäre also in diesem Fall ein Doppelkegel, dessen Peripherie der Farbkreis, dessen obere Spitze weiß und dessen untere Spitze schwarz ist. Allen Punkten an der Oberfläche wird die Sättigung S=100% zugeordnet; die Achse des Kegels mit S=0% enthält die Grauskala, und zwischen Oberfläche und Achse wird bei festgehaltenem l linear interpoliert. Daraus ergeben sich die Umrechnungsformeln.
Die einfachere Deutung der Parameter als Zylinderkoordinaten ergibt einen Zylinder mit weißer Deck- und schwarzer Grundfläche als Farbkörper. Die Einfachheit hat ihren Preis, wie man dem folgenden Bild, das einen Schnitt durch diesen Körper zeigt, entnehmen kann: die Schritte zwischen benachbarten Feldern werden doch recht verschieden groß empfunden.
  Bild 11: Schnitt durch den HSL-Zylinder von H=240 nach H=60. Die Helligkeit L steigt von unten 0% in Schritten von 10% an. Die Sättigung S ändert sich in waagerechter Richtung um je 20%. Auffällig ist der Wechsel der empfundenen Schrittweite in vertikaler Richtung bei L=50%.


Zurück zum Text oder zur Übersicht