article

Adam7 ist ein Algorithmus zum allmählichen Bildaufbau beim Transfer von Bilddaten über eine langsame Verbindung wie etwa das Internet. Das Ziel ist es, dem Benutzer anstatt eines Bildes, das sich von oben nach unten langsam aufbaut, eine grobe Version des Bildes zu zeigen, die sich nach und nach verfeinert. Adam7 ist benannt nach seinem Erfinder Adam M. Costello und wird unter anderem im Bildformat PNG angewandt.

Vorgehensweise


Das Gesamtbild wird in insgesamt 7 Durchläufen aufgebaut. Dazu ist es zunächst notwendig, das Ausgangsbild in Blöcke von 8×8 Pixeln zu zerlegen. Bestimmte Pixel dieser Blöcke werden nun mit einer Wertigkeit von 1 bis 7 belegt, die der Reihe nach in der Bilddatei gespeichert werden und somit beim Lesen der Datei in einem entsprechenden Durchlauf übertragen werden. Die Anzahl der Pixel gleicher Wertigkeit nimmt bei jedem Durchlauf zu. Die Aufteilung erfolgt nach folgendem Schema:
Adam7.PNG
Im ersten Durchlauf wird nur ein Pixel pro Block übertragen und der gesamte Block mit dieser Farbe einfgefärbt, im zweiten Durchgang wird die linke Seite des Blocks mit Farbe 1, die Rechte mit Farbe 2 belegt usw. Die Anzahl der zu übertagenden Bildanteile steigt hierbei von Durchgang zu Durchgang an. Die Abbildung unten zeigt die Aufteilung über alle sieben Stufen:
Rasterfaerbung_stufenweise.PNG

Vor- und Nachteile


Adam7 hat gegenüber dem in GIF verwendeten Schema, bei dem nur jeweils vollständige Zeilen übertragen werden, den Vorteil, dass der erste Durchlauf weniger Pixel betrifft und somit ein Ausgangsbild achtmal schneller präsentiert werden kann. Zudem hilft die Verfeinerung von Spalten zusätzlich zu Zeilen, Text schneller lesbar zu machen.

Allerdings ist Adam7 ein wenig komplizierter zu implementieren. Komprimerte Bilddateien, die Adam7 verwenden, sind außerdem in der Regel etwas größer als normale Bilddateien, da die natürliche Reihenfolge der Bilddaten nicht beibehalten wird. Deshalb sollte Adam7 nur bei größeren Bildern, die ins Internet gestellt werden oder auf einem langsamen Speichermedium lagern, verwendet werden.

Weblinks


Algorithmus

Adam7 algorithm

 

This article is licensed under the GNU Free Documentation License. It uses material from the "Adam7".

Home Pageartsbusinesscomputersgameshealthhospitalshomekids & teensnewsphysiciansrecreationreferenceregionalscienceshoppingsocietysportsworld