> rle | kompresuj | powtarzaj <

// Run-Length Encoding - Prosta kompresja dla powtarzających się danych

[COMPRESS]

Kompresja danych

Zmniejsza rozmiar pliku poprzez efektywne kodowanie powtarzających się sekwencji.

[SIMPLE]

Prosty algorytm

Szybka i przejrzysta kompresja z minimalnym narzutem.

[FORMATS]

Wiele formatów

Obsługa prostego RLE oraz formatu PackBits (TIFF).

>> informacje techniczne

Jak działa RLE:

Run-Length Encoding zastępuje sekwencje powtarzających się danych licznikiem i jedną wartością. Proste RLE używa par liczba+wartość, natomiast PackBits wykorzystuje bajty sterujące do rozróżniania serii i danych literalnych.

Przykład kompresji:

Simple RLE: AAAABBBCC → 4A3B2C ABCDE → 1A1B1C1D1E PackBits: [Run] AAA → FD 41 (3 × 'A') [Literal] ABC → 02 41 42 43

Dlaczego warto używać RLE:

  • >Kompresja obrazów (BMP, PCX, TIFF)
  • >Transmisja faksu
  • >Przechowywanie ikon i sprite’ów
  • >Kompresja danych rzadkich
  • >Łatwa implementacja

>> najczęściej zadawane pytania

Czym jest Run-Length Encoding?

RLE to prosty algorytm kompresji, który zastępuje kolejne identyczne elementy liczbą i jedną kopią. Jest skuteczny dla danych z wieloma powtórzeniami, np. prostych grafik lub rzadkich macierzy.

Proste RLE a PackBits?

Proste RLE używa par liczba+wartość (4A = AAAA). PackBits wykorzystuje bajty sterujące: wartości ujemne oznaczają serie, dodatnie dane literalne. PackBits jest używany w obrazach TIFF i lepiej radzi sobie z danymi mieszanymi.

Kiedy RLE jest skuteczne?

RLE najlepiej działa dla danych z długimi sekwencjami powtarzających się wartości. Jest mało efektywne dla danych losowych i może nawet zwiększyć rozmiar, jeśli brak powtórzeń.

RLE w porównaniu z innymi metodami kompresji?

RLE jest prostsze, ale mniej wydajne niż algorytmy takie jak LZ77 czy kodowanie Huffmana. Często stosuje się je jako etap wstępny lub w formatach, w których liczy się prostota, np. przy transmisji faksu.

Inne języki