当前位置:文档之家› 第五章 数据压缩编码

第五章 数据压缩编码

12
熵(Entropy)
• 在符号出现之前,熵表示符号集中的符 号出现的平均不确定性;在符号出现之 后,熵代表接收一个符号所获得的平均 信息量。
• 根据直觉,信源编码的数据输出速率 (平均码长)与信源熵之间应该有某种 对应关系。
13
信源的概率分布与熵的关系
• 熵的大小与信源的概率分布模型有着密 切的关系。 • 最大离散熵定理:当与信源对应的字符 集中的各个字符为等概率分布时,熵具 有极大值log2m。m为字符集中字符个数。
• 事件集合(样本空间)X中每个事件的自信息 量I(x)是定义在这个样本空间上的一个随机变 量,所以我们要研究它的统计特性。其数学期 望为:
H(X )
xX
p( x) I ( x) p( x) log p( x)
xX
• H(X)表明了集合X中随机事件的平均不确定性, 或者说平均信息量。 • 称H(X)为一阶信息熵或者简称为熵(Entropy)
叫做还原,解压缩),重构后的数据与原来的数据完全 相同;无损压缩用于要求重构的信号与原始信号完全 一致的场合。
有损压缩是指使用压缩后的数据进行重构,重构
后的数据与原来的数据有所不同,但不影响人对原始 资料表达的信息造成误解。有损压缩适用于重构信号 不一定非要和原始信号完全相同的场合。
9
经典数据压缩理论
34
预测编码
• 预测编码是数据压缩理论的一个重要分支。它 根据离散信号之间存在一定相关性的特点,利 用前面的一个或多个信号对下一个信号进行预 测,然后对实际值和预测值的差(预测误差) 进行编码。如果预测比较准确,那么误差信号 就会很小,就可以用较少的码位进行编码,以 达到数据压缩的目的。 • 第n个符号Xn的熵满足:
20
霍夫曼编码
• 具体步骤: (1)初始化 (2)合并概率最小的两个事件 (3)排序 (4)如果事件个数大于2则重复(2)和(3) (5)赋值 (6)编码
21
霍夫曼编码举例
符号 出现概率 等长编码 霍夫曼 S1 1/2 00 0 S2 1/4 01 10 S3 1/8 10 110 S4 1/8 11 111
H ( xn ) H ( xn | xn1 ) H ( xn | xn1xn2 ) ...... H ( xn | xn1xn2 ...x1 )
所以参与预测的符号越多,预测就越准确,该 信源的不确定性就越小,数码率就可以降低。 35
DPCM编码
xk ek
x’k 预测器
ek xk
多媒体技术
第五章
数据压缩基础
主要内容
• • • • • • • • 数据压缩概述 经典数据压缩理论 香农-范诺与霍夫曼编码 算术编码 行程编码 词典编码 预测编码 变换编码
2
什么是数据压缩
• 数据压缩就是在一定的精度损失条件下,以最 少的数码表示信源所发出的信号
信源
信源 编码
信道 编码 信道
信宿
H(X) = 1.75

等 霍
L1=2
S1
00 0
L2=1.75
S2
01 10
S1
00 0
S2
01 10
S3
10 110
S1
00 0
S1
00 0
S4
11 111
22
霍夫曼编码的局限性
• 利用霍夫曼编码,每个符号的编码长度只能为 整数,所以如果源符号集的概率分布不是2负n 次方的形式,则无法达到熵极限。 • 输入符号数受限于可实现的码表尺寸 • 译码复杂 • 需要实现知道输入符号集的概率分布 • 没有错误保护功能
信源 译码
信道 译码
3
数据压缩的必要性
多媒体
多媒体信源引起了“数据爆炸”
数据
如果不进行数据压缩
传输和存储都难以实用化。
4
1分钟数字音频信号需要的存储空间
数字音 频格式 电话 会议电 视伴音 CD-DA DAT
20~20000 20 48 16 5.76×2
5
频带 (Hz)
200~3400
带宽 (KHz)
DPCM是有损型还是无损型关键看对预测误差 ek如何编码。
36
预测方程式
xk f ( x1 , x2 , x3 ......xk 1 , k )
线性预测: xk
a (k ) x
i 1 i
k 1
i
如果ai是常数,则为时不变线性预测,否 则为自适应线性预测(ADPCM)
最简单的预测方程: xk xk 1
信息论中的信源编码理论解决的主要问题:
(1)数据压缩的理论极限
(2)数据压缩的基本途径
10
离散事件的非平均自信息量
• 为了完全确定事件x(使后验概率为1)所必 须提供的信息量称为x事件的非平均自信息 量I(x)
1 I ( x) log log p( x) p( x)
11
熵(Entropy)
0 1
A B
0
C D E
0
1
1
A
B
C
0
D E
1
符号
D
E
A 次数 15
B 7
C 7
D 6
E 5
25
算术编码
• Huffman 编码的局限性: Huffman 编码使用整 数个二进制位对符号进行编码,这种方法在许 多情况下无法得到最优的压缩效果。假设某个 字符的出现概率为 80%,该字符事实上只需要 -log2(0.8) = 0.322 位编码,但 Huffman 编码一 定会为其分配一位 0 或一位 1 的编码。可以想 象,整个信息的 80% 在压缩后都几乎相当于理 想长度的 3 倍左右。
26
算术编码
• 基本思想:算术编码不是将单个信源符号映射 成一个码字,而是把真个信源表示为实数线上 的0到1之间的一个区间,其长度等于该序列的 概率,再在该区间内选择一个代表性的小数, 转化为二进制作为实际的编码输出。消息序列 中的每个元素都要用来缩短这个区间。消息序 列中元素越多,所得到的区间就越小,当区间 变小时,就需要更多的数位来表示这个区间。 • 采用算术编码每个符号的平均编码长度可以为 小数。
27
算术编码举例(一)
符号 概率 初始区间 00 0.1 [0, 0.1) 01 0.4 [0.1, 0.5) 10 0.2 [0.5, 0.7) 11 0.3 [0.7, 1)
28
算术编码举例(二)
信源分布:
消息序列
区间起始 区间长度
符号
频度
0
1/4
1
3/4
1
1/4 3/4
0
1/4 3/16
1
H ( x) p j log p j
j 1 m m
p
j 1
j
1
14
二进制信源的熵
H
1
0
0.5
1
p
• 二进制信源输出一个二进制数码所携带 的平均信息量最大为1bit。
15
最大离散熵定理的应用
• 对于同一个信源其总的信息量是不变的, 如果能够通过某种变换(编码),使信 源尽量等概率分布,则每个输出符号所 独立携带的信息量增大,那么传送相同 信息量所需要的序列长度就越短。 • 离散无记忆信源的冗余度隐含在信源符 号的非等概率 分布之中。只要H(X)小 于log2m,就存在数据压缩的可能。
16
编码
{X1, X2, …,XL} 信源
消息分组
{a1, a2, a3, …a }
K
信源字母表 码字
编码器 {b1,}
码元表
17
{0,1}
平均码长与熵
• 如果采用单字符二进制编码方式,设字符aj的 编码长度为Lj,则信源字母表的平均码长为:
32
第一类词典编码
• 第一类词典法的想法是企图查找正在压缩的字符序列 是否在以前输入的数据中出现过,然后用已经出现过 的字符串替代重复的部分,它的输出仅仅是指向早期 出现过的字符串的“指针”。
33
第二类词典编码
• 第二类算法的想法是企图从输入的数据中创建一个 “短语词典 (dictionary of the phrases)”,这种短语可以 是任意字符的组合。编码数据过程中当遇到已经在词 典中出现的“短语”时,编码器就输出这个词典中的 短语的“索引号”,而不是短语本身。
L p j Lj
j 1 K
• 根据前面对二进制信源的分析,有:
H (X ) 1 L H (X ) L
p j L j p j log2 p j
j 1 j 1
K
K
在Lj = -log2pj时,平均码长取得极小值H(X)
18
关于离散无记忆平稳信源的结论
最佳线性预测
使误差函数 m se E ( xn xn ) 达到最小值的预测方程式叫做最佳线性预测。
2


求最佳线性预测的各个参数ai,列方程组: E[(xn xn ) 2 ] 0, (i 1 2,...,n 1) , ai n 1 代入 xn ai xi 得到联立方程组:
23
香农-范诺编码
• 香农-范诺编码与Huffman编码相反,采用从 上到下的方法。 • 具体步骤为: (1)首先将编码字符集中的字符按照出现频度 和概率进行排序。 (2)用递归的方法分成两部分,使两个部分的 概率和接近于相等。直至不可再分,即每一个 叶子对应一个字符。 (3)编码。
24
香农-范诺编码举例
19/64 9/64
1
85/256 27/256
• 最后的子区间起始位置= 85/256 = 0.01010101 • 子区间长度 = 27/256 = 0.00011011 • 子区间尾 = 7/16 = 0.0111 • 取编码区间中的一个值,最后编码为:011
相关主题