Kompresja bezstratna wykorzystuje redundancję (nadmiarowość) informacyjną (dowolnego) strumienia danych.
Jej cechą charakterystyczną jest identyczność bitowa strumienia zdekompresowanego ze strumieniem źródłowym. Dzięki temu kompresja bezstratna może być wykorzystana do dowolnego formatu danych.
Programy kompresujące używają algorytmów kompresji ilościowej.
Kompresję bezstratną można realizować statycznie i dynamicznie.
Algorytmy bez analizy danych:
- ByteRun – IFF ILBM
- Run Length Encoding – BMP
- Lempel Ziv Welsh (LZW) – GIF
Algorytmy z analizą danych:
- Algorytm Huffmana – ZLIB, ZIP
- Kompresja arytmetyczna
Przykład redundancji informacyjnej
dane źródłowe AAABBBAAAAAABBBBCCCCCBBBBBAAAAAAA
prosta kompresja typu „byte run” 3A3B6A4B5C5B7A