图像压缩和解压缩Java



我想创建一个压缩和解压缩图像的程序,有很多算法可以做到这一点,但我被要求使用LZSS算法来压缩和解压图像,我的问题是LZSS不是一种字典类型的数据压缩方法吗?仅用于文本文件?还是我错了?LZSS算法可以用于压缩和解压缩图像吗?

字典类型的压缩适用于有许多重复字节序列的情况。等效地,当看到你以前看到的字节序列时,它是适用的,这表明下一个字节也将与你以前看到过的相匹配。

几乎所有的";通用的";无损压缩算法,不是专门为压缩某种数据而设计的,LZ算法也属于这一类。

这些算法压缩图像数据的成功程度各不相同,这取决于图像的类型以及使用何种预处理将图像数据转换为字节序列。

PNG和GIF都是使用LZ风格压缩的无损图像格式的示例。似乎没有一个很好的理由来写自己的,但如果你用LZSS代替PNG的压缩器,你会得到类似的结果。它使用的DEFLATE算法已经是LZSS和Huffman的良好组合,所以也许它已经开箱即用地提供了您所需要的。

最新更新