13.03.2014 Aufrufe

PDF 3.6 MB - jkrieger.de

PDF 3.6 MB - jkrieger.de

PDF 3.6 MB - jkrieger.de

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

5 Bildrepräsentation<br />

Üblicherweise wer<strong>de</strong>n Bil<strong>de</strong>r als Feld im Speicher repräsentiert. Man kann dann mit 1,2,3,... Indizes auf<br />

die einzelnen Pixel zugreifen. Manchmal sind aber auch an<strong>de</strong>re Repräsentationen von nutzen:<br />

5.1 Lauflängenkodierung<br />

Grauwertbil<strong>de</strong>r lassen sich vorteilhaft mit <strong>de</strong>r Lauflängenkodierung (run length encoding, RLE) komprimieren.<br />

Dazu speichert man nicht die Abfolge <strong>de</strong>r Pixel (in je<strong>de</strong>r Zeile) ab, son<strong>de</strong>rn gibt an, wie oft Pixel<br />

hintereinan<strong>de</strong>r vorkommt. Kommt in einer Bildzeile also <strong>de</strong>r Wert w 25-mail hintereinan<strong>de</strong>r, so speichert<br />

man nicht 25 mal <strong>de</strong>n Wert w, son<strong>de</strong>rn die Anzahl 25 und einmal <strong>de</strong>n Wert w. Diese Kompressionsart<br />

wird in einigen Grafikformaten (z.B. TIFF, TGA, BMP) verwen<strong>de</strong>t und eignet sich natürlich vor Allem<br />

für Bil<strong>de</strong>r, in <strong>de</strong>nen auf großen Bereichen <strong>de</strong>r gleiche Grauwert steht. Man muss allerdings beachten,<br />

dass bei Grauwertbil<strong>de</strong>rn noch ein irgendwie gearteter Marker eingeführt wer<strong>de</strong>n muss, um zwischen<br />

Anzahl und Wert zu unterschei<strong>de</strong>n, da sonst alle einzelnen Pixel auf die doppelte Größe (Anzahl 1 +<br />

Pixelwert) aufgeblasen wer<strong>de</strong>n. Hier ein Beispiel:<br />

Daten:<br />

Co<strong>de</strong>:<br />

12 12 12 15 15 14 15 14 20 20 20 20 20 20 20 85 90 10 10 10 10 10 10<br />

3 12 2 15 14 15 14 7 20 85 90 6 10<br />

Anzahl Daten<br />

Diese Kodierung ist bei Schwarz-Weiß-Bil<strong>de</strong>rn beson<strong>de</strong>rs effektiv, weil hier nicht <strong>de</strong>r Wert mit abgespeichert<br />

wer<strong>de</strong>n muss. Denn auf ein schwarzes Gebiet folgt immer ein weißes und umgekehrt. Man nimmt<br />

an, dass <strong>de</strong>r erste Pixel 0 ist. Ist er dies nicht, so speichert man einfach 0 schwarze Pixel am Anfang ab.<br />

Ein Beispiel:<br />

Daten:<br />

Co<strong>de</strong>:<br />

1 1 1 1 0 0 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1<br />

0 4 2 2 1 1 1 10 9 4<br />

Anzahl<br />

5.2 Quadtree/Octree<br />

Bei <strong>de</strong>r Repräsentation als Quadtree (Octree für 3D) wer<strong>de</strong>n Schwarz-Weiß-Bil<strong>de</strong>r immer wie<strong>de</strong>r in vier<br />

Quadranten unterteilt. Ist ein Quadrant homogen gefärbt, so wird seine Farbe gespeichert. An<strong>de</strong>rnfalls<br />

wird er weiter unterteilt. In Abb. 5.1 ist ein Beispiel gezeigt.<br />

34

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!