信息论基础与应用 第五章 无失真信源编码资料课件.ppt
第五章:无失真信源编码,一、信源编码的相关概念,二、定长码及定长信源编码定理,三、变长码及变长信源编码定理,四、变长码的编码方法,五、实用的无失真信源编码方法,第五章:无失真信源编码,信源编码的作用: 使信源适合于信道的传输,用信道能传输的符号来代表信源发出的消息; 在不失真或允许一定失真的条件下,用尽可能少的符号来传递信源消息,提高信息传输率。,以提高通信有效性为目的。通常通过压缩信源的冗余度来实现。采用的一般方法是压缩每个信源符号的平均码长。,1. 信源编码概述,一、信源编码的相关概念,第五章:无失真信源编码,信源编码理论是信息论的一个重要分支,其理论基础是信源编码的两个定理:无失真信源编码定理限失真信源编码定理,本章主要介绍无失真信源编码,它实质上是一种统计匹配编码,根据信源的不同概率分布而选用与之相匹配的码。,1. 信源编码概述(续1),一、信源编码的相关概念,第五章:无失真信源编码,信源的统计剩余度主要决定于以下两个因素 :1)无记忆信源中,符号概率分布的非均匀性;2)有记忆信源中,符号间的相关性及符号概率分布的非均匀性。,1. 信源编码概述(续2),怎样压缩信源的冗余度?1) 去除码符号间的相关性。2) 使码符号等概分布。,一、信源编码的相关概念,第五章:无失真信源编码,2. 信源编码器模型,信宿,信道,信源,编码器,译码器,Y,X,S,S,信源编码:将信源符号序列按一定的数学规律映射成码符号序列的过程。,图1 信源编码器模型,一、信源编码的相关概念,第五章:无失真信源编码,将信源符号集中的符号 (或者长为N的信源符号序列)映射成由码符号 组成的长度为 的一一对应的码符号序列 。,编码器,码字,2. 信源编码器模型(续1),一、信源编码的相关概念,例: 5.1,第五章:无失真信源编码,2. 信源编码器模型(续2),一、信源编码的相关概念,第五章:无失真信源编码,3. N次扩展码,一、信源编码的相关概念,第五章:无失真信源编码,3. N次扩展码(续1),一、信源编码的相关概念,编码器输出的码符号序列 称为码字;长度 称为码字长度,简称码长;全体码字的集合C称为码。若码符号集合为X=0,1,则所得的码字都是二元序列,称为二元码。,第五章:无失真信源编码,4. 关于编码的一些术语,一、信源编码的相关概念,将信源符号集中的每个信源符号 固定的映射成某一个码字 ,这样的码称为分组码。,若一个码中所有码字的码长都相等,则称为定长码; 否则为变长码。,第五章:无失真信源编码,5. 奇异性,若一个码中所有码字互不相同,则称为非奇异码;否则为奇异码。,一、信源编码的相关概念,第五章:无失真信源编码,6. 唯一可译性,若任意一串有限长的码符号序列只能被唯一地译为对应的信源符号序列,则称此码为唯一可译码。,一、信源编码的相关概念,唯一可译码应当满足的条件,码字与信源符号一一对应,2) 不同的信源符号序列对应不同的码字序列,1),6. 唯一可译性(续1),第五章:无失真信源编码,一、信源编码的相关概念,第五章:无失真信源编码,6. 唯一可译性(续2),例1:,1),奇异码,11,译码,奇异码一定不是唯一可译码,一、信源编码的相关概念,第五章:无失真信源编码,6. 唯一可译性(续3),2),非奇异码,0,1 0,0 0,0 1,0,0 1,0 0,0 0,1 0,译码,译码,一、信源编码的相关概念,第五章:无失真信源编码,6. 唯一可译性(续4),3),等长码,非奇异码,0 0 0 1 1 0 1 1,唯一可译码,译码,一、信源编码的相关概念,第五章:无失真信源编码,6. 唯一可译性(续5),4),唯一可译码,1 0,0,1,为非即时码,1 1 0 1 0 0 1 0 0 0,一、信源编码的相关概念,第五章:无失真信源编码,6. 唯一可译性(续6),5),1 0 1 0 0 1 0 0 0 1,唯一可译码,0 1,即时,为即时码,任何一个码字不是其它码字的前缀,一、信源编码的相关概念,第五章:无失真信源编码,7. 即时码,若某个唯一可译码在接收到一个完整的码字时无需参考后续的码符号就能立即译码,则称此码为即时码。,问题: 1) 判断下面的码是否即时码?010110111 2) 等长码是否即时码?,一、信源编码的相关概念,第五章:无失真信源编码,7. 即时码(续1),唯一可译码成为即时码的充要条件: 定理5.1 一个唯一可译码成为即时码的充要条件是其中任何一个码字都不是其他码字的前缀。,一、信源编码的相关概念,7. 即时码(续2),第五章:无失真信源编码,一、信源编码的相关概念,7. 即时码(续3),第五章:无失真信源编码,一、信源编码的相关概念,第五章:无失真信源编码,8. 即时码的构造方法,用树图法可以方便地构造即时码。树中每个中间节点都伸出1至r个树枝,将所有的码字都安排在终端节点上就可以得到即时码。,一、信源编码的相关概念,8. 即时码的构造方法(续1),00,010,011,一阶节点,二阶节点,三阶节点,100,110,101,111,第五章:无失真信源编码,一、信源编码的相关概念,第五章:无失真信源编码,8. 即时码的构造方法(续2),一、信源编码的相关概念,用树图法可以方便地构造即时码。树中每个中间节点都伸出1至r个树枝,将所有的码字都安排在终端节点上就可以得到即时码。每个中间节点都正好有r个分枝的树称为整树(满树)。所有终端节点的阶数都相等的树为完全树,第五章:无失真信源编码,8. 即时码的构造方法(续3),一、信源编码的相关概念,第五章:无失真信源编码,图2 各类码之间的关系,8. 即时码的构造方法(续4),一、信源编码的相关概念,1. 唯一可译定长码存在的条件,对于定长码,非奇异码一定是唯一可译码。所谓非奇异码,即信源符号集中的每一个信源符号与码中的某一个码字 一一对应。设信源符号集中共有 个符号, , 码符号集中共有 种码元, , 定长码码长为 , 则要满足非奇异性必然有,该条件是必要条件,而不是充分条件。,第五章:无失真信源编码,二、定长码及定长信源编码定理,1. 唯一可译定长码存在的条件(续1),如果对N次扩展信源 进行定长编码,要满足非奇异性,须满足条件,其中,当r=2 时,,第五章:无失真信源编码,二、定长码及定长信源编码定理,当N=1时,,1. 唯一可译定长码存在的条件(续2),例2:英文字母表中,每一字母用定长编码转换成二进制表示,码字的最短长度是多少?,解:,信源符号数,码符号数,第五章:无失真信源编码,二、定长码及定长信源编码定理,N=2 H(S) = 1.75,第五章:无失真信源编码,2. 定长信源编码定理,二、定长码及定长信源编码定理,定理5.3.1 设离散平稳无记忆信源的熵为H(S), 若对N次扩展信源 进行定长编码,则对于任意 0,只要满足 则当N足够大时,可实现几乎无失真编码,即译码错误概率 PE 为任意小;反之,则不可能实现无失真编码, 如果 当N足够大时,译码错误概率 PE 为1。,2. 定长信源编码定理(续1),第五章:无失真信源编码,定长编码定理同样也适用于离散平稳有记忆信源,差别是要将信源熵 改为极限熵 。,二、定长码及定长信源编码定理,可以验证,对定长信源编码来说,要想实现无失真信源编码,N常常要取非常大的值。这在实际应用中很难实现。,2. 定长信源编码定理(续2),第五章:无失真信源编码,当r=2时,二、定长码及定长信源编码定理,第五章:无失真信源编码,2. 定长信源编码定理(续3),定义: 为编码信息率 定义: 为编码效率。,比特/信源符号,比特/信源符号,比特/信源符号,二、定长码及定长信源编码定理,第五章:无失真信源编码,2. 定长信源编码定理(续4),根据编码效率的定义,最佳编码效率为:在已知方差和信源熵的条件下,信源符号序列长度N与最佳编码效率和允许编码错误概率 之间的关系为:,二、定长码及定长信源编码定理,例 5.2,如果对信源符号采用定长二元编码,要求编码效率=90%,允许错误概率 ,求所需信源序列长度N。,例5.3 设离散无记忆信源 , 要求 求N。,第五章:无失真信源编码,2. 定长信源编码定理(续5),二、定长码及定长信源编码定理,1. Kraft不等式和McMillan不等式,第五章:无失真信源编码,Kraft定理:即时码存在的充要条件是McMillan定理:唯一可译码存在的充要条件是,三、变长码及变长信源编码定理,1. Kraft不等式和McMillan不等式(续1),任何一个唯一可译码均可用一个相同码长的即时码来代替。 上述定理是存在性定理: 当满足Kraft(或McMillan)不等式时,必然可以构造出即时码(或唯一可译码),否则不能构造出即时码(或唯一可译码)。 该定理不能作为判断一种码是否是即时码(或唯一可译码)的判断依据。,第五章:无失真信源编码,三、变长码及变长信源编码定理,1. Kraft不等式和McMillan不等式(续2),第五章:无失真信源编码,1/2,1/4,1/8,1/8,三、变长码及变长信源编码定理,2. 变长唯一可译码判别方法,步骤:,1.构造F1 :考察 C中所有码字,如果一个码字是另一个码字的前缀,则将后缀作为F1 中的元素。2.构造 :将C 与 比较。如果 C 中有码字是 中元素的前缀,则将相应的后缀放入 中;同样 中若有元素是 C 中码字的前缀,也将相应的后缀放入 中。3.检验 : 1)如果 是空集,则断定码 C 是唯一可译码,退出循环; 2)反之,如果 中的某个元素与 C中的某个元素相同,则断定码 不是唯一可译码,退出循环。 3)如果上述两个条件都不满足,则返回步骤2。,第五章:无失真信源编码,三、变长码及变长信源编码定理,2. 变长唯一可译码判别方法(续),例5.4 :,结论:F5中包含了C中的元素,因此该变长码不是唯一可译码。,第五章:无失真信源编码,问题: 判断 C=1,10,100,1000是否是唯一可译码?,三、变长码及变长信源编码定理,3.紧致码平均码长界限定理,码符号/信源符号,平均码长,对于给定的信源和码符号集,若有一个唯一可译码,其平均长度 小于所有其他唯一可译码,则称这种码为紧致码或最佳码。,第五章:无失真信源编码,三、变长码及变长信源编码定理,3.紧致码平均码长界限定理(续1),紧致码平均码长界限定理: 设离散无记忆信源的熵为H(S),用r 个码符号进行编码,则总可找到一种无失真信源编码,构成唯一可译码,使其平均码长满足:,第五章:无失真信源编码,三、变长码及变长信源编码定理,定理5.6 紧致码平均码长界限定理,3.紧致码平均码长界限定理(续2),第五章:无失真信源编码,三、变长码及变长信源编码定理,3.紧致码平均码长界限定理(续3),第五章:无失真信源编码,平均码长=下限值时,三、变长码及变长信源编码定理,3.紧致码平均码长界限定理(续4),第五章:无失真信源编码,三、变长码及变长信源编码定理,4.无失真变长信源编码定理,香农第一定理(变长无失真信源编码定理): 设离散无记忆信源的熵为 H(S) ,它的N次扩展信源为 ,对扩展信源 进行编码。总可以找到一种编码方法,构成唯一可译码,使平均码长满足:,当 时,有,第五章:无失真信源编码,三、变长码及变长信源编码定理,证明:,4.无失真变长信源编码定理(续1),第五章:无失真信源编码,三、变长码及变长信源编码定理,把香农第一定理推广到一般离散信源,有,并且,4.无失真变长信源编码定理(续2),第五章:无失真信源编码,三、变长码及变长信源编码定理,bit/信源符号,码符号/信源符号,= bit/码符号,信息传输率(码率),r进制单位/信源符号,码符号/信源符号,4.无失真变长信源编码定理(续3),第五章:无失真信源编码,编码效率,三、变长码及变长信源编码定理,例5.5 设离散无记忆信源 , 求 R、及扩展信源的R、 。,4.无失真变长信源编码定理(续4),第五章:无失真信源编码,三、变长码及变长信源编码定理,第五章:无失真信源编码,1. 香农码,编码步骤如下:将信源符号按概率从大到小顺序排列,为方便起见,令 2. 按下式计算第i个符号对应的码字的码长(要取整)3. 计算第i个符号的累加概率4. 将累加概率变换成二进制小数,取小数点后li位数作为第i个符号的码字。,四、变长码的编码方法,1. 香农码(续1),例5.6 对如下信源编码:,第五章:无失真信源编码,四、变长码的编码方法,1. 香农码(续2),第五章:无失真信源编码,四、变长码的编码方法,1. 香农码(续3),平均码长,信源熵,结论: 1) 2) 香农码是即时码,但冗余度稍大,不是最佳码。,编码效率,第五章:无失真信源编码,四、变长码的编码方法,2. 香农-费诺-埃利斯编码,第五章:无失真信源编码,四、变长码的编码方法,1、不用对信源符号按概率大小排序。2、直接计算修正的累加概率3、计算码长,2. 香农-费诺-埃利斯编码(续1),第五章:无失真信源编码,四、变长码的编码方法,3. Huffman码,将信源符号按概率从大到小的顺序排列,令给两个概率最小的信源符号sn-1和sn各分配一个码元“0”和“1”,并将这两个信源符号合并成一个新符号,并用这两个最小的概率之和作为新符号的概率,结果得到一个只包含(n1)个信源符号的新信源。称为信源的第一次缩减信源,用S1表示。将缩减信源S1的符号仍按概率从大到小顺序排列,重复步骤2,得到只含(n2)个符号的缩减信源S2。重复上述步骤,直至缩减信源只剩两个符号为止,此时所剩两个符号的概率之和必为1。然后从最后一级缩减信源开始,依编码路径向前返回,就得到各信源符号所对应的码字。,编码步骤如下:,第五章:无失真信源编码,四、变长码的编码方法,3. Huffman码(续1),第五章:无失真信源编码,四、变长码的编码方法,3. Huffman码(续2),第五章:无失真信源编码,四、变长码的编码方法,码符号/信源符号,3. Huffman码(续3),第五章:无失真信源编码,四、变长码的编码方法,码符号/信源符号,3. Huffman码(续4),第五章:无失真信源编码,四、变长码的编码方法,讨论:1) 两种方法平均码长相等。2) 计算两种码的码长方差:,第二种方法编出的码码字长度变化较小,便于实现。,3. Huffman码(续5),第五章:无失真信源编码,四、变长码的编码方法,3. Huffman码(续6),离散信源如下:,解:编码过程略,Huffman编码结果如下:,第五章:无失真信源编码,四、变长码的编码方法,3. Huffman码(续7),平均码长为信源熵为编码效率为,第五章:无失真信源编码,四、变长码的编码方法,3. Huffman码(续8),注意:霍夫曼编码后的码字不是惟一的。1)每次对缩减信源两个概率最小的符号分配“0”或“1”码元是任意的,所以可得到不同的码字。不同的码元分配,得到的具体码字不同,但码长li不变,平均码长也不变,所以没有本质区别;2)缩减信源时,若合并后的概率与其他概率相等,这几个概率的次序可任意排列,但得到的码字不相同,对应的码长也不相同,但平均码长也不变。,第五章:无失真信源编码,四、变长码的编码方法,定理5.8 霍夫曼码是紧致码,101000001,10001,3. Huffman码(续9),第五章:无失真信源编码,四、变长码的编码方法,假定缩减后信源为 共有m个元素。,缩减前信源为 共有m+1个元素。,其中第k个元素码长 ,概率为,最短,则缩减前,4. r 元霍夫曼码,第五章:无失真信源编码,四、变长码的编码方法,4. r 元霍夫曼码(续1),第五章:无失真信源编码,四、变长码的编码方法,4. r 元霍夫曼码(续2),第五章:无失真信源编码,四、变长码的编码方法,5. Fano码,编码步骤如下:,将概率按从大到小的顺序排列,令将依次排列的信源符号按概率分成两组,使每组概率和尽可能接近或相等。给每一组分配一位码元“0”或“1”。将每一分组再按同样方法划分,重复步骤2和3,直至概率不再可分为止。,第五章:无失真信源编码,四、变长码的编码方法,5. Fano码(续1),例,第五章:无失真信源编码,四、变长码的编码方法,5. Fano码(续2),解:,第五章:无失真信源编码,四、变长码的编码方法,5. Fano码(续3),平均码长为信源熵为编码效率为,第五章:无失真信源编码,四、变长码的编码方法,5. Fano码(续4),四、变长码的编码方法,香农码、Huffman码、Fano码总结,香农码、费诺码、霍夫曼码都考虑了信源的统计特性,使经常出现的信源符号对应较短的码字,使信源的平均码长缩短,从而实现了对信源的压缩。香农码编码结果唯一,但在很多情况下编码效率不是很高。费诺码和霍夫曼码的编码方法都不唯一。费诺码比较适合于对分组概率相等或接近的信源编码。霍夫曼码对信源的统计特性没有特殊要求,编码效率比较高,对编码设备的要求也比较简单,因此综合性能优于香农码和费诺码。,第五章:无失真信源编码,四、变长码的编码方法,首先是速率匹配问题其次是差错扩散问题第三是霍夫曼码需要查表来进行编译码。信源统计特性未知时,怎么办?可采用所谓通用编码的方法。,Huffman码编码应用中的一些问题,第五章:无失真信源编码,0,1 0,0 0,0 1,0,0 1,0 0,0 0,1 0,译码,译码,四、变长码的编码方法,第五章:无失真信源编码,五、实用的无失真信源编码方法,游程编码,第五章:无失真信源编码,五、实用的无失真信源编码方法,游程编码(续1),BBBBBBBBBBXXXXXXXXXAAAAAAUUUUUUUUUUUUU,编码: B#10X#9A#6U#13,对于黑、白二值文件:1、黑白游程总是交替出现,可以规定第一游程为白游程。2、不同游程长度出现的概率不同,对游程长度进行编码采用霍夫曼编码,概率大的编长码,概率小的编短码。,第五章:无失真信源编码,五、实用的无失真信源编码方法,游程编码(续2),第五章:无失真信源编码,五、实用的无失真信源编码方法,73白游程=64+9 :110111010000110101010110101011110110000110011000000000001 0白1黑15白4黑77白5黑 压缩比=1728/47=36.7:1,结尾码,组合基干码,第五章:无失真信源编码,五、实用的无失真信源编码方法,算术编码,10001001,第五章:无失真信源编码,五、实用的无失真信源编码方法,算术编码(续1),第五章:无失真信源编码,五、实用的无失真信源编码方法,算术编码(续2),第五章:无失真信源编码,五、实用的无失真信源编码方法,LZW编码,输入符号序列:ABCABDABCAAAABBBABCABCA,前缀 尾字符,序号,0X0000X0410X0FF,0X1000X1010X1020X1030X1040X1050X1060X1070X1080X1090X10A0X10B0XFFF,Q(FFF) Q(FFF) AQ(FFF)A(041) BB CC AAB DD AAB CCA AA AAA BB BBB AABC A,第五章:无失真信源编码,五、实用的无失真信源编码方法,LZW编码(续1),