数字图像处理实验报告(全部)_第1页
数字图像处理实验报告(全部)_第2页
数字图像处理实验报告(全部)_第3页
数字图像处理实验报告(全部)_第4页
数字图像处理实验报告(全部)_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上数字图像处理实验 班级:125指 学号:导 姓名:田坤书 专业:电子信息科学与技术 实验一 数字图像的运算1.1 直方图一实验目的1熟悉matlab图像处理工具箱及直方图函数的使用;2理解和掌握直方图原理和方法;二实验设备:1.PC机一台;2.软件matlab。三程序设计在matlab环境中,程序首先读取图像,然后调用直方图函数,设置相关参数,再输出处理后的图像。I=imread('cameraman.tif');%读取图像subplot(1,2,1),imshow(I) %输出图像title('原始图像') %在原始图像中加标题sub

2、plot(1,2,2),imhist(I) %输出原图直方图title('原始图像直方图') %在原图直方图上加标题四实验步骤1. 启动matlab双击桌面matlab图标启动matlab环境;2. 在matlab命令窗口中输入相应程序。书写程序时,首先读取图像,一般调用matlab自带的图像,如:cameraman图像;再调用相应的直方图函数,设置参数;最后输出处理后的图像;3浏览源程序并理解含义;4运行,观察显示结果;5结束运行,退出;五实验结果:观察图像matlab环境下的直方图分布。 (a)原始图像 (b)原始图像直方图六实验报告要求1、给出实验原理过程及实现代码:I=

3、imread('coins.png');%读取图像subplot(1,2,1),imshow(I) %输出图像title('原始图像') %在原始图像中加标题subplot(1,2,2),imhist(I) %输出原图直方图title('原始图像直方图') %在原图直方图上加标题2、输入一幅灰度图像,给出其灰度直方图结果,并进行灰度直方图分布原理分析。 1.2 3*3均值滤波一实验目的1熟悉matlab图像处理工具箱及均值滤波函数的使用;2理解和掌握3*3均值滤波的方法和应用;二实验设备:1.PC机一台;2.软件matlab三程序设计 在matl

4、ab环境中,程序首先读取图像,然后调用图像增强(均值滤波)函数,设置相关参数,再输出处理后的图像。I = imread('cameraman.tif');figure,imshow(I);J=filter2(fspecial(average,3),I)/255;figure,imshow(J);四实验步骤1. 启动matlab双击桌面matlab图标启动matlab环境;2. 在matlab命令窗口中输入相应程序。书写程序时,首先读取图像,一般调用matlab自带的图像,如:cameraman图像;再调用相应的图像增强(均值滤波)函数,设置参数;最后输出处理后的图像;3浏览源程

5、序并理解含义;4运行,观察显示结果;5结束运行,退出;五实验结果:观察matlab环境下原始图像经3*3均值滤波处理后的结果。 (a)原始图像 (b)3*3均值滤波处理后的图像六实验报告要求输入一幅灰度图像,给出其图像经3*3均值滤波处理后的结果,然后对每一点的灰度值和它周围24个点,一共25个点的灰度值进行均值滤波,看看对25个点取均值与对9个点取中值进行均值滤波有什么区别?有没有其他的算法可以改进滤波效果。 (a)原始图像 (b)3*3均值滤波处理后的图像1.3 3*3中值滤波一实验目的1熟悉matlab图像处理工具箱及中值滤波函数的使用;2理解和掌握中值滤波的方法和应用;二实验设备:1.

6、PC机一台;2.软件matlab三程序设计在matlab环境中,程序首先读取图像,然后调用图像增强(中值滤波)函数,设置相关参数,再输出处理后的图像。I = imread('cameraman.tif');figure,imshow(I);J=medfilt2(I,5,5);figure,imshow(J);四实验步骤1. 启动matlab双击桌面matlab图标启动matlab环境;2. 在matlab命令窗口中输入相应程序。书写程序时,首先读取图像,一般调用matlab自带的图像,如:cameraman图像;再调用相应的图像增强(中值滤波)函数,设置参数;最后输出处理后的图

7、像;3浏览源程序并理解含义;4运行,观察显示结果;5结束运行,退出;五实验结果观察matlab环境下原始图像经3*3中值滤波处理后的结果。 (a)原始图像 (b)3*3中值滤波处理后的图像六实验报告要求输入一幅灰度图像,给出其图像经3*3中值滤波处理后的结果,然后对每一点的灰度值和它周围24个点,一共25个点的灰度值进行排序后取中值,然后该点的灰度值取中值。看看对25个点取中值与对9个点取中值进行中值滤波有什么区别? (a)原始图像 (b)3*3中值滤波处理后的图像1.4 图像的缩放一实验目的1熟悉matlab图像处理工具箱及图像缩放函数的使用;2掌握图像缩放的方法和应用;二实验设备:1.PC

8、机一台;2.软件matlab三程序设计在matlab环境中,程序首先读取图像,然后调用图像缩放函数,设置相关参数,再输出处理后的图像。I = imread('cameraman.tif');figure,imshow(I);scale = 0.5;J = imresize(I,scale);figure,imshow(J);四实验步骤1. 启动matlab双击桌面matlab图标启动matlab环境;2. 在matlab命令窗口中输入相应程序。书写程序时,首先读取图像,一般调用matlab自带的图像,如:cameraman图像;再调用相应的图像缩放函数,设置参数;最后输出处理后

9、的图像;3浏览源程序并理解含义;4运行,观察显示结果;5结束运行,退出;五实验结果观察matlab环境下图像缩放后的结果。 (a)原始图像 (b)缩放后的图像六实验报告要求输入一幅灰度图像,给出其图像缩放后的结果,然后改变缩放比率,观察图像缩放后结果柄进行分析。 (a)原始图像 (b)缩放后的图像1.5 图像旋转一实验目的1熟悉matlab图像处理工具箱及图像旋转函数的使用;2理解和掌握图像旋转的方法和应用;二实验设备:1.PC机一台;2.软件matlab三程序设计在matlab环境中,程序首先读取图像,然后调用图像旋转函数,设置相关参数,再输出处理后的图像。I = imread('c

10、ameraman.tif');figure,imshow(I);theta = 30;K = imrotate(I,theta); % Try varying the angle, theta.figure, imshow(K)四实验步骤1. 启动matlab双击桌面matlab图标启动matlab环境;2. 在matlab命令窗口中输入相应程序。书写程序时,首先读取图像,一般调用matlab自带的图像,如:cameraman图像;再调用相应的图像旋转函数,设置参数;最后输出处理后的图像;3浏览源程序并理解含义;4运行,观察显示结果;5结束运行,退出;五实验结果观察matlab环境下图

11、像旋转后的结果。 (a)原始图像 (b)旋转后的图像六实验报告要求输入一幅灰度图像,给出其图像旋转后的结果,然后改变旋转角度,观察图像旋转后结果柄进行分析。 (a)原始图像 (b)旋转后的图像实验二 数字图像的离散余弦变换一实验目的1验证二维傅里叶变换的平移性和旋转不变性;2实现图像频域滤波,加深对频域图像增强的理解;二实验设备1.PC机一台;2.软件matlab;三实验内容及步骤(1)产生如图3.1所示图像(128×128大小,暗处=0,亮处=255),用MATLAB中的fft2函数对其进行FFT: 同屏显示原图和的幅度谱图; 若令,重复以上过程,比较二者幅度谱的异同,简述理由;图

12、3.1 实验图象f1(x, y) 若将顺时针旋转45度得到,试显示的幅度谱,并与的幅度谱进行比较。1.%生成图形f1f1=zeros(128,128);f1(64-30):(63+30),(64-10):(63+10)=1;%FFT变换fft_f1=log(1+abs(fftshift(fft2(f1);figure;subplot(121);imshow(f1);title('Image f1');subplot(122);imshow(fft_f1,);title('FFT f1');2.%计算f2f2=zeros(128,128);for i=1:128;

13、 for j=1:128; f2(i,j)=(-1)(i+j)*f1(i,j); endendfft_f2A=log(1+abs(fft2(f2);fft_f2B=log(1+abs(fftshift(fft2(f2);figure;subplot(131);imshow(f2);title('Image f2');subplot(132);imshow(fft_f2B,);title('FFT f2');subplot(133);imshow(fft_f2A,);title('FFT f2 Without FFTShift');分析:根据傅里叶

14、变换对的平移性质:;当且时,有:因此可得到:所以,就是频谱中心化后的结果。3.%计算f3f3=imrotate(f2,-45,'nearest');fft_f3=log(1+abs(fftshift(fft2(f3);figure;subplot(121);imshow(f3);title('Image f3');subplot(122);imshow(fft_f3,);title('FFT f3');(2)对如图3.2所示的数字图像lena.img(256×256大小、256级灰度)进行频域的理想低通、高通滤波,同屏显示原图、幅度谱图

15、和低通、高通滤波的结果图。图3.2 实验图象lena.img低通滤波:fid=fopen('D:matlab7imagelena.img','r');data=(fread(fid,256,256,'uint8')'subplot(1,2,1)imagesc(data);colormap(gray);title('LENA','Color','r');fft_lena=fft2(data);f=fftshift(fft_lena);for i=1:256for j=1:256 if sqrt

16、(i-128)2+(j-128)2)>30 f(i,j)=0; end endendsubplot(1,2,2); x,y=meshgrid(1:1:256);surf(x,y,f)高通滤波:fid=fopen('D:matlab7imagelena.img','r');data=(fread(fid,256,256,'uint8')'subplot(1,2,1)imagesc(data);colormap(gray);title('LENA','Color','r');fft_len

17、a=fft2(data);for i=1:256 for j=1:256if sqrt(i-128)2+(j-128)2)<2 f(i,j)=0; endendsubplot(1,2,2);x,y=meshgrid(1:1:256);surf(x,y,f)实验三 基于直方图均衡化的图像增强一实验目的1了解空间域图像增强的各种方法(点处理、掩模处理);2掌握采用直方图均衡化进行图像增强的方法;3. 使用邻域平均法编写程序实现图像增强,进一步掌握掩模法及其改进(加门限法)消除噪声的原理;二实验设备1.PC机一台;2.软件matlab;三实验内容及步骤对如图3.1所示的两幅128×1

18、28、256级灰度的数字图像fing_128.img和cell_128.img进行如下处理:指纹图fing_128.img显微医学图像cell_128.img图3.1 实验图像(1)对原图像进行直方图均衡化处理,同屏显示处理前后图像及其直方图,比较异同,并回答为什么数字图像均衡化后其直方图并非完全均匀分布。指纹图像:fid=fopen('fing_128.img','r');im=(fread(fid,128,128,'uint8')'im=uint8(im);colormap(gray);subplot(221);imshow(im);

19、 subplot(222);imh=histeq(im);%直方图均衡化imshow(imh);subplot(223);imhist(im);subplot(224);imhist(imh);显微医学图像:fid=fopen('cell_128.img','r');im=(fread(fid,128,128,'uint8')'im=uint8(im);colormap(gray);subplot(221);imshow(im); subplot(222);imh=histeq(im);%直方图均衡化imshow(imh);subplot

20、(223);imhist(im);subplot(224);imhist(imh);分析:由于数字图像中像素的灰度值取值是离散和不连续的,因而变换后的像素灰度值在计算中出现了归并现象,所以变换后的直方图并不是呈完全均匀分布的。(2)对原图像加入点噪声,用4-邻域平均法平滑加噪声图像(图像四周边界不处理,下同),同屏显示原图像、加噪声图像和处理后的图像。 不加门限; 加门限,(其中)代码:fid=fopen('fing_128.img','r');im=(fread(fid,128,128,'uint8');im=im2double(uint8(i

21、m);J=imnoise(im,'gaussian'); %加入高斯噪声w=0 0.25 0;0.25 0 0.25;0 0.25 0;im_L=filter2(w,J);%四邻域平滑%加门限后滤波T=2*sum(J(:)/1282;im_T=zeros(128,128);for i=1:128 for j=1:128 if abs(J(i,j)-im_L(i,j)>T im_T(i,j)=im_L(i,j); else im_T(i,j)=J(i,j); end endendcolormap(gray);subplot(2,2,1);imshow(im);title(&

22、#39;Image');subplot(2,2,2);imshow(J);title('Noise');subplot(2,2,3);imshow(im_L);title('四邻域平滑后');subplot(2,2,4);imshow(im_T);title('加门限后');对高斯噪声的处理效果:对脉冲噪声的处理效果:实验四 图像分割(常见的边缘检测算子Sobel、Prewitt、Log)一实验目的1熟悉matlab图像处理工具箱及图像边缘检测函数的使用;2理解和掌握图像边缘检测(Sobel、Prewitt、Log边缘算子)的方法和应用;

23、二实验设备1.PC机一台;2.软件matlab;三程序设计在matlab环境中,程序首先读取图像,然后调用图像边缘检测(Sobel、Prewitt、Log边缘算子)函数,设置相关参数,再输出处理后的图像。I = imread('cameraman.tif');J1=edge(I,'sobel');J2=edge(I,'prewitt');J3=edge(I,'log');subplot(1,4,1),imshow(I);subplot(1,4,2),imshow(J1);subplot(1,4,3),imshow(J2);subplot(1,4,4),imshow(J3);四实验步骤1. 启动matlab双击桌面matlab图标启动matlab环境;2. 在matlab命令窗口中输入相应程序。书写程序时,首先读取图像,一般调用m

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论