LU03d - Bildformate
Einleitung
Die Dateiformate für Bilder gehören zu den komplexesten Formaten in der Informatik. Ohne ein Studium der Physik und Mathematik ist es teilweise fast unmöglich, die Regeln für ein spezifisches Bildformat zu verstehen. Als Informatiker benötigen Sie ein gutes Grundverständnis für die unterschiedlichen Dateiformate.
Nachdem wir die wichtigsten Begriffe definiert haben, werden wir einige Bildformate kurz anschauen. Wir wollen aber nicht ins Detail gehen, sondern uns mit den grundlegenden Eigenschaften begnügen.
Pixel
Unser Bildschirm zeigt jedes Bild als eine Menge von Punkten (Pixel) an.
Waren diese Bildpunkte früher noch sehr grob, so sind sie heute kaum noch zu erkennen. Die Pixel stellen die Grundlage aller Bilder dar.
Farbtiefe
Die Farbtiefe bestimmt die Anzahl unterschiedlicher Farben in einem Bild. Angegeben wird die Farbtiefe in Bits pro Pixel.
Eine Farbtiefe von 16 Bit bedeutet:
- Für jeden Bildpunkt (Pixel) werden 16 Bit (2 Byte) an Farbinformation gespeichert.
Einige übliche Farbtiefen und die Anzahl der Farben:
Farbtiefe | Anzahl Farben | Bemerkung |
---|---|---|
1 Bit | 2 | Schwarz und Weiss |
8 Bit | 256 Farben | |
24 Bit | 16'777'216 Farben | Entspricht der Farbtiefe bei Webseiten |
Farbtabelle
Anstatt die Farbe jedes Pixels zu speichern, werden die am häufigsten verwendeten Farben in einer Tabelle gespeichert.
Die Grafik zeigt auf der rechten Seite die Farbtabelle mit
- Index
- Hexadezimale Darstellung der RGB-Codierung
- Entsprechende Farbe
Für die einzelnen Pixel (linke Seite) wird dann der Schlüssel der jeweiligen Farbe in der Farbtabelle gespeichert. Da der Index in der Farbtabelle viel weniger Speicher benötigt, wird das Bild wesentlich kleiner.
Verlustbehaftet / Verlustfrei
Ein verlustfreies Bildformat speichert alle Farbinformationen des Bildes. Eine solche Datei benötigt sehr viel Speicherplatz, wie ein Rechenbeispiel zeigt:
- Auflösung: 1024 * 1024 Pixel (entspricht 1 Megapixel bei Kameras)
- Farbtiefe: 32 Bit
- Speicherbedarf = 1024 * 1024 * 32 = 33'554'432 Bit = 4 MByte
Die verlustbehaftete Speicherung basiert darauf, das bestimmte Bildinformationen gar nicht gespeichert werden. Dabei nutzt man die Tatsache aus, dass unser Auge viele Details nicht sieht, bzw. unser Hirn die fehlenden Informationen einfach ergänzt. Vor allem im Internet werden die meisten Bilder in verlustbehafteten Formaten gespeichert (z.B. .jpg).
JPEG File Interchange Format (.jpg, .jpeg)
Das JFIF-Format ist das weitesten verbreitete Format im World Wide Web; Wieso haben Sie dann noch nie davon gehört? Meistens sprechen wir von JPEG1)-Dateien, wenn wir eine Datei im JFIF-Format meinen.
Das JFIF-Format ist ein verlustbehaftetes Format mit dem Ziel die Grösse der Bilddateien zu reduzieren (Komprimierung). Dabei macht es sich bestimmte Eigenschaften unseres Auges zu Nutze. Es werden bestimmte Details entfernt, die unser Auge sowieso nicht oder kaum wahrnehmen kann.
Zum Beispiel können wir unterschiedliche Helligkeit besser wahrnehmen als Farbunterschiede. Können Sie sagen, welches dieser Wörter eine andere Farbe hat?
Lösung
„Wörter“ hat 1/256tel weniger Grün und dafür 1/256tel mehr Blau als die anderen Wörter.
Um die Datenmenge eines Bildes zu reduzieren, werden im JFIF-Format unter anderem folgende Schritte durchgeführt:
Farbunterschiede reduzieren
Anstatt alle existierenden Farbschattierungen zu speichern, wird die Farbinformation halbiert. Es wird also nur jeder zweite Farbübergang unterschieden. Die Farbübergänge dazwischen gehen verloren; man spricht von einer verlustbehafteten Komprimierung.
Bei einem Foto werden Sie diesen Verlust nicht bemerken. Nur bei Grafiken mit grossen Farbunterschieden kann dies auffallen.
Komprimierung
Die Bildinformationen werden mittels Entropiecodierung komprimiert. Dabei wird eine Farbtabelle (Palette) aller Farben erstellt. Für die einzelnen Bildpunkte wird anstelle der Farbinformation nur noch ein Verweis auf die Farbtabelle gespeichert.
Portable Network Graphics (png)
Das PNG-Format wurde als Ersatz für das ältere GIF-Format entwickelt. Es ist das im Internet am häufigsten verwendete verlustfreie Grafikformat. Die Bildinformationen werden mittels Deflate komprimiert. Dieses verlustfreie Kompressionsverfahren wurde für ZIP entwickelt.