Colour Look-Up Table

Colour Look-Up Table

In der Computergrafik bezeichnet man mit indizierten Farben eine Methode zur Speicherung einer Rastergrafik. Bei indizierten Farben enthält die Datenstruktur jedes Pixels nicht direkt die einzelnen Farbwerte, sondern nur einen Index auf einen Eintrag einer sogenannten Farbtabelle oder Farbpalette, die die im Bild verwendeten Farben auflistet. Ein Pixel speichert hierbei – anstelle des Farbwerts – die Nummer des Tabelleneintrags, die diesen Farbwert enthält. Bilder, die nur wenige unterschiedliche Farben enthalten, sparen durch die geringe Größe des Farbindex Speicherplatz ein. Insbesondere einfache Grafiken oder Diagramme lassen sich so platzsparend speichern. Indizierte Farben finden sowohl bei diversen Grafikformaten als auch bei alten Grafikstandards, etwa EGA und VGA, Verwendung.

Inhaltsverzeichnis

Funktionsweise

In der Farbtabelle werden alle im Bild verwendeten Farben aufgelistet, wobei jeder Eintrag einen Farbwert enthält. Die Farbtabelle wird von den Pixeldaten getrennt gespeichert. Der Speicherplatz, den der Index eines Pixels benötigt, wird in Bit pro Pixel (bpp) angegeben und ist ein Maß für die so genannte Farbtiefe des Bildes. Die Farbtiefe begrenzt die maximale Anzahl der verwendbaren Tabelleneinträge; bei einem Bild mit durch n bpp indizierte Farben ergibt sich eine maximale Farbtabellengröße von 2n Einträgen.

In der Praxis werden nur maximal 8 bpp verwendet, entsprechend einer Tabellengröße von 256 Farben. Theoretisch sind auch Farbtabellen mit mehr als 8 bpp möglich. Allerdings nimmt die Speicherersparnis mit zunehmender Größe der Farbentabelle ab; ab einer bestimmten Größe wird der Speicherbedarf insgesamt sogar größer als mit direkt angegebenen Farben.

Die Anzahl der Tabelleneinträge ist unabhängig vom Format, mit dem die Farbwerte letztlich in den Tabelleneinträgen repräsentiert werden; für diese sind beliebige Farbräume denkbar. In der Praxis werden entweder 8-Bit-Graustufenwerte oder je 8 Bit für Rot, Grün und Blau (RGB), eventuell zusätzlich noch ein Alpha-Wert zur Angabe der Durchsichtigkeit, verwendet. Gelegentlich wird mit dem Begriff „Farbtiefe“ auch der von einem Farbwert eingenommene Speicherplatz bezeichnet; diese Bedeutung ist von der Farbtiefe im Sinne des für einen Farbindex verwendeten Speicherplatzes zu unterscheiden.

Oft wird die Farbanzahl einer Rastergrafik künstlich auf 256 oder weniger Farben verringert, um vom geringeren Speicheraufwand der indizierten Farben zu profitieren. Diese Methode, bei der die für das Bild repräsentativsten Farben ermittelt werden müssen, nennt man Farbreduktion.

Beispiel

Bild:Indexed palette-H.png

Das obige Schema stellt die Funktionsweise der Farbtabelle am Beispiel eines 5×5 Pixel großen Bildes mit 2 bpp, entsprechend 22=4 Tabelleneinträgen, dar. Jedes Pixel enthält einen Index auf die Farbtabelle, die den jeweiligen Farbwert definiert. Auf der rechten Seite ist das gleiche Bild ohne Farbtabelle zu sehen; die Farbwerte sind hier direkt in den Pixeln gespeichert.

Wenn man davon ausgeht, dass für dieses Bild eine Farbe durch drei RGB-Werte zu je 8 Bit repräsentiert wird,

  • so ergibt sich für das Bild ohne Farbtabelle eine Größe der Bilddaten von (5×5)×(3×8) = 600 Bit.
  • Beim Bild mit Farbtabelle belegt letztere 4×(3×8) = 96 Bit; die Größe der Bilddaten ergibt sich zu (5×5)×2 = 50 Bit. Das gesamte Bild ist in diesem Fall also nur 96+50 = 146 Bit groß.

Color Lookup Table

Als Color Lookup Table (CLUT, siehe auch Lookup-Tabelle) bezeichnet man den Teil der Grafik-Hardware, der die indizierten Farben des Framebuffers in normale Farbwerte umwandelt, um sie auf einem Bildschirm ausgeben zu können. Die CLUT ist somit eine mittels Hardware realisierte Farbtabelle. Bei den ersten Grafikkarten war die CLUT noch ROM-artig fest verdrahtet, heute handelt es sich dabei normalerweise um einen schnellen Speicher oder Registersatz in der Grafikhardware, der die aktuell verwendete Farbtabelle enthält.

Die meisten Grafikformate, die das Format einer gespeicherten Grafikdatei definieren, unterstützen verschiedene Farbtiefen, darunter sowohl solche ohne Palette als auch solche mit Palette. In letzteren gibt es dann einen eigenen Abschnitt für die Farbtabelle, der dann gelegentlich auch „(Color) Look-Up Table“ oder ähnlich genannt wird.

Farbtabellenrotation

Beispiel einer Farbtabellen-Animation, die das Auftreffen des Sonnenwindes auf einem Planeten darstellt. Der Bewegungseffekt wird durch zyklische Umbelegung der Paletteneinträge erzielt und ist hier mittels einer animierten GIF-Datei nachgeahmt.

Da die aktuelle Farbtabelle einer Hardware-CLUT verändert werden kann, sind durch bewegte Farbverläufe sehr schnelle und einfache Grafikeffekte möglich (Farbtabellenrotation, Color Cycling). Dabei wird typischerweise ein Unterbereich der Farbpalette mit einer konstanten Wiederholrate zyklisch umbelegt, d. h. „durchgerollt“. Dadurch lassen sich insbesondere Effekte wie etwa bewegtes Wasser erzielen. Der Aufwand für den Prozessor ist dabei sehr gering, da er von einer zur nächsten Phase nur die Inhalte von wenigen Farbregistern in der Grafikhardware umbelegen muss und auf den viel größeren eigentlichen Grafikspeicher überhaupt nicht zuzugreifen braucht. Entsprechend war dieser Ansatz besonders in der Frühzeit der Heimcomputer verbreitet, als noch keine so große Rechenleistung zur Verfügung stand.

Die Farbtabellenrotation war bereits in SuperPaint, einem Mitte der 1970er Jahre entwickelten Malprogramm, möglich. Nur von Amiga-IFF-Grafikdateien ist bekannt, dass sie auch für die Speicherung von Farbtabellenrotations-Effekten ausgelegt waren; der dynamisch wechselnde Bereich der Palette sowie die Zeitparameter wurden in einem eigenen Daten-Chunk der Datei untergebracht. Die Startbildschirme von Microsoft Windows 95 und 98 verwendeten ebenfalls Farbtabellenrotation. Hier war das Bild in einer Datei im BMP-Format abgelegt; ein Eintrag im Header bestimmte die Anzahl der zu rotierenden Paletteneinträge.

Auf heute üblichen Rechnern werden derartige Möglichkeiten aber kaum genutzt, da moderne Grafikkarten im Echtfarbenmodus, seltener noch im High-Color-Modus arbeiten und schnell genug sind, die gleichen Effekte auch in dieser Darstellungsart zu erzielen.

Literatur

  • James D. Foley u. a.: Computer graphics: principles and practice. S. 169–170. Addison-Wesley, Reading 1995, ISBN 0-201-84840-6
  • David F. Rogers: Procedural elements for computer graphics. S. 8–10. WCB/McGraw-Hill, Boston 1998, ISBN 0-07-053548-5
  • Richard Shoup: Color table animation. ACM SIGGRAPH Computer Graphics 13, 2 (August 1979): 8–13, ISSN 0097-8930

Wikimedia Foundation.

Игры ⚽ Поможем написать реферат

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Colour look-up table — A colour look up table (CLUT) is a mechanism used to transform a range of input colours into another range of colours. It can be a hardware device built into an imaging system or a software function built into an image processing application. The …   Wikipedia

  • Lookup table — In computer science, a lookup table is a data structure, usually an array or associative array, often used to replace a runtime computation with a simpler array indexing operation. The savings in terms of processing time can be significant, since …   Wikipedia

  • Don't Look Now — This article is about the 1973 film. For the short story collection by Daphne du Maurier, see Not After Midnight. For other uses, see Don t Look Now (disambiguation). Don t Look Now Original film poster …   Wikipedia

  • Don't Look Any Further — Single by Dennis Edwards featuring Siedah Garrett from the album Don t Look Any Further …   Wikipedia

  • QuickDraw — also refers to equipment used for rock climbing. QuickDraw is the 2D graphics library and associated Application Programming Interface (API) which is a core part of the classic Apple Macintosh operating system. It was initially written by Bill… …   Wikipedia

  • Raster bar — Rasterbar redirects here. For the computing library libtorrent from Rasterbar see libtorrent (Rasterbar). Demoscene Concepts Demo Intro Demoparty Effects Demogroup Com …   Wikipedia

  • CLUT — abbr. Colour Look Up Table …   Dictionary of English abbreviation

  • Farbmodell — Alle Farben eines Farbmodells, die durch eine farbgebende Methode tatsächlich ausgegeben werden können, werden durch einen Farbraum repräsentiert. Jede „farbgebende Methode“ hat ihren eigenen Farbraum. Eine Darstellung aller Farborte eines… …   Deutsch Wikipedia

  • Farbraumsystem — Farbmodell Alle Farben eines Farbmodells, die durch eine farbgebende Methode tatsächlich ausgegeben werden können, werden durch einen Farbraum repräsentiert. Jede „farbgebende Methode“ hat ihren eigenen Farbraum. Eine Darstellung aller Farborte… …   Deutsch Wikipedia

  • Farbraum — Farbmodell, hier nach HSL Alle Farben eines Farbmodells, die durch eine farbgebende Methode tatsächlich ausgegeben werden können, werden dreidimensional als Farbraum dargestellt. Jede farbgebende Methode hat ihren eigenen Farbraum. Eine… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”