Dies ist eine Bezahl-Funktion
Premium-Nutzer knnen schon ab 4 € im Monat alle Funktionen der fotocommunity nutzen.
  • In allen Foren lesen und schreiben
  • Aktbilder hochladen und anschauen
  • Am Galerie-Voting teilnehmen
  • Bis zu 30 Fotos pro Woche hochladen
> Jetzt Premium-Mitglied werden
 
 
 
 

Kodierung, Datenformate

Digitale oder elektronische Bildbearbeitung


Inhaltsverzeichnis

Datenformate

Grafische Daten, die im Computer dargestellt werden sollen, werden traditionell aufbereitet in Form von Vektorgrafiken oder Rastergrafiken.

Vektorgrafik

Bei Vektorgrafiken werden Linien, Polygone oder Kurven anhand von bestimmten Schlsselpunkten (Parameterwerten) charakterisiert, die schlielich durch ein Programm dargestellt werden. Z. B. knnte fr einen Kreis ein Vektor (X-Koordinate, Y-Koordinate, Radius, Farbe, Linienstrke, Fllfarbe) abgespeichert werden, das darstellende Programm kann dann eindeutig diesen Kreis zeichnen. Vektorgrafiken knnen (beliebig) skaliert (vergrert) werden, ohne das Rastereffekte auftreten. Vektorgrafiken sind im Allgemeinen nicht geeignet, fotorealistische Abbildungen zu speichern.

Rastergrafik

Rastergrafiken (oder Bitmapgrafiken) setzen sich zusammen aus einer Menge numerischer Werte, die Farb- und Helligkeitsinformationen einzelner Bildpunkte (Pixel) oder ganzer Bildelemente wiedergeben. Historisch gesehen steht die Rastergrafik mit der Entwicklung der Kathodenstrahlrhre als grafisches Ausgabegert im Zusammenhang. Fr eine Rastergrafik sind die folgenden Eigenschaften zu bercksichtigen:

  • Die Bildauflsung (Picture Resolution) ist die Anzahl der Bildpunkte entlang der x-Achse und der y-Achse.
  • Die Farbtiefe (Color Depth) bestimmt die Anzahl der Farben, mit denen ein Bildpunkt eingefrbt werden kann. Sie wird als Logarithmus log(c) (zur Basis 2) aller mglichen Farben c angegeben. Das ergibt die Anzahl der Bits, die bentigt werden um die Farbe eindeutig zuzuordnen. Z. B.: Fr 256 Farben werden log(256)=8 (da 2^8=256) Bits bentigt. Von einer Echtfarbendarstellung kann erst ab 24Bit besprochen werden. Einige Systeme erlauben sogar 32Bit oder 48Bit Farbtiefe.
  • Eine Farbpalette (Palett Size) wird von einigen Grafiksystemen verwendet, um die Anzahl der zur Ausgabe von Farben bentigten Bits zu reduzieren. Es wird von vorn herein festgelegt, welche Farben verwendet werden und welche nicht.

In einer Rastergrafik werden im einfachsten Fall die einzelnen Bildpunkte Zeile fr Zeile nebeneinander abgespeichert. Dieses Verfahren hat als Nachteil, dass die Dateien sehr gro werden. Z. B. ein Bild mit einer Auflsung von 1500x1000 und einer Farbtiefe von 24-Bit bentigt dann 1500x1000x24 Bit(b) das entspricht 4.500.000 Byte(B) also 4,29MB (wobei 1B=8b, 1kB=1024B, 1MB=1024kB). Geht man davon aus, dass auf eine Diskette 1,44MB passen, so wrde diese nicht mal fr ein Bild dieser Gre gengen.

Abhilfe fr dieses Problem schaffen Komprimierungsverfahren.

Einige wichtige Rastergrafik Datenformate:


Format Komprimierungs- verfahren max. Auflsung Farbtiefe
BMP RLE 65.536 x 65.536 1-, 4-, 8-, 24-Bit Bitmap-Format, einfachstes Grafikformat, groe Verbreitung unter MS Windows
TIFF Huffmann und LZW bis 2^32 Zeilen 48-Bit Tagged Image File Format, Bildauflsung ist nicht beschrnkt
GIF LZW 65.536 x 65.536 24-Bit Palette mit 8-Bit Farbtiefe Graphic Interchange Format, bietet Mglichkeit mehrere Bilder in einer Datei abzuspeichern (Animation)
JPG JPEG und Huffmann abhngig von Parametern der Komprimierung Joint Photographic Expert Group, erreicht bei fotorealistischen Bildern besseren Kompressionsgrad als die anderen Formate, verlustbehaftete Komprimierung
PNG zlib beliebig bis 48-Bit Portable Network Graphics, PNG soll das GIF-Format ablsen.


Datei-Aufbau

Wie sieht eine Bilddatei eigentlich im Inneren aus? Im Allgemeinen haben alle Bilddateien einen hnlichen Aufbau. Sie bestehen eigentlich immer aus zwei Teilen nmlich:

  1. dem Header (Kopf) und
  2. dem Datenteil.

Im Header stehen alle wichtigen Steuerinformationen z. B. welches Datenformat verwendet wird, welche Ausdehnungen das Bild hat, welche Kodierung(en) verwendet werden. Im Datenteil stehen die Bildaten meist in Form von Werten, die durch die verwendete Kodierung oder Komprimierung entstanden sind.

Bild:Dateiaufbau.gif

Siehe dazu zum Beispiel: JPEG#JPEG-Dateiaufbau

Komprimierungsverfahren

Komprimierungsverfahren sind in erster Linie dafr zustndig, Datenmengen zu reduzieren, um sie platz- und somit kostengnstig abzuspeichern oder zu transportieren. Es gibt eine ganze Reihe von Komprimierungsverfahren, jedes hat seine Vor- und Nachteile. Es ist im Allgemeinen immer so, dass es ein gewisses Gleichgewicht zwischen Strke der Reduktion der Datenmenge und Handhabbarkeit/Kompliziertheit des Verfahrens gibt. Je mehr man vom einen hat, desto weniger hat man vom anderen.

In der digitalen Bildverarbeitung ist wohl die Unterscheidung in verlustfreie und verlustbehaftete Komprimierung (siehe auch JPEG Artefakte) von besonderem Interesse. Bei verlustfreien Komprimierungsverfahren wird die Kodierung und Dekodierung so durchgefhrt, dass die ursprnglichen Daten nach dem Ausfhren beider Verfahren wieder vollstndig vorliegen. Die in den Ausgangsdaten enthaltene Information bleibt also vollstndig erhalten. Verlustbehaftete Komprimierungsverfahren dagegen versuchen, eine hhere Komprimierungsrate zu erreichen, indem sie auf Teile der zu komprimierenden Information verzichtet, die fr den vorgesehenen Verwendungszweck fr weniger wichtig angesehen wird. Meist ist es mglich, dass der Benutzer selbst angibt, welche Kompressionsstrke verwendet werden soll. Das JPEG-Komprimierungsverfahren ist zum Beispiel ein verlustbehaftetes Verfahren, whrend bei GIF und BMP verlustfrei kodiert wird.

Das Ausma der Komprimierung wird als Komprimierungsrate/Kompressionsrate bezeichnet, das ist das Verhltnis der Gre der ursprnglichen Information zur Gre der komprimierten Information.

Manchmal ist es sinnvoll verschiedene Komprimierungsverfahren zu kombinieren wie zum Beispiel im TIFF-Format.

Lauflngenkodierung (Run Length Encoding, RLE)

Die einfachste Form von Redundanzen in einem Bild sind aufeinanderfolgende Bildpunkte gleicher Farbe. Man betrachte zum Beispiel die folgende Bildzeile (rot, grn, schwarz, blau):

rrrgggssbbbbbbggggssssssssrrrrrbbbbbbggggssssssrrrrrrrr

Die Folge lt sich viel kompakter kodieren, indem man aufeinanderfolgende Bildpunkte gleicher Farbe ersetzt durch ihre Anzahl und die Farbe:

3r3g2s6b4g8s5r6b4g6s8r

Dieses Verfahren wird als Lauflngenkodierung bezeichnet. Es ist sehr gut geeignet fr Bilder mit besonders vielen gleichfarbigen Anteilen. Die Effizienz schwindet allerdings bei Bildern mit sehr wechselhaften Farbanteilen wie zum Beispiel Rauschen. Im schlimmsten Fall kann sich die Datenmenge verdoppeln. Probiert es aus, die Lauflngenkodierung wird in BMP Bildern verwendet.

Die Lauflngenkodierung lsst sich nicht nur auf Pixel anwenden, sondern auch auf Binrdaten, die aus Folgen von 0 und 1 bestehen. Man spricht dann von Bit-Level Lauflngenkodierung. Weitere sind die Byte-Level Lauflngenkodierung sowie die Pixel-Level Lauflngenkodierung wie oben beschrieben. Es wre auch denkbar auf Bildzeilen die Lauflngenkodierung anzuwenden.

LZW-Komprimierung

Das LZW-Verfahren ist benannt nach seinen Urhebern Abraham Lempel, Jacob Zif und Terry Welch. Lempel und Zif haben 1977 das LZ77-Substitutionskomprimierverfahren entwickelt, das in vielen Archivierungsprogrammen wie z. B. zoo, lha, pkzip oder arj verwendet wird. 1984 modifizierte Welch das Verfahren und es entstand der LZW-Algorithmus.

Das LZW-Verfahren ist fr verschiedene Arten von Daten verwendbar. Es ist ein wrterbuchbasiertes Kodierungsverfahren, das zur Kodierung aus den Ursprungsdaten ein Wrterbuch aufbaut. Die auftretenden Datenmuster des Datenstroms (z.B. eine Folge von Pixeln Zeile fr Zeile) werden den Wrterbucheintrgen zugeordnet. Kommt ein betrachtetes Datenmuster nicht im Wrterbuch vor, wird ein neues Codewort generiert und im Wrterbuch gespeichert. Tritt das Datenmuster erneut auf, so wird es durch das entsprechende Codewort ersetzt. Da die Codewrter eine krzere Lnge als das betrachtete Datenmuster haben, findet eine Komprimierung statt. Beim LZW Verfahren muss das Wrterbuch nicht mit den komprimierten Daten gespeichert werden, sondern beim Entpacken wird es aus den komprimierten Daten wieder aufgebaut.

Der Algorithmus und ein schnes Applet sind auf folgender Webseite zu finden:

http://www.cs.sfu.ca/cs/CC/365/li/squeeze/LZW.html

Die LZW-Komprimierung wird im GIF und im TIFF-Format verwendet.

Huffmann-Kodierung

Die Huffmann-Kodierung wurde 1952 von David A. Huffmann entwickelt.

Sie wird durch einen Binrbaum, also einem Baum, dessen Knoten nie mehr als 2 Kinder haben, erzeugt. Dabei wird ein sogenannter prfixfreier Code generiert. Ein prfixfreier Code ist dadurch charakterisiert, dass kein Codewort ein Anfangswort eines anderen Codewortes ist.

Nehmen wir folgende Bildzeile als Beispiel (rot, grn, schwarz, blau):

rrrgrrrggsrrrrrggbbrrrs

Man betrachte nun die Hufigkeiten der Farben:

Farbe Hufigkeit
r 14
g 5
s 2
b 2


Nun kann man den Binrbaum konstruieren. Je hufiger eine Farbe vorkommt, desto nher liegt sie an der Wurzel des Baumes und desto krzer ist ihr Codewort. Die linken Kinder werden mit einer 0 markiert, die rechten mit einer 1. Geht man nun den Pfad von der Wurzel zu einem Blattknoten und notiert die 0en und 1en, so erhlt man das Codewort fr den entsprechenden Blattknoten.

Fehlendes Bild
Huffmann.gif
Bild:Huffmann.gif

Letztendlich knnen die Farben ersetzt werden durch ihre Codewrter.

0001000010110000001010111111000110

Das Schne am prfixfreien Code ist, dass man jetzt eindeutig ohne Trennzeichen von links nach rechts dekodieren kann.

Nun zur Kompressionsrate:

  • unkomprimiert:
21 Pixel 8Bit = 168Bit
  • komprimiert:
14 Pixel 1Bit +
5 Pixel 2Bit +
4 Pixel 3Bit = 36Bit
Natrlich muss auch noch eine Kodierungstabelle abgespeichert werden, dafr gengen 8Bit pro Codewort, also 32Bit.
Insgesamt werden mit Komprimierung also nur 36Bit+32Bit = 68Bit fr obiges Beispiel bentigt.

Die Huffmann Kodierung wird im TIFF-Format verwendet.

JPEG-Kodierung

Hier wird auf den JPEG Artikel verwiesen.


  Letzte nderung: 19:47, 17. Mrz 2006 von Marc Schlueter . Basiert auf dem Text von Albert F. Mller und Franz-Josef Wirtz und anderen. - Aufrufe: 34378
Der Textinhalt dieser Seite steht unter der Creative Commons License. Alle Fotos und Grafiken sind urheberrechtlich geschtzt, wenn nicht anders angegeben. Der Text spiegelt nicht unbedingt die Meinung der fotocommunity wider.