# Farbtiefe (Computergrafik)

Die Farbtiefe bestimmt eine wesentliche Eigenschaft von Raster- und Vektorgrafiken: die Differenzierung aller Helligkeits- und Farbwerte.

## Grundlagen

Die Farb- und Helligkeitswerte von digitalen Bildern werden innerhalb der kleinsten Einheit jedes Bildes gespeichert: bei Rastergrafiken innerhalb jedes Pixels, bei Vektorgrafiken innerhalb jedes farbdefinierten Vektors. Jede Bildeinheit enthält eine festgelegte Anzahl der maximal möglichen Abstufungen (beispielsweise beim durchschnittlichen Digitalfoto: 256 Abstufungen pro Farbkanal eines Pixels) sowie die konkrete Farb- und Helligkeitsinformation (auf der Skala dieser festgelegten Abstufungen).
Die Anzahl der möglichen Abstufungen ist nicht zwangsläufig gleichbedeutend mit der Anzahl der möglichen Farben. Hier wird unterschieden nach Anzahl der Farbkanäle oder nach Umfang der Farbtabelle. Erst der Zusammenhang aus der Art der Farbdefinition (Farbkanäle und ihre Anzahl, Tabellen, …) sowie der Angabe der Abstufungen (in Bit) ergibt die maximal mögliche Farbtiefe.

## Farbausdifferenzierung

Die maximal mögliche Menge an (Farb-)Abstufungen wird in Bits angegeben und benennt damit die Farbtiefe eines Bildes. Diese Abstufungen stellen eine Skala dar, auf der die eigentliche Farbinformation gespeichert wird. Die Farbtiefe ist also die mathematische Basis der tatsächlichen Farbinformation. In der Praxis besitzt ein Bild niemals die Menge an Farben, die der Umfang dieser Skala (Farbtiefe) zur Verfügung stellt.
Eine Farbtiefe von 1 Bit würde bedeuten, dass in jeweils einem Farbkanal (am Computer-Bildschirm meist rot, grün und blau) genau zwei Zustände möglich wären. Als Beispiel wären das für den Farbkanal rot dann schwarz und rot. Bei einer Farbtiefe von 2 Bit wären 4 Zustände möglich, also beispielsweise schwarz, dunkelrot, mittleres Rot und hellrot. Bei der gebräuchlichen Farbtiefe von 8 Bit sind 2$^8$ = 256 Zustände und damit ebenso viele einzelne Rot-Töne möglich.
Am gebräuchlichsten ist der RGB-Farbraum mit 8 Bit pro Kanal, entsprechend (2$^8$)$^3$ = 16.777.216 (ca. 16,8 Millionen) theoretisch möglichen Farben. Bei 16 Bit (pro Kanal) resultieren daraus 281.474.976.710.656 (281 Billionen) Farbmöglichkeiten.

### Farbtabellen

Bilder mit indizierten Farben stellen eine Sonderform dar: bei ihnen enthält die Datenstruktur eines Pixels nicht die Farben selbst, sondern einen Index auf einen Eintrag der Farbtabelle. Statt von einer Farbtabelle spricht man dabei auch oft von einer Farbpalette. Die Farbtiefe gibt also die maximale Anzahl der verwendbaren Einträge der Farbtabelle an. Praktisch werden Farbtabellen mit 1 bis 8 bpp (= bit pro Pixel) verwendet, entsprechend 2$^1$ = 2 bis 2$^8$ = 256 gleichzeitig kodierten oder darstellbaren Farben. 1 bpp ist für Bilder, die nur Schwarz und Weiß enthalten, gebräuchlich.
Beispiele:
* Das GIF-Format erlaubt 1 bis 8 bpp.
* PNGs mit Farbtabelle erlauben 1, 2, 4 oder 8 bpp.
* Der EGA-Grafikstandard erlaubt 4 bpp.

## Anwendung

Digitalfotos besitzen üblicherweise eine Farbtiefe von 24 Bit. In der Praxis gibt es natürlich kein Foto, das wirklich alle Einzelfarben besitzt – der Durchschnitt liegt deutlich darunter. Der Vorteil der 24-Bit-Farbtiefe kommt dennoch bei fast jedem Foto deutlich zum Tragen, wie man anhand eines Vergleichs mit einer 16-Bit-Version desselben Fotos feststellen kann. Das Foto mit 16-Bit-Farbtiefe zeigt erkennbare, oft sehr störende Treppchenmuster bei Farbübergängen, die bei 24-Bit-Farbtiefe nicht mehr sichtbar sind. Der Vorteil der höheren Farbtiefe liegt also weniger in der Maximalzahl der möglichen Farben, sondern vielmehr in der größeren Farbdifferenzierung.
Die meisten Computermonitore können nur 8 Bit pro Kanal darstellen. In der professionellen Fotografie und für medizinische Anwendungen werden auch 16 Bit pro Kanal benötigt. Extreme Helligkeitsbereiche (tiefschwarzer Schatten und gleißendes Licht) können mit 8 Bit nicht gespeichert werden. Hierzu ist eine drastische Reduzierung des Kontrastumfangs und der Kontrastdifferenzierung nötig. Um diese Veränderung des Dynamikumfangs optisch ansprechend zu gestalten, finden High Dynamic Range Images (Hochkontrastbilder) Anwendung, die per Tone-Mapping-Verfahren zur Darstellung auf 8 Bit heruntergerechnet werden. Dieses Verfahren ist eine spezielle Form der Bildoptimierung.
Mit der ITU-R-Empfehlung BT.2020 (Rec.2020) für Ultra High Definition Television (UHDTV) mit bis zu 8K Bildauflösung wurde eine Farbtiefe von 10 oder 12 Bit pro Kanal festgelegt, mithin eine Anwendung 30 oder 36 Bit am Bildschirm. In der HDMI Spezifikation 1.3 sind diese 30 und 36 Bit enthalten, sowie zusätzlich 48 Bit. Bei Displayport sind 30 Bit bis 5K Bildauflösung ab Version 1.3 möglich. Die Anwendung des Farbraums von Rec.2020 für High Dynamic Range Video ist bei HDMI 2.0 und Displayport 1.4 gegeben. Dolby Vision führte 10 oder 12 Bit pro Kanal ein (im Formatkrieg mit HDR10+), und HDMI Version 2.1 kennt eine Übertragung mit 14 Bit RGB, das diesen erweiterten Farbraum unterstützt.
Folgende Farbtiefen wurden bisher verwendet :
| Farbtiefe | Name/Verwendung | Kodierung | Anzahl darstellbarer Farben |
| 1 Bit | Monochrom | Keine eindeutige Zuordnung | 2$^1$ = 2 |
| 4 Bit | Verwendet bei EGA-Grafikkarten | Keine eindeutige Zuordnung | 2$^4$ = 16 |
| 6 Bit | Verwendet von den Amiga-Computern für HAM- und Halfbright-Modus | Keine eindeutige Zuordnung | 2$^6$ = 64 (durch speziellen HAM-Mechanismus aber bis zu 4096) |
| 8 Bit | Verwendet von den MSX2-Computern | Rot: 3 Bit Grün: 3 Bit Blau: 2 Bit | 2$^8$ = 256 (durch speziellen HAM8-Mechanismus beim Amiga aber bis zu ca. 2 Millionen) |
| 12 Bit | Verwendet in mehreren NeXT-Workstations | Rot: 4 Bit Grün: 4 Bit Blau: 4 Bit | 2$^{12}$ = 4096 |
| 15 Bit | Real Color | Rot: 5 Bit Grün: 5 Bit Blau: 5 Bit | 2$^{15}$ = 32.768 |
| 16 Bit | High Color | Rot: 5 Bit Grün: 6 Bit Blau: 5 Bit | 2$^{16}$ = 65.536 |
| 24 Bit | True Color | Je ein Byte (8 Bit) für R, G und B | 2$^{24}$ = 16.777.216 |
| 24 Bit Farbe + 8 Bit Alpha | True Color mit 8-Bit-Alphakanal | Je ein Byte (8 Bit) für R, G und B und α | 2$^{24}$ = 16.777.216 |
| 30 Bit | Deep Color, HDR Video, z. B. interne Farbtiefe bei Flachbettscannern | Je 10 Bit für Y, U und V | 2$^{30}$ = 1.073.741.824 |
| 36 Bit | Deep Color, HDR10+, Dolby Vision, beispielsweise hochwertige Fotografie | Je 12 Bit für R, G und B | 2$^{36}$ = 68.719.476.736 |
| 42 Bit | Deep Color, beispielsweise hochwertige Flachbildfernseher | Je 14 Bit für R, G und B | 2$^{42}$ = 4.398.045.511.104 |
| 48 Bit | Deep Color, beispielsweise hochwertige Flachbettscanner | Je 16 Bit für R, G und B | 2$^{48}$ = 281.474.976.710.656 |
Im Scan-, Kino-, TV- und Druckbereich kommen auch weitere Farbtiefen mit 30, 32, 36, 40 und 48 Bit häufig vor, z. T. auch nur in der internen Verarbeitung (d. h. beispielsweise arbeitet die Hardware eines Scanners intern mit 30 Bit, um eine Vorlage einzulesen, der Scanner gibt danach aber an den Computer das fertig gescannte Bild nur mit 24 Bit Farbtiefe aus).