二十一、压缩

本文介绍了数据压缩的基本原理,通过实例讲解了无损压缩方法中的游程编码和霍夫曼编码。游程编码通过减少连续相同像素的重复信息进行压缩,而霍夫曼编码利用霍夫曼树生成无前缀编码,根据数据出现频率进行更高效的压缩。此外,文章还探讨了有损压缩的概念,如音频的感知编码和图像的JPEG压缩,以及视频压缩中利用时间冗余的技术。
摘要由CSDN通过智能技术生成

压缩可以把数据占用的空间压得更小,用更少的bits表示数据。
我们用上集的4像素*4像素图片作为例子。图像存成一长串的连续字节数据,由元数据+像素值组成,今天忽略元数据。每个像素的颜色有三原色的组合(红绿蓝)混合而成,每个颜色用一个字节存,数字范围0-255。
在这里插入图片描述
这个图像有16个像素,每个像素3个字节,共48字节。压缩这48个字节的一种方法时减少重复信息,最简单的方法就叫做“游程编码”(run-length encoding),适合于经常出现相同值的文件。具体方法就是从多个连续的、相同的像素值中保留一个,然后用一个额外字节记录下重复的个数。处理前:
在这里插入图片描述
处理后:
在这里插入图片描述
这种压缩方式没有损失任何数据,叫做无损压缩(lossless compression),数据压缩前后完全一样。另一种无损压缩可以用更紧凑的方式表示数据块,为此我们需要一个字典来存储编码和数据之间的对应关系,我们看一个例子。我们首先将图像将两个像素当成1块

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值