没有合适的资源?快使用搜索试试~ 我知道了~
哈夫曼压缩算法步骤,请参考具体的内容
需积分: 9 16 下载量 38 浏览量
2010-02-03
09:59:00
上传
评论
收藏 48KB DOC 举报
温馨提示
试读
3页
了解huffman算法实现的步骤及过程,并附有具体的案例以及答案了解huffman算法实现的步骤及过程,并附有具体的案例以及答案,了解huffman算法实现的步骤及过程,并附有具体的案例以及答案了解huffman算法实现的步骤及过程,并附有具体的案例以及答案了解huffman算法实现的步骤及过程,并附有具体的案例以及答案,了解huffman算法实现的步骤及过程,并附有具体的案例以及答案了解huffman算法实现的步骤及过程,并附有具体的案例以及答案了解huffman算法实现的步骤及过程,并附有具体的案例以及答案,了解huffman算法实现的步骤及过程,并附有具体的案例以及答案
资源推荐
资源详情
资源评论
Huffman(哈夫曼)编码
什么是 Huffman(哈夫曼)编码?
哈夫曼编码是一种无失真的数据压缩编码,这种编码结果经解码后可以无失真地恢复
出原图像。哈夫曼编码于 1952 年问世,迄今为止,仍经久不衰,广泛应用于各种数据压缩
技术中,为熵编码(和无损压缩法)中的最佳编码方法,是对统计独立信源能达到最小平
均码长的编码方法,也即最佳码。最佳性可从理论上证明。这种码具有即时性和唯一可译
性。
优点:当信源符号概率是 2 的负幂次方时, Huffman 编码法编码效率达到 100%。一般
情况下,它的编码效率要比其它编码方法的效率高,是最佳变长码。
缺点:Huffman 码依赖于信源的统计特性,必须先统计得到信源的概率特性才能编码,
这就限制了实际的应用。通常可在经验基础上预先提供 Huffman 码表,此时性能有所下降。
最佳编码定理:在变字长码中,对于出现概率大的信息符号编以短字长的码,对于出现概
率小的信息符号编以长字长的码,如果码字长度严格按照符号概率的大小的相反顺序排列,则
平均码字长度一定小于按任何其他符号顺序排列方式得到的码字长度。
哈夫曼编码方法
哈夫曼编码方法将信源符号按概率大小顺序排列,并设法按逆序分配码字的长度。在
分配码字长度时,首先将出现概率最小的两个符号的概率相加,合成一个概率;第二步把
这个合成概率看成是一个新组合符号的概率,重复上述做法,直到最后只剩下两个符号的
概率为止。完成以上概率相加顺序排列后,再反过来逐步向前进行编码,每一步有两个分
支,各赋予一个二进制码,可以对概率大的赋编码为 0,概率小的赋编码为 1。反之,也可
以对概率大的赋编码为 1,概率小的赋编码为 0。
概率统计,得到 n 个不同概率的信号;
将 n 个信源信息符号的 n 个概率,按概率大小排序;
将最后两个小概率相加,概率个数减为 n-1;
将 n-1 个概率重新排序;
再将最后两个小概率相加,概率个数减为 n-2;
如此反复 n-2 次,得到只剩两个概率序列;
以二进制码元(0,1)赋值,构成 Huffman 码字。
通常情况下,大数用 0 表示,小数用 1,相同 ,则上面用 0,下面用 1 表示。
哈夫曼码字长度和信息符号出现概率大小次序正好相反,即大概率信息符号分配短码,
小概率信息符号分配长码。
哈夫曼编码举例
信源符号的概率如下,求其 Huffman 编码。
X X1 X2 X3 X4 X5 X6
P(X)
0.28 0.25 0.19 0.15 0.08 0.05
1
资源评论
jstuych
- 粉丝: 1
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功