一尘不染

数据压缩算法

algorithm

我想知道是否有人列出了数据压缩算法。我对数据压缩基本上一无所知,我希望了解更多有关不同算法的信息,并查看哪些算法是最新的并且尚未在许多ASIC上开发。

我希望实现一种数据压缩ASIC,该ASIC与传入的数据类型(音频,视频,图像等)无关。

如果我的问题太开放了,请告诉我,我会进行修改。谢谢


阅读 239

收藏
2020-07-28

共1个答案

一尘不染

那里有大量的压缩算法。您需要的是一种无损压缩算法。无损压缩算法对数据进行压缩,以便可以对数据进行解压缩以实现压缩之前的精确数据。相反的是有损压缩算法。有损压缩会从文件中删除数据。PNG图像使用无损压缩,而JPEG图像可以并且经常使用无损压缩。

一些最广为人知的压缩算法包括:

ZIP归档文件结合使用了霍夫曼编码和LZ77,以提供快速的压缩和解压缩时间 以及 合理的压缩率。

LZ77几乎是RLE的广义形式,它通常会产生更好的结果。

Huffman允许重复最多的字节代表最少的位数。想象一个看起来像这样的文本文件:

aaaaaaaabbbbbcccdd

Huffman的典型实现将产生以下地图:

Bits Character
   0         a
  10         b
 110         c
1110         d

因此文件将被压缩为:

00000000 10101010 10110110 11011101 11000000
                                       ^^^^^
                              Padding bits required

18个字节降为5。当然,该表必须包含在文件中。该算法在处理更多数据时效果更好:P

如果Wiki不足够,Alex
Allain会写一篇关于霍夫曼压缩算法的好文章

随时要求更多信息。这个话题范围很广。

2020-07-28