Dzisiaj jest 12 grudnia 2024 r.
Chcę dodać własny artykuł

Kompresja bezstratna

Kompresja bezstratna

Kompresja bezstratna to metoda redukcji rozmiaru danych, która umożliwia pełne odtworzenie oryginalnej informacji. Kluczowym aspektem tej metody jest twierdzenie o zliczaniu, które wskazuje, że każda funkcja kompresji bezstratnej, która zmniejsza rozmiar informacji, musi przynajmniej o 1 bit wydłużyć niektóre dane, chyba że nie kompresuje żadnych informacji.

Twierdzenie o zliczaniu

Nie można stworzyć funkcji, która odwracalnie kompresuje wszelkie informacje, nie wydłużając przynajmniej jednej z nich. Dowód polega na wykazaniu, że gdyby funkcja ta istniała, prowadziłoby to do sprzeczności z ograniczoną liczbą możliwych wiadomości o danej długości.

Algorytmy kompresji bezstratnej

Algorytmy te efektywnie kompresują typowe dane, które zawierają dużą redundancję. Jednak niektóre typy danych są trudne lub niemożliwe do skompresowania, takie jak:

  • Strumienie liczb losowych – niemożliwe do skompresowania.
  • Strumienie liczb pseudolosowych – trudne do skompresowania.
  • Dane już skompresowane – zazwyczaj trudne do dalszej kompresji.

Metody kompresji bezstratnej dzieli się na dwie główne kategorie:

  • Metody słownikowe: Wyszukują konkretne ciągi znaków i zastępują je krótszymi reprezentacjami.
  • Metody statystyczne: Używają różnych długości kodów w zależności od częstości występowania symboli, uwzględniając kontekst.

Popularne metody kompresji

  • Kodowanie Shannona, Shannona-Fano, Huffmana, arytmetyczne.
  • LZ77, LZ78 i ich pochodne (LZSS, LZP, LZW, LZMW).
  • RLE (Run-Length Encoding).
  • PPM (Prediction by Partial Matching).
  • Transformata Burrowsa-Wheelera, Move To Front.

Najnowsze aktualności: