====== LU03d - Bildformate ====== //[[http://www.pctipp.ch/tipps-tricks/kummerkasten/multimedia/artikel/gif-png-jpg-welches-dateiformat-wofuer-83483/|PCtipp.ch - Welches Dateiformat wofür?]]// ===== 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. {{http://1.bp.blogspot.com/-9PCHHP-gj70/UCQF2gBcDhI/AAAAAAAABJk/bqLeufzWpPE/s400/mario+template.PNG}} 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. {{https://docs.microsoft.com/de-de/dotnet/framework/winforms/advanced/media/aboutgdip03-art01.gif}} 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 JPEG((Streng genommen ist JPEG kein Dateiformat, sondern eine Norm, welche den Komprimierungsvorgang beschreibt))-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 [[/modul/m114/learningunits/lu04/komprimierung#entropiecodierung|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 [[http://de.wikipedia.org/wiki/Deflate|Deflate]] komprimiert. Dieses verlustfreie Kompressionsverfahren wurde für ZIP entwickelt. ---- {{tag>m114-A0G}} [[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Marcel Suter