信息论编码matlab实现.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
信息论编码matlab实现

Im=imread(1.png); figure(1);imshow(Im),title(原图); %图像灰度化I=Im(:,:,3);Im=I;figure(2);imshow(Im),title(灰度图);Im=double(Im);[m,n]=size(Im);ImgSize=m*n;ImgLeavel = reshape(Im, 1, prod(size(Im)));i=unique(ImgLeavel);j=ImgLeavel;[Num,Leavel]=hist(j,i); %i是像素点的个数,j是像素值sort(Leavel);Leavel=fliplr(Leavel);for k=1:256 p(k) = Num(k)/ImgSize; %求得概率endfigure(3);hist(p,100),title(灰度值统计);for k=1:255 %冒泡法排序得到P从大到小的排列for L=1:256-kif(p(L)p(L+1)) tmp=p(L); p(L)=p(L+1); p(L+1)=tmp;endendendCodeLength=ceil(-log2(p)); %计算码长AddP = zeros(size(p));AddP(1)=0; %计算累加概率for k=2:256 AddP(k)=AddP(k-1)+p(k-1);endsheet=cell(5,256);for k=1:256 x=dec(AddP(k),CodeLength(k)); %得到码表 sheet(1,k)={[x]}; sheet(2,k)={Leavel(k)}; sheet(3,k)={AddP(k)}; sheet(4,k)={p(k)}; sheet(5,k)={Num(k)};endsheet=sheet;global sheet;%编码Img=cell(m,n);for k1=1:mfor k2=1:n pixel=Im(k1,k2); Img{k1,k2}=Code(pixel);endend%解码DeImg=zeros(m,n);for k1=1:mfor k2=1:n Scode=Img{k1,k2}; DeImg(k1,k2)=Decode(Scode);endendfigure(7),imshow(uint8(DeImg)),title(还原后的图像);function pix=Decode(Scode)global sheet;for k=1:256if(isequal(Scode,sheet{k,1})) pix=sheet{k,2};break;endendfunction record=dec(DecNum,length)count=0;tempnum=DecNum;record=zeros(1,length);while(length) count=count+1;%长度小于lengthif(countlength) length=0;end tempnum=tempnum*2;%小数转换为二进制,乘2取整if tempnum1 record(count)=1; tempnum=tempnum-1;elseif(tempnum==1) record(count)=1; length=0;else record(count)=0; endendfunction Scode=Code(pix)global sheet;Leavel=zeros(256,1);for k1=1:256 Leavel(k1)=sheet{k1,2};endLocation=find(Leavel==pix);Scode=sheet{Location,1};

文档评论(0)

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

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

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档