prev up inhalt next


5.3 Farbtabelle

Ein n × m True-Color-Bild benötigt 3 · m · n Bytes Speicherplatz im Hintergrundspeicher und im Bildwiederholspeicher. Die Zahl der gleichzeitig darstellbaren Farben beträgt 2563 $\approx$ 16 Millionen. Dies ist weit mehr, als das menschliche Auge unterscheiden kann. Daher reduziert man den Platzbedarf unter Beibehaltung des visuellen Eindrucks durch eine Farbtabelle. Eine Farbtabelle enthält 2p Einträge (meistens drei RGB-Bytes) und wird durch Indizes der Länge p Bit referiert. Zur Reduktion des Umfangs einer Bilddatei wird eine maßgeschneiderte Farbtabelle erstellt und zusammen mit den in sie verweisenden Indizes abgespeichert (Palettenbild).

Darstellung eines True-Color-Bildes auf einem 8-Bit-Farbschirm
Es wird eine Farbtabelle initialisiert, die einem 6 × 6 × 6 RGB-Würfel entspricht. D.h. auf insgesamt 216 Einträge verteilt befindet sich das Farbspektrum mit je 6 verschiedenen Rot-, Grün- und Blau-Abstufungen. Jedem RGB-Tripel des True-Color-Bildes wird der Index des nächstgelegenen Farbeintrags zugeordnet. Hierzu wird der Bereich 0...255 in 6 Intervalle partitioniert, denen ein quantisierter Wert zugeordnet ist:

x 0 ... 25 26 ... 76 77 ... 127 128 ... 178 179 ... 229 230 ... 255
q(x) 0 51 102 153 204 255



Hi-Color-Modus
Beim Hi-Color-Modus werden die Rot-, Grün-, Blauanteile eines Pixels durch den Grafikkartentreiber auf 5 + 6 + 5 = 16 Bit gerundet, d.h., die letzten 3 bzw. 2 Bit werden abgeschnitten. Der resultierende 2 Byte lange Index wird im Bildspeicher abgelegt. Beim Auslesen läßt sich daraus unmittelbar ein Spannungstripel erzeugen, eine Farbtabelle wird nicht benötigt. Es sind also 216 = 65536 Farben gleichzeitig darstellbar.

Beim Einlesen eines Palettenbildes wird jedem Bildpunkt der 2-Byte Index zugeordnet, der sich nach Rundung des referierten Farbtabelleneintrags ergibt. Danach wird die Farbtabelle nicht mehr benötigt.


12 typische Einträge einer Farbtabelle für einen Bildschirm mit 4 Bit Farbtiefe


prev up inhalt next