2022年2022年霍夫曼编码的matlab实现 2.pdf
《2022年2022年霍夫曼编码的matlab实现 2.pdf》由会员分享,可在线阅读,更多相关《2022年2022年霍夫曼编码的matlab实现 2.pdf(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、重庆交通大学信息科学与工程学院综合性设计性实验报告专 业班 级: 通信工程 2012 级 1 班学号:631206040118 姓名:王松实验所属课程:信息论与编码实验室 (中心):软件与通信实验中心指 导 教 师 :黄大荣2015 年 4 月名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 6 页 - - - - - - - - - 教师评阅意见:签名:年月日实验成绩:霍夫曼编码的 matlab 实现一、实验目的和要求。利用哈夫曼编码进行通信可以大大提高信道的利用率,缩短
2、信息传输的时间,降低传输成本 。本实验用 Matlab 语言编程实现霍夫曼( Huffman)编码。二、实验原理 。霍夫曼( Huffman)编码算法是满足前缀条件的平均二进制码长最短的编-源输出符号, 而将较短的编码码字分配给较大概率的信源输出。算法是:在信源符号集合中, 首先将两个最小概率的信源输出合并为新的输出,其概率是两个相应输出符号概率之和。 这一过程重复下去, 直到只剩下一个合并输出为止,这个最后的合并输出符号的概率为1。这样就得到了一张树图,从树根开始,将编码符号1 和0 分配在同一节点的任意两分支上,这一分配过程重复直到树叶。 从树根到树叶途经支路上的编码最后就构成了一组异前置
3、码,就是霍夫曼编码输出。离散无记忆信源:例如Uu1u2u3u4u5P( U) = 0.4 0.2 0.2 0.1 0.1 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 6 页 - - - - - - - - - 码字 Wi信符 si概率P(si) 编码过程第一次第二次第三次W1=0 W2=10 W3=111 W4=1101 W5=1100 S1S2 S3S4S50.4 0.2 0.2 0.1 0.1 0.4 0.2 0.2 1 0.2 0 0.4 0.4 1 0.2 0
4、0.6 10.4 0 1A(1) 0 通过上表的对信源缩减合并过程,从而完成了对信源的霍夫曼编码。三、实验步骤分为两步,首先是码树形成过程: 对信源概率进行合并形成编码码树。然后是码树回溯过程:在码树上分配编码码字并最终得到霍夫曼编码。1、码树形成过程:将信源概率按照从小到大顺序排序并建立相应的位置索引。然后按上述规则进行信源合并,再对信源进行排序并建立新的位置索引,直到合并结束。在这一过程中每一次都把排序后的信源概率存入矩阵G 中,位置索引存入矩阵 Index 中。这样,由排序之后的概率矩阵G以及索引矩阵 Index就可以恢复原概率矩阵 P了,从而保证了回溯过程能够进行下去。2、码树回溯过程
5、 :在码树上分配编码码字并最终得到Huffman 编码。从索引矩阵 M 的末行开始回溯。(1) 在Index 的末行 2元素位置填入 0和1。(2) 根据该行索引 1 位置指示,将索引 1 位置的编码( 1)填入上一行的第一、第二元素位置,并在它们之后分别添加0和 1。(3) 将索引不为 1的位置的编码值( 0)填入上一行的相应位置(第3 列)。(4) 以Index 的倒数第二行开始向上, 重复步骤 (1) (3),直到计算至 Index的首行为止。四、程序代码:% 取得信源概率矩阵 , 并进行合法性判断clear; P=input(请输入信源概率向量 P=); N=length(P); fo
6、r component=1:1:N 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 6 页 - - - - - - - - - if(P(component)0.0001) error(信源概率之和必须为 1); end % 建立各概率符号的位置索引矩阵Index, 利于编码后从树根进行回溯, 从而得出对应的编码Q=P Index=zeros(N-1,N); %初始化 Index for i=1:N-1 Q,L=sort(Q); Index(i,:)=L(1:N-i+1)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年霍夫曼编码的matlab实现 2022 年霍夫曼 编码 matlab 实现
限制150内