Dateiformate Rastergrafik
PU separatorWechsel zu LOD1.Wechsel zu LOD3
Einleitung
Bilder kommen im Computerumfeld in verschiedenster Form vor: Als Fotos (von der Digitalkamera), als Icons in Programmen, im Internet oder als selbst erstellte Grafik. An diese Bilder werden je nach Einsatzbereich die unterschiedlichsten Anforderungen gestellt. Um diesen gerecht zu werden, gibt es eine Fülle von Dateiformaten. Die meisten Dateiformate haben spezielle Features (z.B. Transparenz, Animation, ...) und gewisse Eigenschaften (z.B. verlustfreie Kompression). Der folgende Text liefert einen Überblick über gängige Dateiformate und deren Spezifika.
PU separatorWechsel zu LOD1.Wechsel zu LOD3
Bitmap (BMP)
BMP steht für BitMaP und ist eines der einfachsten Formate für Bilddaten, es ist in der Windows-Welt weit verbreitet. Die dazugehörige Dateiendung ist .bmp. Es gibt auch noch ein IBM OS/2 Bitmap Format, das an dieser Stelle nicht behandelt wird. Weitere Informationen über dieses Format findet man in [s] . Dem Windows Bitmap Format liegt das RGB-Modell zugrunde. Es ist aber auch die Codierung von monochromen und von Graustufenbildern möglich. Eine Bitmap-Datei besteht aus einem Headerbereich, der Angaben über Größe, Farbtiefe, Farbtabelle und Kompressionsart beinhaltet und dem Datenbereich. Der Datenbereich enthält die Farbwerte für jeden Pixel. Jede Zeile wird mittels Null-Werten auf einen durch 32 teilbaren Wert aufgefüllt. Bei Farbtiefen von 1, 4 oder 8-Bit wird eine Farbpalette verwendet. Jeder Pixel speichert dann einen Index auf die Farbtabelle. Im Falle einer Farbtiefe von 16-, 24- und 32-Bit, wird keine Palette verwendet. Jeder Pixelwert entspricht direkt dem Farbwert. Der Run-Length-Encoding Algorithmuswird für Bilder mit einer Farbtiefe von 4 oder 8 Bit angeboten. BMP verwendet ein Zwei-Wert RLE-Schema: Der erste Wert gibt die Lauflänge an, der zweite enthält die Farbinformation für ebendiese Pixel. Lauflängen bis zu 256 identische Pixel können so mit nur zwei Bytes codiert werden. Weitere Details zur BMP-Codierung findet man in [s] und [s] . BMP ist das Standardspeicherformat in der Windowsumgebung. Die einfache RLE Komprimierung ist für komplexe Bilder eher ineffizient.
PU separatorWechsel zu LOD1.Wechsel zu LOD3
Graphics Interchange Format (GIF)
GIF steht für "Graphics Interchange Format" und wurde im Juni 1987 vom Online-Dienst CompuServe eingeführt und 1989 um weitere Fähigkeiten ergänzt. Ursprünglich wurde es zur bandbreitensparenden Bildübertragung im Rahmen des Online-Dienstes von CompuServe entwickelt. CompuServe veröffentlichte später auch den Aufbau des Dateiformats und regte damit viele Programmierer an, sich mit diesem Format zu beschäftigen und Software dafür zu schreiben. Zur Bildkomprimierung wird der LZW-Kompressionsalgorithmus (eine Art des Ziv-Lempel-Algorithmus) genutzt Als GIF entwickelt wurde, erkannte man nicht, dass dieser Algorithmus bereits geschützt war. Deshalb musste CompuServe 1995 eine Lizenzvereinbarung mit der Firma Unisys treffen, welche die Rechte für den Algorithmus innehatte. Seither müssen Entwickler von Software, die GIF-Dateien erzeugt oder darstellt, Lizenzgebühren zahlen.
GIF ist ein Bitmap Grafiktyp der maximal 256 Farben pro Bild beinhalten kann, was einer Farbtiefe von 8 Bit entspricht. Er nutzt eine verlustlose Kompression, um die Dateigröße zu verringern. Qualitätsverluste können in GIF daher nicht durch die Kompression, sondern eher durch die maximale Palette von 256 verschiedenen Farben pro Bild auftreten.
Ein spezielles GIF Format ist das interlaced GIF Format. Es wird verwendet, um während des Ladens einer GIF Grafik aus dem Netz eine Grobansicht des Bilds darzustellen, die Pixelzeile für Pixelzeile verfeinert wird, bis das Bild vollständig übertragen wurde. Im Dateiformat kann auch Text im ASCII-Code enthalten sein, in dem z.B. Copyright-Informationen vermerkt sind.
GIF-Bilder müssen nicht rechteckig erscheinen, sondern können jede Form annehmen. Dabei bleibt das Bild rechteckig; beliebige Teile lassen sich aber unsichtbar machen, indem man die "transparente Farbe" verwendet. Dies wird im Netz als beliebter Effekt für Schriftzüge und Firmenzeichen genutzt. Transparenz ist seit der GIF-Spezifikation von 1989 vorgesehen. Ein Nachteil der Transparenz im GIF Format ist jedoch, dass ohne Tricks nur harte, pixelige Übergänge möglich sind, da es nur eine Transparenzstufe gibt (vergleiche Alphakanal 256 Transparenzlevels).
Animierte GIF Grafiken begegnen einem häufig als rotierende Erdkugeln und flatternde Werbefahnen oder ähnlichem im Netz (siehe Abbildung). Bereits in der ursprünglichen GIF Formatdefinition war Platz für mehr als ein Bild vorgesehen, die 1989 veröffentlichte Fassung bot dann auch Raum für wichtige Informationen zum Ablauf-Timing. Für Videoclips oder größere Trickfilme ist das Format jedoch ungeeignet aufgrund der dabei anfallenden Dateigrössen. Kleine Animationen mit einer Handvoll Frames lassen sich aber gut realisieren. Dabei wird ausgenutzt, dass nicht immer das ganze Bild neu gezeichnet werden muss, sondern nur der rechteckige Ausschnitt, der sich von einem Bild zum nächsten ändert. GIF zeichnet sich durch seine verlustfreie, aber trotzdem recht effiziente Kompression aus. Es eignet sich gut für Grafiken, kleine Animation und Text, aber weniger für Fotos und fotoähnliche Bilder [s] [s] .
Abbildung Animiertes GIF
Animiertes GIF
PU separatorWechsel zu LOD1.Wechsel zu LOD3
Tagged Image File Format (TIFF)
Das TIFF-Grafikformat (TIFF=Tagged Image File Format) wurde von der Firma Aldus schon 1986 in Zusammenarbeit mit anderen Herstellern als Standard-Dateiformat in erster Linie für Desktop Publishing und damit verbundene Anwendungen entwickelt. Statt der Unterstützung zahlreicher Formate für jeden Scannerhersteller, jeder Desktop-Publishing-Applikation und jedes Zeichenprogrammes sollten die Hardware- und Software-Hersteller sich nur noch um ein Dateiformat kümmern müssen. Ziel war es, durch das Bereitstellen eines Standard-Formates zur Digitalisierung und Bearbeitung von Bildern den Austausch von Bild-Daten zwischen den verschiedenen Anwendungen zu erleichtern.
TIFF ist für die Bearbeitung verschiedener Arten von Bildern, wie Graustufen- und Farbbilder auch mit verschiedenen Auflösungen, ausgelegt. Das Format erlaubt es auch, mehrere Versionen desselben Bildes in einer Datei abzulegen, so dass man z.B. ein Bild in verschiedenen Auflösungen in einer Datei speichern kann. Die Struktur des TIFF-Formats ist so angelegt, dass zukünftige Erweiterungen leicht hinzugefügt werden können. Wie der Name sagt, besteht das Format aus so genannten Tags (Tag = Etikett, vergleiche HTML). In jedem Tag wird eine bestimmte Information abgespeichert, beispielsweise die Art der Komprimierung, der Farbmodus des Bildes (Graustufen, RGB, CMYK, ... ) oder die Auflösung. Diese Tags müssen zwingend vorhanden sein. Darüber hinaus gibt es noch optionale Tags. Bestehende Applikationen müssen dann nicht geändert werden, sofern sie von den Neuerungen keinen Gebrauch machen wollen. Sie ignorieren einfach die ihnen unbekannten Kennungen und verwenden nur die Informationen aus der TIFF-Datei, die sie interpretieren können. Ein weiterer Vorteil des TIFF-Formats ist dessen Maschinenunabhängigkeit. Es ist weder abhängig von den Prozessoren einer Firma noch von einem bestimmten Betriebssystem. Normale TIFFs sind ungepackt, darüber hinaus bietet Papillon die verlustfreien Komprimierungsmethoden PackBits (RLE) und LZW an. Wenn man Farbbilder in optimaler Qualität haben oder mit professionellen DTP-Programmen weiterverarbeiten möchte, ist man mit TIFF immer auf der sicheren Seite. Die verlustfreie Kompression geht natürlich zu Lasten der Dateigröße, geht es um kleine Dateigrößen, verwendet man besser JPEG [s] [s] .
PU separatorWechsel zu LOD1.Wechsel zu LOD3
JPEG
JPEG wurde 1986 von der "Joint Photographic Experts Group" (Begriffhttp://www.jpeg.org/) entwickelt und ist ein Kompressionsverfahren für Graustufen- und Echtfarbbilder. Es ist auch als JPEG File Interchange Format (JFIF) bekannt. Die Joint Photographic Experts Group verfolgte das Ziel, eine Bildkompression mit akzeptabler Komplexität zu schaffen. Sie sollte unabhängig von der Bildbeschaffenheit sein und gleichzeitig vom Benutzer beeinflussbar.
Obwohl es nicht speziell für die online Nutzung entworfen wurde, ist JPEG heute ein Standardformat im WWW. Ein spezielles Format, progressive JPEG, überträgt das Bild vorerst mit einer sehr niedrigen Auflösung, um einem Netzbenutzer eine schnelle "Vorschau" auf das eigentliche Bild zu ermöglichen. Dadurch sieht der Anwender das Bild bereits während der Übertragung in voller Größe.
JPEG ist ein Bitmap Grafiktyp, der entweder 24 Bit Farbtiefe (16,7 Mio. Farben) bei Farbbildern oder 8 Bit (256 Farben) bei Graustufenbildern beinhalten kann. Die Kompressionsrate ist dabei mit Werten frei einstellbar. JPEG arbeitet verlustbehaftet, was bedeutet, dass mehrfaches Bearbeiten und Abspeichern zu Qualitätsverlust führt. Kompression ohne Verluste sind möglich und schaffen im Mittel eine Reduktion der Dateigröße auf 50 %. Für die Kompression werden Vorhersagealgorithmen verwendet. Diese Variante ist durch den vergleichsweise hohen Platzverbrauch selten sinnvoll. Mit der verlustbehafteten Kompression können je nach Bildbeschaffenheit Kompressionsraten von 4:1 (mit bloßem Auge kein Qualitätsunterschied erkennbar) bis 40:1 ("Klötzchengrafik") erreicht werden. Bei sehr starker Kompression entstehen jedoch blockige JPEG-Bildfehler (sog. Artefakte), die man vermeiden sollte. Das JPEG-Verfahren ist ein Kompressions-Algorithmus für Datenströme, der auf dem Algorithmus DCT (Diskrete Cosinus Transformation]) in Verbindung mit der Huffman-Kodierung basiert. Die Details zur JPEG Komprimierung findet man in Modul 4 Multimedia Kompression. Das JPEG-Grafikformat hat gegenüber dem GIF-Format den Vorteil, dass es pro Bild bis zu 16,7 Millionen Farben speichern kann. Es arbeitet deshalb nicht wie das GIF-Format mit Farbpaletten bestimmter Farben, sondern mit dem gesamten Farbspektrum. Außerdem ist es bei Fotos, fotoähnlichen Bildern und Farbverläufen effizienter in Komprimierung als GIF.
Transparente Bereiche, sowie Animation sieht JPEG-JFIF nicht vor. JPEG zeigt seine Stärke bei komplexen Bildern, die effizient gespeichert werden sollen [s] [s] [s] .
PU separatorWechsel zu LOD1.Wechsel zu LOD3
PNG Format
1995 entstand in internationaler Zusammenarbeit das "Portable Network Graphics" Format. Es wurde definiert, um das GIF-Format von CompuServe zu ersetzten. Der Grund liegt darin, die Probleme der Lizenzgebühren zu umgehen. Auch PNG ist ein Bitmap Grafikformat. Es unterstützt alle Farbtiefen zwischen 1 und 48 Bit, dabei sind sowohl Echtfarbdateien als auch die für GIF typischen Farbpaletten möglich. Die Bandbreite der mit PNG sinnvoll speicherbaren Bilder umfasst zumindest theoretisch das gesamte Spektrum von kleinen Icons bis zu Fotomotiven. Im Gegensatz zu JPEG hat PNG den Vorteil der verlustlosen Kompression, die auch bei Echtfarbbildern angewendet werden kann. PNG übertrifft das GIF-Format in punkto Kompression in der Regel um etwa 10% und erlaubt - anders als GIF und sofern im Kompressor vorgesehen - auch von links nach rechts abgestufte Farbverläufe gut zu komprimieren.
Neben einer simplen Transparenzfarbe kann auch ein echter Alpha-Kanal in die Datei eingefügt werden. Durch diesen lässt sich der Grad der Transparenz für jedes Bildpixel stufenlos einstellen (16 Bit). Wie GIF und JPEG verfügt auch PNG über einen Vorschaumodus. Dabei startet die Übertragung mit einem blockigen Bild, welches dann abwechselnd entlang der Reihen und der Zeilen verfeinert wird. PNG besitzt mehrere Arten der Fehlererkennung und Fehlerkorrektur, die helfen, Übertragungsfehler zu erkennen, z.B. eine 8 Bit lange Signatur. Es sind auch Stichworte als Kommentar in PNG-Dateien möglich, dadurch können Bilder direkt von Suchmaschinen gefunden werden. Größter Nachteil des PNG Formats ist, dass keine Animationen möglich sind. Daher ist PNG auch kein vollständiger Ersatz für das GIF Format [s] [s] .
PU separatorWechsel zu LOD1.Wechsel zu LOD3
Ausblick Vektor Formate
Bis jetzt wurde nur die Rastergrafik beleuchtet. Hier wird die Grafik durch einzelne Bildpunkte modelliert. Diese Grafikart hat einige Vorteile: Die Manipulation der Pixel ist sehr einfach und die Bilder können für ein Ausgabegerät optimal erstellt werden, sofern diese die Daten pixelweise ausgibt. Nun gibt es aber auch Nachteile: Glatte Kurven und Linen lassen sich mit der Rastergrafik nur annähern. Wird das Bild skaliert, so verschlechtert sich die Qualität vor allem bei der Vergrößerung. Das Bild verliert an Detailgenauigkeit, es entstehen Blöcke und der Bildeindruck ist bedeutend schlechter. Bei Vektorgrafiken, auch objektorientierte Grafiken genannt, ist dem nicht so. Sie bestehen aus mathematisch exakt definierten Kurven und Linien, die als Vektoren bezeichnet werden. Um beispielsweise eine Linie zu beschreiben sind drei Angaben notwendig:
  • die Koordinaten des Ausgangspunktes (Ursprung)
  • die Koordinaten des Endpunktes (Vektorspitze) und
  • die Linienstärke (Attribut)
Ebenso reichen für einen Kreis der Mittelpunkt, der Radius und die Linienstärke. Solche Grafiken lassen sich beliebig skalieren, und sind so in ihrer Größe veränderbar. Außerdem sind Vektorgrafiken von der Auflösung unabhängig, sie können also mit der Auflösung des jeweils verwendeten Bildschirms oder Druckers angezeigt bzw. ausgegeben werden. Vektorgrafiken benötigen in den meisten Fällen weniger Speicherplatz als vergleichbare Rastergrafiken. Es gibt aber auch einige Nachteile: Das Format eignet sich nicht für komplexe Bilder mit Pixelweise wechselnden Farben, wie z. B. Fotos. Das Erscheinungsbild einer Grafik ist nicht immer gleich, es variiert in den verschiedenen Anwendungsprogrammen [s] [s] . Ein sehr bekanntes Zeichenprogramm mit dem sich Vektor-Grafiken erstellen und bearbeiten lassen, ist CorelDraw von der Firma Corel. (Begriffhttp://www.corel.com)
Scalable Vector Graphics (SVG)
Das SVG-Format ist eine XML Grammatik um vektor-basierte 2-D Grafiken für das Web und für andere Anwendungen zu definieren. XML (Extensible Markup Language) selbst ist ein einfaches, flexibles Textformat, das von SGML (Standard Generalized Markup Language) abgeleitet wurde [s] . XML, HTML (Hypertext Markup Language) und SVG wurden durch das World Wide Web Consortium (W3C,Begriffhttp://www.w3.org/) geschaffen. Mehr als 20 Organisationen, darunter namhafte Firmen, waren in die Entwicklung von SVG involviert.
SVG hat gegenüber anderen Graphikformaten viele Vorteile [s] [s]
  • Klartextformat: SVG-Dateien können leicht gelesen und modifiziert werden, und lassen sich gut komprimieren. Das Klartextformat ermöglicht auch das Durchsuchen der Dateien nach Schlüsselwörtern.
  • Skalierbar (Scalable): Im Gegensatz zu Bitmap-Bildern haben SVGs in jeder Auflösung und in jeden Zoomfaktor hohe Qualität (keine "Treppeneffekte").
  • Scripting und Animation: SVG erlaubt dynamische und interaktive Graphiken.
  • Offener Standard: SVG ist ein offener Standard und wurde durch ein Konsortium geschaffen.
  • XML: Als XML-Grammatik bietet es alle Vorteile von XML (Breite Unterstützung, einfache Manipulation, Internationalisierung, Interoperabilität, ... ).

PU separator
Hannes Eichner (heichner@edu.uni-klu.ac.at)
IAS, Universität Klagenfurt