Eine Lauflängenkodierung, die die Folgen gleicher Werte stark komprimiert.
Einführung
Was versteht man unter RLE?
Unter RLE(Run-Length-Encoding) versteht man eine Lauflängenkodierung zur verlustfreien Datenkomprimierung. Die RLE-Kodierung wird häufig zur Komprimierung von Rastergrafiken wie beispielsweise Bitmaps verwendet.
Wie wird komprimiert?
Die Lauflängenkodierung fasst Folgen von gleichen Zeichen des Klartextes zusammen. Dabei wird die Anzahl der aufeinanderfolgenden Zeichen sowie das Zeichen selbst abgespeichert. Folgendes Beispiel komprimiert den 20-Zeichen-langen Klartext auf die Länge von 15 Zeichen herunter.
ASCTGHHHPRAKKKKKKTWQ -> ASCTG3HPRA6KTWQ
Diese Komprimierung ist verlustfrei, weil sie vollständig reversibel ist, d. h. bei Dekomprimierung erhält man den unverfälschten Klartext.
ASCTG3HPRA6KTWQ -> ASCTGHHHPRAKKKKKKTWQ
Beispiele
Der Komprimierungsfaktor bei der RLE-Kodierung hängt von der zugrundliegende Länge der Zeichen ab. Welche Zeichenlänge nun zur Komprimierung die Beste ist, hängt wiederum vom jeweiligen Klartext ab, sehen Sie selbst:
RLE (8-Bit)
komprimiert Folgen von gleichwerten 8-Bit-Zeichen
RLE (16-Bit)
komprimiert Folgen von gleichwerten 16-Bit-Zeichen
RLE (24-Bit)
komprimiert Folgen von gleichwerten 24-Bit-Zeichen
RLE (32-Bit)
komprimiert Folgen von gleichwerten 32-Bit-Zeichen
Es gibt nun Klartexte, die sich mit RLE (16-Bit)
sehr gut komprimieren lassen, wohingegen sie bei der Anwendung von RLE (8-Bit)
kaum Wirkung zeigen und umgekehrt. Um diesem Phänomen entgegenzuwirken, stelle ich Ihnen RLE (alternierend)
zur Verfügung, welches je nach Bedarf zwischen den vier vorgestellten RLE-Kodierung alterniert und somit den Komprimierungsfaktor optimiert.