《数字图像处理》实验教学指导书DOC.docx

上传人:b****3 文档编号:11746599 上传时间:2023-06-02 格式:DOCX 页数:15 大小:83.90KB
下载 相关 举报
《数字图像处理》实验教学指导书DOC.docx_第1页
第1页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第2页
第2页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第3页
第3页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第4页
第4页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第5页
第5页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第6页
第6页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第7页
第7页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第8页
第8页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第9页
第9页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第10页
第10页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第11页
第11页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第12页
第12页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第13页
第13页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第14页
第14页 / 共15页
《数字图像处理》实验教学指导书DOC.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

《数字图像处理》实验教学指导书DOC.docx

《《数字图像处理》实验教学指导书DOC.docx》由会员分享,可在线阅读,更多相关《《数字图像处理》实验教学指导书DOC.docx(15页珍藏版)》请在冰点文库上搜索。

《数字图像处理》实验教学指导书DOC.docx

《数字图像处理》实验教学指导书DOC

《数字图像处理》实验教学指导书

班级12网络工程1~2班

12信安1班

实验教师王曦实验室主任教学院长

实验个数4实验总学时8

2015年10月30日

目录

实验一图像FFT变换.....................................................................1一、实验目的及要求..........................................................................1二、实验环境......................................................................................1三、实验内容......................................................................................1四、参考程序......................................................................................2实验二图像的均衡化处理....................................................................8一、实验目的及要求..........................................................................8二、实验环境......................................................................................8三、实验内容......................................................................................8四、参考程序......................................................................................9实验三图像的锐化处理......................................................................13一、实验目的及要求........................................................................13二、实验环境....................................................................................13三、实验内容....................................................................................13四、参考程序....................................................................................13实验四图像的哈夫曼编码..................................................................17一、实验目的及要求........................................................................17二、实验环境....................................................................................17三、实验内容....................................................................................17四、参考程序....................................................................................17五实验报告模板..................................................................................22一、实验目的....................................................................................22二、实验内容....................................................................................22三、实验步骤和设计思想................................................................23四、程序清单....................................................................................23五、实验调试记录............................................................................23六、实验结果及其分析....................................................................24七、实验心得....................................................................................24

实验一图像FFT变换

一、实验目的及要求

1.学习Matlab软件的使用和编程

2.理解傅里叶变换的基本原理;

3.掌握傅里叶变换的移中性和旋转不变性;

4.要求对给定的灰度图像做旋转变换和FFT变换,对旋转前后图像的频谱作比较和分析;

二、实验环境

Windows2003或WindowsXP,Matlab编程环境

三、实验内容

1)产生亮块图像f1(x,y)(128×128,暗处灰度值为0,亮处灰度

值为255),对其进行离散傅里叶变换,同屏显示原图像及其频谱图。

2)在上题所给图像f1(x,y)的基础上,令f2(x,y)=(-1)x+yf1(x,y),对

其进行离散傅里叶变换,同屏显示原图像f1(x,y)及其频谱图,

以及f2(x,y)的频谱图。

3)将第1)题的f1(x,y)顺时针旋转45度得到f3(x,y),对其进行离散傅里叶变换,同屏显示图像f1(x,y)、f3(x,y)及其中心化后的频谱图。

四、参考程序

%1:

产生亮块图像f1(x,y)(128×128,暗处灰度值为0,亮处灰度值为255),

%对其进行离散傅里叶变换,同屏显示原图像及其频谱图。

%Matlab源程序如下:

clcclearall

%产生亮块图像f1(x,y)

f1=zeros(128,128);forx=24:

104fory=48:

80f1(x,y)=255;end

endfigure

(1);subplot(1,2,1);imshow(f1);xlabel('(a)亮块图像f1(x,y)');

axison;

%f1(x,y)的傅里叶变换

FFT_f1=fft2(f1);

%求FFT_f1的频谱

FFT_f1_abs=abs(FFT_f1);tmax=FFT_f1_abs(1,1);tmin=FFT_f1_abs(1,1);forx=1:

128fory=1:

128iftmax

end

iftmin>FFT_f1_abs(x,y)tmin=FFT_f1_abs(x,y);endend

enddelta=tmax-tmin;forx=1:

128fory=1:

128

FFT_f1_abs(x,y)=255*(FFT_f1_abs(x,y)-tmin)/delta;%作归

一化处理

end

endsubplot(1,2,2);imshow(FFT_f1_abs);xlabel('(b)f1(x,y)的频谱');

axison;

%2.在上题所给图像f1(x,y)的基础上,令f2(x,y)=(-1)x+yf1(x,

y),对其进行离散傅里叶变换,同屏显示原图像f1(x,y)及其频谱图,

以及f2(x,y)的频谱图。

%f2(x,y)的频谱图

f2=f1;forx=1:

128fory=1:

128f2(x,y)=(-1)^(x+y)*f1(x,y);end

end

FFT_f2=fft2(f2);FFT_f2_abs=abs(FFT_f2);tmax=FFT_f2_abs(1,1);tmin=FFT_f2_abs(1,1);forx=1:

128fory=1:

128

iftmax

end

iftmin>FFT_f2_abs(x,y)tmin=FFT_f2_abs(x,y);

end

end

enddelta=tmax-tmin;forx=1:

128fory=1:

128

FFT_f2_abs(x,y)=255*(FFT_f2_abs(x,y)-tmin)/delta;end

endsubplot(1,3,3);imshow(FFT_f2_abs);xlabel('(c)f2(x,y)的频谱图');

axison;

%3.产生亮块图像f1(x,y)(128×128,暗处灰度值为0,亮处灰度值为255),

%将f1(x,y)顺时针旋转45度得到f3(x,y),

%同屏显示图像f1(x,y)、f3(x,y)及其中心化后的频谱图。

%原图像f1(x,y)顺时针旋转45度得到f3(x,y)

f3=imrotate(f1,-45,'bilinear');subplot(2,2,3);imshow(f3);xlabel('(c)图像f3(x,y)');axison;

%求f3(x,y)的频谱中心化

forx=1:

128fory=1:

128f3(x,y)=(-1)^(x+y)*f3(x,y);end

end

FFT_f3=fft2(f3);FFT_f3=abs(FFT_f3);tmax=FFT_f3(1,1);tmin=FFT_f3(1,1);forx=1:

128fory=1:

128iftmax

iftmin>FFT_f3(x,y)tmin=FFT_f3(x,y);

end

end

enddelta=tmax-tmin;forx=1:

181fory=1:

181

FFT_f3(x,y)=255*(FFT_f3(x,y)-tmin)/delta;end

endsubplot(2,2,4);imshow(FFT_f3);xlabel('(d)f3(x,y)的频谱');

axison;

实验二图像的均衡化处理

一、实验目的及要求

1.学习Matlab软件的使用和编程

2.掌握图像的均衡化处理算法原理及步骤;

3.要求对明暗不同的图像分别作均衡化处理。

4.分析图像的均衡化处理结果;二、实验环境

Windows2003或WindowsXP,Matlab编程环境

三、实验内容

分别选用如下三幅较暗、动态范围较窄和较亮的图像,分别进行直方图均衡化处理,并对处理结果作分析;

(a)较暗的图像elaindark(b)动态范围较窄的图像elainnarrow

(c)较亮的图像elainbright

四、参考程序

%(a)对较暗的图像elaindark直方图均衡化处理

clcclearallclosealla1=imread('elaindark.bmp');figure

(1);subplot(2,2,1);imshow(a1);title('

(1)较暗的原图像elaindark');

subplot(2,2,2);imhist(a1);axisoff

title('

(2)原图像elaindark的直方图');

a2=histeq(a1);subplot(2,2,3);imshow(a2);

title('(3)直方图均衡化后的图像');

subplot(2,2,4);imhist(a2);axisoff

title('(4)均衡化后的直方图');

%(b)对动态范围较窄的图像elainnarrow直方图均衡化处理

b1=imread('elainnarrow.bmp');figure

(2);subplot(2,2,1);imshow(b1);

title('

(1)动态范围较窄的原图像elainnarrow');

subplot(2,2,2);imhist(b1);axisoff

title('

(2)原图像elainnarrow的直方图');

b2=histeq(b1);subplot(2,2,3);imshow(b2);

title('(3)直方图均衡化后的图像');

subplot(2,2,4);imhist(b2);axisoff

title('(4)均衡化后的直方图');

%(c)对较亮的图像elainbright直方图均衡化处理

c1=imread('elainbright.bmp');figure(3);subplot(2,2,1);imshow(c1);title('

(1)较亮的原图像elainbright');

subplot(2,2,2);imhist(c1);axisoff

title('

(2)原图像elainbright的直方图');c2=histeq(c1);subplot(2,2,3);imshow(c2);

title('(3)直方图均衡化后的图像');

subplot(2,2,4);imhist(c2);axisoff

title('(4)均衡化后的直方图');

实验三图像的锐化处理

一、实验目的及要求

1.学习Matlab软件的使用和编程

2.理解图像增强中的模板锐化法

3.对图像进行a=1和a=2的锐化处理,实现教材中图4.4.2的效果

4.验证教材中提出的锐化实质,实现教材中图4.4.3的效果,对实验结果进行分析二、实验环境

Windows2003或WindowsXP,Matlab编程环境

三、实验内容

1)选择两幅图像,对其进行a=1和a=2的锐化处理,实现教材中图4.4.2的效果,并分析实验结果。

2)选择一幅图像,验证教材中提出的锐化实质,实现教材中图

4.4.3的效果,并分析实验结果。

四、参考程序

%选择两幅图像,对其进行a=1和a=2的锐化处理,实现教材

中图4.4.2的效果

clearall;closeall;f1=imread('D:

/lena1.bmp');subplot(2,3,1);imshow(f1);

a=1;

G1=[0-a0;-a1+4*a-a;0-a0];f2=imfilter(f1,G1,'symmetric','conv');subplot(2,3,2);imshow(f2);

a=2;

G1=[0-a0;-a1+4*a-a;0-a0];f2=imfilter(f1,G1,'symmetric','conv');subplot(2,3,3);imshow(f2);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

f1=imread('D:

/442.bmp');subplot(2,3,4);imshow(f1);xlabel('(a)原图像');

a=1;

G1=[0-a0;-a1+4*a-a;0-a0];f2=imfilter(f1,G1,'symmetric','conv');subplot(2,3,5);imshow(f2);xlabel('(b)a=1时的锐化图像');

a=2;

G1=[0-a0;-a1+4*a-a;0-a0];f2=imfilter(f1,G1,'symmetric','conv');subplot(2,3,6);imshow(f2);xlabel('(c)a=2时的锐化图像');

%择一幅图像,验证教材中提出的锐化实质,实现教材中图4.4.3的效果

clearall;closeall;f1=imread('D:

/lena1.bmp');subplot(1,3,1);imshow(f1);xlabel('(a)原图像');

a=2;

G1=[0-a0;-a4*a-a;0-a0];f2=imfilter(f1,G1,'symmetric','conv');subplot(1,3,2);imshow(f2);xlabel('(b)加重的边缘');

a=2;

G1=[0-a0;-a1+4*a-a;0-a0];f2=imfilter(f1,G1,'symmetric','conv');subplot(1,3,3);imshow(f2);xlabel('(c)锐化结果图像');

实验四图像的哈夫曼编码

一、实验目的及要求

1.学习Matlab软件的使用和编程

2.掌握哈夫曼编码算法的基本原理

3.要求对屏幕输入的信符概率向量进行哈夫曼编码二、实验环境

Windows2003或WindowsXP,Matlab编程环境

三、实验内容

1)对屏幕输入的信符概率向量例如‘[0.40.20.160.120.060.04

0.02]’,进行哈夫曼编码。

2)计算计算信源的熵,哈夫曼编码的平均码字长及其编码效率。

3)显示哈夫曼编码与相应计算结果。

四、参考程序

clcclearall

p=input('请输入信符的概率向量:

');

n=length(p);

fori=1:

nifp(i)<0

fprintf('\n输入的概率必须大于0!

\n');

endend

%ifsum(p)-1>0

%fprintf('\n输入的概率非法:

其概率和大于1\n');

%p=input('请输入信符的概率向量:

');

%end

q=p;a=zeros(n-1,n);fori=1:

n-1fprintf('第%d次排序\n',i);

[q,l]=sort(q)%q为排好序的原据,l为q中数据在原数据中的存储位置

a(i,:

)=[l(1:

n-i+1),zeros(1,i-1)]%矩阵a记录n-1次排序的过程fprintf('\n第%d次排序后合并生成的数据',i);

q=[q

(1)+q

(2),q(3:

n),1]end

%//////////////新生成一个n-1行n列,并且每个元素含有n个字符

(n位)的空白矩阵c,用来进行huffman编码:

fori=1:

n-1c(i,1:

n*n)=blanks(n*n);end

c(n-1,n)='0';%根据概率小的编码为0,概率大的编码为1的原则进行编码,c(n-1,2*n)='1';%矩阵c最后一行的第一个元素编码为0,第二个元素编码为1,

fori=2:

n-1

c(n-i,1:

n-1)=c(n-i+1,n*(find(a(n-i+1,:

)==1))-(n-2):

n*(find(a(n-i+1,:

)==1)

))

%c/////////的第n-i行中第一个元素的第1:

n-1位赋值:

根据矩阵a中第n-i+1行中1的位置k,找到c(n-i+1,(k-1)n+2:

nk)的

%//////////编码值进行赋值;c(n-i,n)='0';%//////////////////对c中n-i行中第一个元素的第n

位赋值为0

c(n-i,n+1:

2*n-1)=c(n-i,1:

n-1);%//////c的第n-i行中第一、二个

元素的前n-1位相等,因为在a中这两个相应元素合并的结果为a中下一行1的位置k所对应元素;

c(n-i,2*n)='1';%////////////////对c中n-i行的第二个元素的第n

位赋值为1

forj=1:

i-1c(n-i,(j+1)*n+1:

(j+2)*n)=c(n-i+1,n*(find(a(n-i+1,:

)==j+1)-1)+1:

n*(

find(a(n-i+1,:

)==j+1)))%将c中n-i+1行没有写入第n-i行的第一、二

个元素位置的剩余编码分别写入第n-i行的第三、四,......,n元素的相应位置;

endendfori=1:

nh(i,1:

n)=c(1,n*(find(a(1,:

)==i)-1)+1:

find(a(1,:

)==i)*n)

%///为了输出huf

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2