LZ77, LZW ve Deflate
Kısaca: LZ77 ve LZW sıkıştırmanın sözlük yöntemleridir: tekrarları, daha önce görülmüş verilere kısa göndermelerle değiştirirler. Deflate, LZ77’yi Huffman kodlamasıyla birleştirir.
Biraz daha ayrıntılı: Deflate; ZIP, gzip, PNG ve HTTP sıkıştırmasının içindedir. Hepsinden çok kullanılan sıkıştırma yöntemidir.
Ayrıntılı
- LZ77: Son kilobaytlardan oluşan bir “pencere” tutar. Kodlayıcı bir tekrara rastlayınca baytlar yerine (uzaklık, uzunluk) yazar.
abcabcabc,abcartı “3 geriden 6 karakter kopyala” olur. - LZW: Çalışırken karakter dizilerinden bir sözlük kurar ve yalnızca indeksleri çıkarır. GIF’te ve erken TIFF’te kullanıldı. Patent soruları bir zamanlar yayılmasını yavaşlattı.
- Deflate: LZ77 sabit karakterler ve göndermeler üretir, ardından Huffman sık sembolleri kısa kodlar. Pencere 32 KiB.
- Halefler: Zstandard ve Brotli daha yüksek hızda daha iyi oranlara ulaşır, bkz. Brotli ve Zstandard.
- Sıkıştırma sınırı: Rastgele veya zaten sıkıştırılmış veriler pek küçültülemez.
Ayrıca bak: Sıkıştırma