首页 信息论霍夫曼香农费诺编码

信息论霍夫曼香农费诺编码

举报
开通vip

信息论霍夫曼香农费诺编码费诺编码-信息论霍夫曼、香农信息论第二次作业一一数据压缩算法的实现班别:1307011班13070110009学号:姓名:黄丹丹-、实验目的:费诺编码和霍夫-通过该实验,利用香农编码曼编码实现图像数据压缩。.二、实验原理:-费诺编码1、香农的次序排,首先将信源符号以概率递减列进来,将排列好的信源符号划分为两大组,于一个二,同并各赋相概使第组的率和近于元码符号”0”和”1”•然后,将每一大组的信源符号再分成两组,使同一组的两个小组的概率和近于相同,并又分别赋予一个二元码符号。依次下去,直至每一个小组只剩下一个信源符号...

信息论霍夫曼香农费诺编码
费诺编码-信息论霍夫曼、香农信息论第二次作业一一数据压缩算法的实现班别:1307011班13070110009学号:姓名:黄丹丹-、实验目的:费诺编码和霍夫-通过该实验,利用香农编码曼编码实现图像数据压缩。.二、实验原理:-费诺编码1、香农的次序排,首先将信源符号以概率递减列进来,将排列好的信源符号划分为两大组,于一个二,同并各赋相概使第组的率和近于元码符号”0”和”1”•然后,将每一大组的信源符号再分成两组,使同一组的两个小组的概率和近于相同,并又分别赋予一个二元码符号。依次下去,直至每一个小组只剩下一个信源符号为止。这样,信源符号所对应的码符号序列则为编得的码字。译码原理,按照编码的二叉树从树根开始,按译码序列进行逐个的向其叶子结点走,直到找到相应的信源符号为止。之后再把指示标记回调到树根,按照同样的方式进行下一序列的译码到序列结束。如果整个译码序列能够完整的译出则返回成功,否则则返回译码失败。、霍夫曼编码2・码变可的编词码霍夫曼编属于码长度年提出的一种编码方法,类,是霍夫曼在1952即从下到上的编码方法。同其他码词长度可变的编码一样,可区别的不同码词的生成是基于不同符号出现的不同概率。生成霍夫曼”树码称基编码算法于一种为“编)的技术。算法步骤如下:(codingtree)初始化,根据符号概率的大小按由大到1(小顺序对符号进行排序。)把概率最小的两个符号组成一个新符号2(,即新符号的概率等(节点)于这两个符号概率之和。步,直到形成一个符号为止2(3)重复第1(树),其概率最后等于。)从编码树的根开始回溯到原始的符号,(4并将每一下分枝赋值为1,上。0分枝赋值为三、实验环境.matlab7・1四、实验内容费、对于给定的信源的概率分布,用香农1-诺编码实现图像压缩、对于给定的信源的概率分布,用霍夫曼编2码实现图像压缩五、实验过程费诺编码香农1.-1编码functionc=shannon(p)%p=[0.20.150.150.10.10.10.10.1]%shannon(p)[p,index]=sort(p)p=fliplr(p)n=length(p)pa=0fori=2:npa(i)二pa(i-l)+p(i-l)endk=ceil(-Iog2(p))c=cell(1,n)fori=l:nc{i}二”tmp=pa(i)forj=l:k(i)tmp二tmp*2iftmp>=ltmp=tinpTc{i(j)=relsec{i}(j)二’0endendendc=fliplr(c)c(index)=c2编码clcclear;A=[0.4,0.3,0.1,0.09,0.07,0.04A=fliplr(sort(A));%降序排列[m,n]=size(A);fori=l:n1生成B的第列B(i,l)=A(i);%end列的元素2第B生成%・a=sum(B(:,1))/2;fork=l:n-1ifabs(sum(B(l:k,1))-a)<=abs(sum(B(l:k+1,l))-a)break;endend列的元素2Bfori=l:n%生成第ifi<=kB(i,2)=0;elseB(i,2)=l;endend%生成第一次编码的结果END=B(:,2)';END=sym(END);3%生成第列及以后几列的各元素j=3;while(j〜二0)p=l;while(p<=n)X二B(p,j-1);forq=p:nifx==-lbreak;elseifB(q,j-l)==xy=i;continue;elsey=0;break;endendendify=lq二q+1;endifq二二P〔q—P=lB(p,j)=-l;elseifq_p二二2B(p,j)=0;END(p)=[char(END(p)),'O'];B(q-1,j)=l;END(q-1)=[char(END(q-1)),'1’];elsea=sum(B(p:q-1,1))/2;fork=p:q-2ifabs(sum(B(p:k,1))-a)<=abs(sum(B(p:k+1,l))-a);break;endendfori=p:q-lifi<=kB(i,j)=0;END(i)=[char(END(i)),'O'];elseB(i,j)=l;END(i)=[char(END(i))/r];endendendendP=Q;endC=B(:,j);D=find(C==-l);[e,f]=size(D);ife==nj=o;elsej=j+l;endendBAENDfori=l:n[u,v]=size(char(END(i)));L(i)=v;endavlen=sum(L・*A)霍夫曼编码2.c=huffman(p)functionn=size(p,2)ifn==lc=cell(1,1)c{l}=,returnend[pl,il]=min(p)index二[(1:il-1),(il+1:n)]p=p(index)n=n-l[p2,i2]=min(p)index2二[(1:i2T),(i2+l:n)]p=p(index2);i2=index(i2)index=index(index2)p(n)=pl+p2c=huffman(p)c{n+l}=strcat(c{n},i)c{n}二strcat(c{n},,0,)index=[index,il,i2_c(index)=c
本文档为【信息论霍夫曼香农费诺编码】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_179289
暂无简介~
格式:doc
大小:10KB
软件:Word
页数:0
分类:
上传时间:2019-07-18
浏览量:11