[原著] https://kornel.ski/lossygif
这是一个gifsicle实现有损LZW压缩的编码器(基于)。它可以减少30%-50%的文件大小,但需要花费一些抖动/噪音。
./gifsicle -O3 --colors=256 --lossy=80 -o 压缩后.gif 压缩前.gif
调整 --lossy 你想要的质量参数(30-200 数字越大压缩后文件越小,但质量也会降低,推荐80 )。
当 --lossy 很少的损失被引入时,它效果最好,并且由于压缩算法的限制,非常高的损耗水平不会获得太多的收益。
它是如何工作的
GIF的LZW压缩是基于所看到的像素串的“字典”。正常编码器在字典中搜索与图像中的像素完全匹配的最长的像素串。有损编码器选择与图像中的像素“足够相似”的最长的像素串(加上一些魔术来隐藏伴随抖动的失真)。