数据压缩与信源编码第3讲霍夫曼编码..ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
自适应Huffman编码 Adaptive Huffman coding ( Dynamic Huffman coding ) 自适应Huffman编码的思想是从一个空的Huffman编码树开始,空的Huffman编码树仅包含一个空节点NYT(Not Yet Transmitted),表示还没有开始数据传送。 NYT 自适应Huffman编码 Adaptive Huffman coding ( Dynamic Huffman coding ) 自适应Huffman编码的思想是从一个空的Huffman编码树开始,空的Huffman编码树仅包含一个空节点NYT(Not Yet Transmitted),表示还没有开始数据传送。 NYT 读入的第1个符号,不做压缩直接进入输出码流,同时将其添加进树中赋予码字。 1 1 1 0 a 输入a,输自适应Huffman编码 Adaptive Huffman coding ( Dynamic Huffman coding ) NYT 2 1 1 0 a 每读入1个新的符号,输出NYT,然后将新符号不做压缩直接进入输出码流,同时将其添加进树中赋予码字。 输入b,输出001100010 1 1 b 1 0 NYT 1 1 1 0 a 自适应Huffman编码 Adaptive Huffman coding ( Dynamic Huffman coding ) 如果读入一个已有的符号,则直接输出编码,实现数据压缩。 NYT 2 1 1 0 a 输入b,输出01 1 1 b 1 0 自适应Huffman编码 Adaptive Huffman coding ( Dynamic Huffman coding ) 如果读入一个已有的符号,则直接输出编码,实现数据压缩。 NYT 3 1 1 0 a 2 2 b 1 0 每读入一个已有的符号,需要修改权值,更新码树。 NYT 3 2 1 0 b 1 1 a 1 0 自适应Huffman编码 Adaptive Huffman coding ( Dynamic Huffman coding ) 每读入1个新的符号,输出NYT,然后将新符号不做压缩直接进入输出码流,同时将其添加进树中赋予码字。 NYT 3 2 1 0 b 1 1 a 1 0 NYT 4 2 1 0 b 2 1 a 1 0 输入c,输出0001100010 1 c 1 0 自适应Huffman编码 Adaptive Huffman coding ( Dynamic Huffman coding ) 如果读入一个已有的符号,则直接输出编码,实现数据压缩。同时修改权值,更新码树。 NYT 5 2 1 0 b 3 2 a 1 0 输入a,输出01 1 c 1 0 NYT 4 2 1 0 b 2 1 a 1 0 1 c 1 0 自适应Huffman编码 Adaptive Huffman coding ( Dynamic Huffman coding ) 数据abbca的自适应Huffman编码为001100010,01,0001100011,01[0] 以字节表示为0x61,0x31,0x23,0x1c 大作业1 编写Huffman压缩程序Huffman_Code 对*.txt进行压缩,压缩结果存储在*_code.txt中。 编写Huffman解压缩程序Huffman_Decode 对*_code.txt进行解压,恢复结果存储在*_decode.txt中。 编写试验报告 1.试验目的;2.试验内容。3.算法流程。4.程序设计说明。5.程序压缩性能评价。6.程序源代码。7.测试数据文件。 作业要求 时间:4月22日前提交至sanhu@mail.xidian.edu.cn 数据压缩与信源编码 第3讲 霍夫曼编码 西安电子科技大学 电子工程学院 主讲 :林三虎 Huffman编码算法 基本规则 出现概率越高的符号采用越短的编码。 出现概率最低的两个符号采用相同长度的编码。 具体步骤 将符号出现概率从高到低排序。 将概率最低的两个符号合并成一个符号,它们概率之和为新符号的概率。 重复上面两个步骤,直到概率为1。 每次合并符号,用0和1区分两个符号。 从根节点开始搜索每个符号,记录其0,1序列即为该符号的编码。 Huffman编码算法 a2(0.4) a1(0.2) a3(0.2) a4(0.1) a5(0.1) a2(0.4) a1(0.2) a3(0.2) a4’(0.2) a2(0.4) a1(0.2) a3’(0.4) a2(0.4) a1‘(0.6) a2’(1.0) 0 1 0 1 0 1 0 1 符号 a1 a2 a3 a4 a5 概率

文档评论(0)

586334000 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档