Lauflängenkodierung
Die Lauflängenkodierung (engl. Run-length encoding, kurz RLE) ist ein sehr einfacher verlustfreier Kompressionsalgorithmus für digitale Daten, der besonders gut geeignet ist, Wiederholungen oder Sequenzen von gleichen Werten, verkürzt darzustellen. Hierbei wird bei einer Sequenz der Wert und die Anzahl der Wiederholungen gespeichert.
Nehmen wir als Beispiel eine Zeile eines Schwarz/Weiß-Bildes, das viel weißen Hintergrund, aber nur wenig Schwarz enthält:
WWWWWWWWWWWWSWWWWWWWWWWWWSSSWWWWWWWWWWWWWWWWWWWWWWWWSWWWWWWWWWWWWWW
Dies interpretieren wir als Sequenz von: 12*Weiß, 1*Schwarz, 12*Weiß, 3*Schwarz, 24*Weiß, 1*Schwarz, 14*Weiß. Wenn wir dies nun in gekürzter Form direkt hintereinander schreiben erkalten eine lauflängenkodierte Darstellung:
12WB12W3B24WB14W
Die Daten wurden also auf etwa 25% der ursprünglichen Größe komprimiert.
Die unterschiedlichen Kompressionsprogramme speichern allerdings die komprimierte Datenfolge in Binärer Form ab, die teilweise sehr unterschiedlich sein kann. Einige Anwendungen speichern auch zusätzlich folgen von mehreren Datenwerten, machen also aus -ABC-ABC-ABC-ABC- die gekürzte Darstellung 4[-ABC]-.
Geeignet ist die Lauflängenkodierung also da, wo es lange Folgen des gleichen Wertes gibt. Dies ist sehr häufig bei älteren Icons, oder Clip-Art-Bildern der Fall, die meist nur mit wenigen Farben gezeichnet sind.
Bekannte Dateiformate, die die Lauflängenkodierung anwenden sind daher viele ältere Grafikformate wie beispielsweise Windows Bitmap, GEM Image, Targa oder PCX.
Unter Microsoft Windows wird die Dateiendung .RLE üblicherweise für RLE komprimierte BMP-Bilder verwendet, die Dateiendung .BMP meist für unkomprimierte Bilder.
Siehe auch: Run-Test