数据压缩的方式与特点
低頻约 30 分钟6 个术语过去问 3 题
本单元目标
- 能说明 压缩率 的含义,并能根据压缩前后的量求出它的值。
- 能按照能否还原、适合哪类数据,区分 无损压缩 和 有损压缩。
- 能说明 游程编码法 和 哈夫曼编码法 分别利用数据的什么性质来压缩。
术语总表(6 个)
术语
ZIP 是一种文件格式,它把多个文件合并成一个,并用可以原样还原的方式(无损压缩,可逆圧縮)缩小体积。
把压缩后的数据恢复成原来的形式,叫作 解压缩(伸長,也叫展開)。ZIP 文件解压后,合并前的各个文件会一个比特不差地回来。它不挑内容的种类,文档和程序都能处理,因此常用于一次发送或保存多个文件。
类比就像把好几页文件装进同一个信封,压得薄薄地寄出去。拆开信封,文件一页也不会少。
记法英语的 zip 是“拉上拉链”的意思。想象把散落的东西装进袋子、再拉上拉链的样子。
考点
- 易混ZIP 是不挑内容的通用无损压缩(可逆圧縮)格式,和照片专用的 JPEG 这类只面向特定数据的格式,在适用范围上有所区别。
压缩率(圧縮率)是用压缩后的数据量除以压缩前的数据量求得、表示压缩效果的值。
这个值用比例或百分比表示,越小说明比原来缩得越多。数据量在压缩前后要用同一种单位来数,比如比特数、字节数或字符数。
类比把被子装进压缩袋,如果厚度变成原来的三分之一,这个三分之一就相当于压缩率。
记法把它理解成“还剩多少”的比例。剩下的越少,说明压得越好。
考点
- 常考求 压缩率(圧縮率)时,先按约定好的表示规则数出压缩后的量,再除以压缩前的量。
- 易混“压缩率”(圧縮率)一词有时也指被削减部分所占的比例(1 − 压缩后 ÷ 压缩前)。具体指哪一种,要看该文档给出的定义。
该术语的过去问 1 题 圧縮率 →
无损压缩(可逆圧縮)是解压后能让压缩前的数据完全恢复原样的压缩方式。
← 图可左右滑动查看 →
它不丢弃任何信息,只是把表示方式变短,所以用于改动一个字符都会出问题的文档和程序。不过,正因为没有可以丢弃的信息,能压缩的量是有限的。在图像格式中,PNG 和 GIF 也采用无损压缩。
类比就像折叠伞,收起来变小了,撑开后还是和原来一模一样的形状。
记法日语名称“可逆”拆开读,就是“可以逆向回到原样”。中文的“无损”则直接说明没有损失。
考点
- 易混是否属于 无损压缩(可逆圧縮),看的是能否还原,而不是数据的种类;图像格式里也有 PNG 这样的无损格式。
该术语的过去问 1 题 可逆圧縮 →
有损压缩(非可逆圧縮)是削去人不易察觉的信息、大幅减少数据量的压缩方式,解压后也无法完全恢复原样。
削去的信息再也回不来,但也正因如此才能大幅压缩。它适合轻微劣化不显眼的照片、音频和视频,代表格式有照片的 JPEG、音频的 MP3 和视频的 MPEG。
类比就像把一段长话概括着转告别人。要点能传到,但原来细致的措辞,听的人是还原不出来的。
记法“覆水难收”。就像泼出去的水,被削掉的细节回不来。
考点
- 常考MP3 是面向音频的压缩格式,采用削去人耳难以听清成分的有损压缩(非可逆圧縮)。
- 常考MPEG 是压缩视频或音频数据的方式的标准群,通过有损压缩(非可逆圧縮)大幅减少数据量。
该术语的过去问 1 题 非可逆圧縮 →
游程编码法(ランレングス法)是把同一值连续出现的部分替换成“值和连续个数”来缩短数据的无损压缩手法。
同一值的连续叫作 游程(ラン),它的长度叫作 游程长度(ランレングス)。像同一颜色大片连续的图像那样游程较长的数据,压缩效果好;而值一个一个交替变化的序列几乎压不小,有时反而会变长。只出现 1 个的值是否也要加上个数等细节写法,由各个方式自行规定。
类比就像在购物清单上不写“橘子、橘子、橘子……”,而是汇总成“橘子 6 个”。
记法run(连续)加上 length(长度),就是“连续的长度”。名字本身就说明了要记录什么。
考点
- 常考即使是同一幅图像,改变读取像素的方向,连续段的划分也会改变,压缩后的量可能随之不同。
- 常考用固定比特数记录连续个数的方式中,超过这个比特数所能表示的最大值的连续段,要拆成几段分别记录。
该术语的过去问 1 题 ランレングス法 →
哈夫曼编码法(ハフマン法)是给出现次数多的值分配较短的 码字、给出现次数少的值分配较长的码字,从而减少整体数据量的无损压缩手法。
码字(符号)是为了表示某个值而分配的 0 和 1 序列。与所有值都使用同样长度码字的方式相比,出现次数越不均衡,整体就越短。在图中的例子里,每个字符平均只需 1.75 比特,比每个字符都用 2 比特表示时更少。
类比就像把最常打电话的人,存到位数最短的快捷拨号上。
记法摩尔斯电码里,英文中最常用的 E 也只是一个“·”。越常出现就越短,思路完全相同。
考点
- 易混游程编码法(ランレングス法)着眼于同一值的连续,用个数来汇总;哈夫曼编码法(ハフマン法)着眼于各个值的出现次数,改变码字的长度。
要点
- 把压缩后的数据恢复原样叫作 解压缩,解压后能完全复原的方式叫作 无损压缩。
- 压缩率 是压缩后的量除以压缩前的量得到的值,越小表示压缩得越多。
- 照片、音频和视频大多使用 有损压缩 的格式,例如音频的 MP3 和视频的 MPEG。
- 游程编码法 是把同一值的连续替换成“值和个数”组合的无损压缩手法。
- 哈夫曼编码法 给出现次数多的值分配短码字,出现次数越不均衡,压缩效果越好。
查看这个领域的全部过去问 →