ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:58.06KB ,
资源ID:8223929      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8223929.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数字图像处理实验指导书.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数字图像处理实验指导书.docx

1、数字图像处理实验指导书数字图像处理实验指导书 工程学院 信息技术教研室2011.10目 录实验一 图像基本操作 1实验二 图像运算 3实验三 图像增强空域滤波 5实验四 图像的傅立叶变换 7实验五 图像增强频域滤波 9实验六 图像分割 12实验一 图像基本操作一、实验目的 了解MatLab软件/语言,学会使用MatLab的图像处理工具箱(Image Processing Toolbox),使学生初步具备使用该软件处理图像信息的能力,并能够利用该软件完成本课程规定的其他实验和作业。熟悉常用的图像文件格式与格式转换;熟悉图像矩阵的显示方法(灰度、索引、黑白、彩色);熟悉图像矩阵的格式转换二、实验要

2、求在MATLAB环境下完成下列操作:1、读入图像;2、保存图像;3、图像的显示方法三、实验方法使用函数imread可以将图像读入MATLAB环境,imread的语法为:imread( filename )imread所支持的文件格式包括:TIFF- .tif .tiffJPEG- .jpg .jpegGIF- .gifBMP- .bmpPNG- .pngXWD- .xwd使用函数imwrite可以将图像保存在磁盘上,imwrite的语法为imwrite( f, filename )使用函数size可以察看图像大小,size的语法为size( )使用函数imfinfo可以察看图像信息,imfin

3、fo的语法为imfinfo filename使用函数imshow 可以显示图像缩略图,imshow 的语法为imshow ( )使用函数imview 可以显示图像原图,imview 的语法为imview ( )使用函数figure可以开辟一个新的窗口,figure的语法为figure, imshow ( )figure, imview ( )figure, plot ( )使用数据类型转换函数可以转换图像数据类型,如im2uint8 ( ) - convert image to uint8im2uint16 ( ) - convert image to uint16mat2gray ( ) -

4、 convert image to double, range0 , 1im2double ( ) - convert image to doubleim2bw ( ) - convert image to logical四、实验过程使用函数imread 打开一幅灰度图像(lena_gray.jpg),使用函数imwrite 将图像另存为不同的文件名;在此过程中观察图像矩阵的形式,并记录55的矩阵片断;使用函数size察看图像大小,使用函数imfinfo察看图像信息;记录图像信息;分别使用函数imshow 和函数imview 显示图像;记录两种方式的区别。使用函数imread打开一幅彩色图像(

5、lena_color.tif),观察图像矩阵的形式;并分别记录RGB三色55的矩阵片断;使用函数rgb2gray将彩色图像转换为灰度图像;使用im2uint8和im2double转换图像的数据类型,记录55矩阵片断在转换前后的变化。六、源程序I=imread(Lena_color.tif);J=imread(lena_gray.jpg);J1=rgb2gray(I)imshow(I);figure,imshow(J);figure,imshow(J1)figure,imshow(I),colorbar;figure,imshow(J),colorbar;imwrite(I,Lenna.tiff

6、);实验二 图像运算一、实验目的1. 熟悉MATLAB基本图像操作;2. 结合实例学习如何在程序中增加图像处理算法;3. 理解和掌握图像的运算和直方图均衡化的原理和应用;4. 了解平滑处理的算法和用途,学习使用均值滤波、中值滤波和拉普拉斯锐化进行图像增强处理的程序设计方法;5. 了解噪声模型及对图像添加噪声的基本方法。二、实验要求在MATLAB环境下完成下列操作:1. 读入图像;2. 图像灰度变换方法;3. 灰度的对数扩展法;4. 绘制灰度直方图;5. 直方图均衡法;6. 任意灰度变换实现;三、实验方法灰度直方图反映图像的灰度分布情况,即亮度分布情况;它说明不同灰度的像素个数或分布概率。使用函

7、数imhist绘制灰度直方图,imhist的语法为h = imhist( f );figure, imhist( f );figure, plot( h );figure, stem( h );figure, bar( h );由于拍摄和处理的原因,导致图像的灰度分布范围过小;最大熵原理指出:数据满足均匀分布时,信息量最大;依据这个原理,通过灰度直方图均衡化将图像灰度分布扩展到整个灰度分布范围,可以使图形信息量最大,即使使得图像对比度增强。使用函数histeq对图像进行直方图均衡,histeq 的语法为g = histeq( f, nlev ); % nlev 为输出的灰度级数,通常取256,

8、默认64figure, imhist(g);任意灰度变换需要进行分段计算四、实验过程1)使用函数imread打开一幅灰度图像(2_1.jpg),使用函数imhist绘制灰度直方图。直方图有四种表现形式h = imhist( f );figure, imhist( f );figure, plot( h );figure, stem( h );figure, bar( h );观察四种直方图的差别。2)使用函数imread 打开一幅灰度图像(2_2.jpg),说明这幅图像直方图存在的问题。使用函数histeq对图像进行直方图均衡,比较并记录均衡前后图像的变化h=histeq(f, 256);fi

9、gure, imshow(f);figure, imhist(f);figure, imshow(h);figure, imhist(h);3)图像加法是把图像叠加在一起的操作,使用函数imadd将两幅图像相加。clc;clearf1=imread(rice.png); %读入图像f2=imread(cameraman.tif ); %读入图像f3=imadd(f1,f2);figure,imshow(f3); 4)图像减法是从一幅图像中减去另一幅图像,经常被用作检测两幅图像的差别,使用函数imsubtract将两幅图像相减。下面的操作是根据一幅原始图像,生成其背景亮度图像,然后再从原图像中减

10、去背景亮度图像,从而得到结果。I=imread(cameraman.tif);J=uint8(filter2(fspecial(gaussian),I);K=imsubtract(I,J);subplot(121);imshow(I);subplot(122);imshow(J);figure;imshow(K,)5)图像间的逻辑运算主要有“与”、“或”、“非”等,把它们组合起来可以构成其他逻辑运算。当我们对灰度级进行逻辑操作时,像素值作为一个二进制数来处理,逻辑操作按位进行。“与”和“或”运算通常用作模板,即通过这些操作可以从一幅图像中提取子图像,更加突出子图像的内容。下面的“与”和“或”运

11、算通过逐点进行。A=zeros(128);A(40:67,60:100)=1;B=zeros(128);B(50:80,40:70)=1;C=and(A,B);D=or(A,B);E=not(B);F=xor(A,B);subplot(231);imshow(A);title(A图)subplot(232);imshow(B);title(B图)subplot(233);imshow(C);title(A和B相与图)subplot(234);imshow(D);title(A和B相或图)subplot(235);imshow(E);title(B取反图)subplot(236);imshow(

12、F);title(A和B异或图)实验三 图像增强空域滤波一、实验目的 进一步了解MatLab软件/语言,学会使用MatLab对图像作滤波处理,使学生有机会掌握滤波算法,体会滤波效果。了解几种不同滤波方式的使用和使用的场合,培养处理实际图像的能力,并为课堂教学提供配套的实践机会。 二、实验要求 应当完成对于给定图像+噪声,使用平均滤波器、中值滤波器对不同强度的高斯噪声和椒盐噪声,进行滤波处理;能够正确地评价处理的结果;能够从理论上作出合理的解释。三、实验内容与步骤 a) 调入并显示原始图像b) 利用imnoise 命令在图像原始图像上加入高斯(gaussian) 噪声 c)利用预定义函数fspe

13、cial 命令产生平均(average)滤波器 d)采用3x3的模板,分别用平均滤波器以及中值滤波器,对加入噪声的图像进行处理并观察不同噪声水平下,上述滤波器处理的结果; e)选择不同大小的模板,对加入某一固定噪声水平噪声的图像进行处理,观察上述滤波器处理的结果。f)利用imnoise 命令在图像Sample2-1.jpg 上加入椒盐噪声(salt & pepper)g)重复c) e)的步骤h)输出全部结果并进行讨论。四、 思考题/问答题 (1) 简述高斯噪声和椒盐噪声的特点。(2) 结合实验内容,定性评价平均滤波器/中值滤波器对高斯噪声和椒盐噪声的去噪效果?(3) 结合实验内容,定性评价滤波

14、窗口对去噪效果的影响? 五、 实验报告要求 描述实验的基本步骤,用数据和图片给出各个步骤中取得的实验结果,并进行必要的讨论,必须包括原始图像及其计算/处理后的图像。六、源程序I=imread(electric.tif);J = imnoise(I,gauss,0.02); %添加高斯噪声%J = imnoise(I,salt & pepper,0.02); %添加椒盐噪声 ave1=fspecial(average,3); %产生33的均值模版ave2=fspecial(average,5); %产生55的均值模版K = filter2(ave1,J)/255; %均值滤波33L = filt

15、er2(ave2,J)/255; %均值滤波55M = medfilt2(J,3 3); %中值滤波33模板N = medfilt2(J,4 4); %中值滤波44模板imshow(I);figure,imshow(J);figure,imshow(K);figure,imshow(L);figure,imshow(M);figure,imshow(N);实验四 图像的傅立叶变换一、实验目的1、了解图像变换的意义和手段;2、熟悉傅里叶变换的基本性质;3、热练掌握FFT方法及应用;4、通过实验了解二维频谱的分布特点;5、通过本实验掌握利用MATLAB编程实现数字图像的傅立叶变换及滤波锐化和复原处

16、理;6 、了解理想、巴特沃兹、高斯等不同滤波器的结构及滤波效果。二、实验原理1应用傅立叶变换进行图像处理傅里叶变换是线性系统分析的一个有力工具,它能够定量地分析诸如数字化系统、采样点、电子放大器、卷积滤波器、噪音和显示点等的作用。通过实验培养这项技能,将有助于解决大多数图像处理问题。对任何想在工作中有效应用数字图像处理技术的人来说,把时间用在学习和掌握博里叶变换上是很有必要的。2傅立叶(Fourier)变换的定义对于二维信号,二维Fourier变换定义为: 二维离散傅立叶变换为: 图像的傅立叶变换与一维信号的傅立叶变换变换一样,有快速算法。实际上,现在有实现傅立叶变换的芯片,可以实时实现傅立叶

17、变换。3利用MATLAB软件实现数字图像傅立叶变换的程序:I=imread(原图像名.gif); %读入原图像文件imshow(I); %显示原图像fftI=fft2(I); %二维离散傅立叶变换sfftI=fftshift(fftI); %直流分量移到频谱中心RR=real(sfftI); %取傅立叶变换的实部II=imag(sfftI); %取傅立叶变换的虚部A=sqrt(RR.2+II.2);%计算频谱幅值A=(A-min(min(A))/(max(max(A)-min(min(A)*225;%归一化figure; %设定窗口imshow(A); %显示原图像的频谱三、实验要求1叙述实验

18、过程;2提交实验的原始图像和结果图像,并对结果进行比较。四、实验过程1打开计算机,安装和启动MATLAB程序;程序组中“work”文件夹中应有待处理的图像文件;2利用MatLab工具箱中的函数编制FFT频谱显示的函数;3 a).调入、显示图像;图像存储格式应为“.gif”; b)对图像做FFT并利用自编的函数显示其频谱;c)讨论不同的图像内容与FFT频谱之间的对应关系。 4 对频谱分别进行高斯、巴特沃兹、高斯高通和低通滤波,比较其锐化和平滑效果5记录和整理实验报告。五、思考题1傅里叶变换有哪些重要的性质?2图像的二维频谱在显示和处理时应注意什么?六、源程序%sy4_1f=zeros(256,2

19、56);f(108:148,108:148)=1;F=fft2(f);F1=log(1+abs(F);subplot(131),imshow(f,);title(原始图像)subplot(132),imshow(F1,);title(频谱不移动)subplot(133),imshow(fftshift(F1),);title(频谱移动到中心点) %sy4_2f=imread(lena.bmp);imshow(f,);title();F=fft2(f);figure;imshow(log(1+abs(fftshift(F),),title()实验五 图像增强频域滤波一、实验目的1、掌握怎样利用傅

20、立叶变换进行频域滤波2、掌握频域滤波的概念及方法3、熟练掌握频域空间的各类滤波器4、利用MATLAB程序进行频域滤波二、实验原理及知识点频域滤波分为低通滤波和高通滤波两类,对应的滤波器分别为低通滤波器和高通滤波器。频域低通过滤的基本思想: G(u,v)=F(u,v)H(u,v)F(u,v)是需要钝化图像的傅立叶变换形式,H(u,v)是选取的一个低通过滤器变换函数,G(u,v)是通过H(u,v)减少F(u,v)的高频部分来得到的结果,运用傅立叶逆变换得到钝化后的图像。理想地通滤波器(ILPF)具有传递函数:其中,为指定的非负数,为(u,v)到滤波器的中心的距离。的点的轨迹为一个圆。n阶巴特沃兹低

21、通滤波器(BLPF)(在距离原点处出现截至频率)的传递函数为与理想地通滤波器不同的是,巴特沃兹率通滤波器的传递函数并不是在处突然不连续。高斯低通滤波器(GLPF)的传递函数为其中,为标准差。相应的高通滤波器也包括:理想高通滤波器、n阶巴特沃兹高通滤波器、高斯高通滤波器。给定一个低通滤波器的传递函数,通过使用如下的简单关系,可以获得相应高通滤波器的传递函数: 三、实验步骤:1 调入并显示所需的图片;2 利用MATLAB提供的低通滤波器实现图像信号的滤波运算,并与空间滤波进行比较。3利用MATLAB提供的高通滤波器对图像进行处理。4 记录和整理实验报告。四、实验报告内容1叙述实验过程;2提交实验的

22、原始图像和结果图像。 实验报告要求 描述实验的基本步骤,用数据和图片给出各个步骤中取得的实验结果,并进行必要的讨论,必须包括原始图像及其计算/处理后的图像。六、思考题1结合实验,评价频域滤波有哪些优点?2在频域滤波过程中需要注意哪些事项?七、源程序%sy5_1%不同半径巴特沃斯低通滤波器的平滑作用。f=imread(lena.bmp);subplot(321);imshow(f,);title(原图);F=fftshift(fft2(f,size(f,1),size(f,2);u=1:size(F,1);v=1:size(F,2);V,U=meshgrid(v,u);D=sqrt(U-(flo

23、or(size(F,1)/2)+1).2+(V-(floor(size(F,2)/2)+1).2); H=zeros(size(f);D0=5;n=2;H=1./(1+(D./D0).(2*n);G=F.*H; %频域低通滤波G1=ifft2(ifftshift(G);subplot(322);imshow(real(G1),);title(半径小于5的巴特沃思低通滤波器);D0=15;H=1./(1+(D./D0).(2*n);G=F.*H;G1=ifft2(ifftshift(G);subplot(323);imshow(real(G1),);title(半径小于15的巴特沃思低通滤波器)

24、;D0=30;H=1./(1+(D./D0).(2*n);G=F.*H;G1=ifft2(ifftshift(G);subplot(324);imshow(real(G1),);title(半径小于30的巴特沃思低通滤波器);D0=80;H=1./(1+(D./D0).(2*n);G=F.*H;G1=ifft2(ifftshift(G);subplot(325);imshow(real(G1),);title(半径小于80的巴特沃思低通滤波器);D0=230;H=1./(1+(D./D0).(2*n);G=F.*H;G1=ifft2(ifftshift(G);subplot(326);imsh

25、ow(real(G1),);title(半径小于230的巴特沃思低通滤波器);实验六 图像分割一、实验目的􀂄 使用MatLab 软件进行图像的分割。使学生通过实验体会一些主要的分割算子对图像处理的效果,以及各种因素对分割效果的影响。二、实验要求􀂄 要求学生能够自行评价各主要算子在无噪声条件下和噪声条件下的分割性能。能够掌握分割条件(阈值等)的选择。完成规定图像的处理并要求正确评价处理结果,能够从理论上作出合理的解释。三、实验内容与步骤(1)使用Roberts 算子的图像分割实验􀂄 调入并显示图像camera.tif 或hardware.ti

26、f 或bob.tif中的任意一幅图像;􀂄 使用Roberts 算子对图像进行边缘检测处理;􀂄 Roberts 算子为一对模板:􀂄 相应的矩阵为:rh = 0 1;-1 0; rv = 1 0;0 -1;这里的rh 为水平Roberts 算子,rv为垂直Roberts 算子。􀂄 分别显示处理后的水平边界和垂直边界检测结果;􀂄 用“欧几里德距离”和“街区距离”方式计算梯度的模,并显示检测结果;􀂄 对于检测结果进行二值化处理,并显示处理结果;提示:先做检测结果的直方图,参考直方图中灰度的分布尝

27、试确定阈值;应反复调节阈值的大小,直至二值化的效果最为满意为止。􀂄 分别显示处理后的水平边界和垂直边界检测结果;􀂄 将处理结果转化为“白底黑线条”的方式;􀂄 给图像加上零均值的高斯噪声;􀂄 对于噪声图像重复步骤b f。(2)使用Prewitt 算子的图像分割实验􀂄 使用Prewitt 算子进行内容(1)中的全部步骤。(3)使用Sobel 算子的图像分割实验使用Sobel 算子进行内容(1)中的全部步骤。(4)使用LoG (拉普拉斯-高斯)算子的图像分割实验使用LoG (拉普拉斯-高斯)算子进行内容(1)中

28、的全部步骤。提示1:处理后可以直接显示处理结果,无须另外计算梯度的模。提示2:注意调节噪声的强度以及LoG (拉普拉斯-高斯)算子的参数,观察处理结果。(5) 打印全部结果并进行讨论。四、实验报告要求1叙述实验过程;2提交实验的原始图像和结果图像。五、思考题/问答题1. 评价一下Roberts 算子、Prewitt 算子、Sobel 算子对于噪声条件下边界检测的性能。2. 为什么LoG梯度检测算子的处理结果不需要象Prewitt 等算子那样进行幅度组合?3. 实验中所使用的四种算子所得到的边界有什么异同六、源程序1)边缘检测使用edge函数对图像rice.tif进行边缘检测。I=imread(

29、rice.tif); imshow(I)bw1=edge(I,roberts); %使用roberts算子进行边缘检测bw2=edge(I,sobel); %使用sobel算子进行边缘检测bw3=edge(I,prewitt); %使用prewitt算子进行边缘检测 bw4=edge(I,canny); %使用canny算子进行边缘检测bw5=edge(I,log); %使用log算子进行边缘检测figure,imshow(bw1)figure,imshow(bw2)figure,imshow(bw3)figure,imshow(bw4)figure,imshow(bw5)2)区域操作使用区域选择函数roicolor, 区域滤波函数roifilt2和区域填充函数roifilld对图像 eight.tif进行区域操作。I=imread(eight.tif); imshow(I)c=222 272 300 270 221 194;r=21 21 75 121 121 75;BW=roipoly(I,c,r);figure,imshow(BW)H=fspecial(unsharp);J1=roifilt2(H,I,BW);figure,imshow(J1)J2=roifill(I,c,r);figure,imshow(J2)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1