📜  压缩 GIF 图像

📅  最后修改于: 2022-05-13 01:57:14.488000             🧑  作者: Mango

压缩 GIF 图像

GIF(图形交换格式)不是一种数据压缩方法。 GIF 的原始版本称为 GIF87a。它是一种图形图像格式,它使用 LZW 的变体来压缩图形数据并允许在不同的计算机之间发送图像。它逐行扫描图像并发现行内而不是行之间相关的像素。 GIF 使用不断增长的动态字典来压缩数据。

脚步:

  1. 它以每个像素的位数 b 作为参数。对于单色图像 b=2 和具有 256 种颜色或阴影的图像 b=8。
  2. 它使用带有 2^(b+1) 个条目的字典。每次填满时,字典的大小都会翻倍,直到 4096 个条目并保持静态。
  3. 此时,编码器监控压缩率,并可能决定丢弃字典并从新的空字典开始。
  4. 在决定丢弃时,编码器发出 2^b 值作为明码,这是解码器丢弃字典的标志。

指针从字典到字典变长一个字节,输出是 8 个字节的块。每个指针前面有最多 255 个字节的标头,并以 8 个零字节结束。指针存储在左侧的 LSB(最低有效位)。最后一个块包含的值为 2^(b+1)。

GIF 压缩效率低下,因为 GIF 是一维的,而图像是二维的。因此,今天的网络浏览器不使用 GIF。