> rle | kompresuj | powtarzaj <
// Run-Length Encoding - Prosta kompresja dla powtarzających się danych
Kompresja danych
Zmniejsza rozmiar pliku poprzez efektywne kodowanie powtarzających się sekwencji.
Prosty algorytm
Szybka i przejrzysta kompresja z minimalnym narzutem.
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.