- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DIP上机报告
题 目:数字图像处理上机报告〔第4次〕
学 校: 中国地质大学〔武汉〕
指 导 老 师: 傅华明
姓 名:龙勋
班 级 序 号: 071112-06
目录
TOC \o 1-3 \h \u HYPERLINK 1图像霍夫曼编码与解码以及熵,平均码长,冗余度的计算 3
HYPERLINK 2上机小结 10
注:给定的文件夹中只需运行test脚本就可以得到结果,从workspace中看到相应的数据
题目要求:
对图2实施哈夫曼编码和解码,计算图象熵,平均码长和 冗余度;
算法设计:
1.遍历图像,统计各个像素灰度值的概率
2.找出概率最小的两个,在最小概率所代表的灰度值编码中加1,在另一个较小的概率所代表的灰度值编码中加0
3.合并两个概率,成为一个新的元素,如此重复下去,直到最后剩两个元素
4.进行编码的逆过程,即解码过程
5.计算相应的数据
程序代码:
运行代码:
clear
in=[2,2,3,5,0,0,5,5,
5,4,1,1,2,2,1,5,
4,6,5,5,7,2,2,3,
5,2,2,2,3,4,4,4,
6,2,1,4,1,1,2,2,
1,5,7,6,5,5,7,2,
2,4,4,1,2,2,1,5,
2,3,1,2,2,1,5,0];
[p,out] = gailv( in );
[code] = Huffman(0:7,p); %进行霍夫曼编码
[Coded_Img]=Encode(in,code); %对图像进行编码
[H,L,R]=GetInfo(code); %计算熵、平均码长、冗余度
[Img]=Decode(Coded_Img,code); %对图像进行解码
图像各像素灰度的概率计算:
function[ p,out ]=gailv( in )
[M,N]=size(in);
out = zeros(4,8);
p = zeros(1,8);
for i=1:8
out(1,i)=i-1;
end
for i=1:M
for j=1:N
for k=1:8
if in(i,j) == out(1,k)
out(2,k)=out(2,k)+1;
end
end
end
end
for i=1:8
out(3,i)=out(2,i)/(M*N);
p(1,i)=out(2,i)/(M*N);
end
end
霍夫曼编码过程:
function [code_out] = Huffman(s,p)
[Ms,Ns]=size(s);
if (Ms==1)
sig=s;
else
sig=s;
end
%s为各元素名称 p为各元素概率
[Ms,Ns]=size(sig);
[Mp,Np]=size(p);
if (Ms~=Np)
return;
end
code=cell(Ms,4);%建立编码cell
code_out=cell(Ms,3);%建立输出cell
coding=cell(Ms,2);%建立编码过程中用到的cell
for i=1:Ms
code{i,1}=sig(i,:);%第一列为元素名称
code{i,2}=[];%第二列为编码
code{i,3}=p(i);%第三列为元素概率
code{i,4}=[];%第四列为元素概率排行
coding{i,1}=p(i);%第一行为元素概率
coding{i,2}=i;%第二行表示此概率由哪些元素组成
end
[m,l]=Cell_min(coding(:,1));%找出最小值
while (m1)%假设最小值小于1〔编码尚未完成〕
[m1,l1]=Cell_min(coding(:,1));%找出最小值
temp_p=coding{l1,1};%记录下最小概率
coding{l1,1}=2;%将概率改为2,那么以后不会再次取到
[m2,l2]=Cell_min(coding(:,1));%找出次小值
coding{l2,1}=coding{l2,1}+temp_p;%最小概率和次小概率相加得到新元素概率
[k,mp]=size(coding{l1,2});%考虑最小概率包含了哪些元素
for i=1:mp
code{coding{l1,2}(i),2}=[1,code{co
您可能关注的文档
- 国内外铁路综合客运枢纽信息系统发展经验及启示20100106.doc
- 国土资源数据库数据质量检查验收规范.doc
- 江苏伟信-全省勘察设计工作座谈会交流材料new.ppt
- 固定资产管理系统背景、功能及特点.doc
- 毛泽东诗词与中共党史.ppt
- 四年级语文上册《语文园地四》练习题.doc
- 汽车保险与理赔知识.ppt
- 国旗下的讲话之“提倡勤俭节约-反对铺张浪费”倡议书.doc
- 四轮定位原理通俗解释以及基本操作方法.doc
- 汽车检测线专项训练-5制动力-侧滑-悬挂检测.ppt
- 第十一章 电流和电路专题特训二 实物图与电路图的互画 教学设计 2024-2025学年鲁科版物理九年级上册.docx
- 人教版七年级上册信息技术6.3加工音频素材 教学设计.docx
- 5.1自然地理环境的整体性 说课教案 (1).docx
- 4.1 夯实法治基础 教学设计-2023-2024学年统编版九年级道德与法治上册.docx
- 3.1 光的色彩 颜色 电子教案 2023-2024学年苏科版为了八年级上学期.docx
- 小学体育与健康 四年级下册健康教育 教案.docx
- 2024-2025学年初中数学九年级下册北京课改版(2024)教学设计合集.docx
- 2024-2025学年初中科学七年级下册浙教版(2024)教学设计合集.docx
- 2024-2025学年小学信息技术(信息科技)六年级下册浙摄影版(2013)教学设计合集.docx
- 2024-2025学年小学美术二年级下册人美版(常锐伦、欧京海)教学设计合集.docx
文档评论(0)