数字图像处理实验及报告(含源码)_第1页
数字图像处理实验及报告(含源码)_第2页
数字图像处理实验及报告(含源码)_第3页
数字图像处理实验及报告(含源码)_第4页
数字图像处理实验及报告(含源码)_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

1、.大学数字图像处理实验报告设计题目: 数字图像处理 专业名称: 软件工程 班 级: 1 学 号: 1 姓 名: MARK 指导教师: 2016年5月16日*;目录实验一 数字图像的采集和Photoshop软件的操作41.1实验目的41.2实验任务及要求41.3实验内容、步骤和结果41.4 结果分析8实验二 图像的傅里叶变换92.1实验目的92.2实验任务及要求92.3实验内容、步骤和结果92.4 结果分析13实验三 图像的灰度变换和直方图变换143.1实验目的143.2实验任务及要求143.3实验内容、步骤和结果143.4 结果分析20实验四 图像的平滑处理214.1实验目的214.2实验任务

2、及要求214.3实验内容、步骤和结果214.4 结果分析22实验五235.1实验目的235.2实验任务及要求235.3实验内容、步骤和结果235.4 结果分析23实验六246.1实验目的246.2实验任务及要求246.3实验内容、步骤和结果246.4 结果分析24实验一 数字图像的采集和Photoshop软件的操作1.1实验目的1、熟悉并掌握MATLAB,PHOTOSHOP等工具的使用;2、实现图像的读取、显示、代数运算和简单的变换。1.2实验任务及要求1、根据实验内容在MATLAB中编写相应地代码,使结果符合题目要求;2、在PHOTOSHOP中实现与MATLAB中相同对图像的处理,进行对比;

3、3、完成实验报告。1.3实验内容、步骤和结果1、实验内容:a) 读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口上分成三个子窗口来分别显示RGB图像、灰度图像和二值图像,注上文字标题;b) 对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分别显示,注上文字标题;c) 对一幅图像进行灰度变化,实现图像变亮,变暗和负片效果,在同一个窗口内分成四个子窗口来分别显示,注上文字标题;d) 学会常用数字图像处理软件Photoshop的功能操作练习。2、步骤和结果:1) 打开Matlab,在命令框内输入相应地代码内容a),输入代码: a=imread('E:psps素

4、材壁纸g8.jpg');i=rgb2gray(a);I=im2bw(a,0.5);subplot(3,1,1);imshow(a);title('原图像');subplot(3,1,2);imshow(i);title('灰度图像');subplot(3,1,3);imshow(I);title('二值图像');2) 内容b),代码: a=imread('E:psps素材壁纸mario.jpg');A=imresize(a,800,800);b=imread('E:psps素材壁纸mario2.jpg');

5、B=imresize(b,800,800);Z1=imadd(A,B);Z2=imsubtract(A,B);Z3=immultiply(A,B);Z4=imdivide(A,B);subplot(3,2,1);imshow(A);title('原图像A');subplot(3,2,2);imshow(B);title('原图像B');subplot(3,2,3);imshow(Z1);title('加法图像');subplot(3,2,4);imshow(Z2);title('减法图像');subplot(3,2,5);imsh

6、ow(Z3);title('乘法图像');subplot(3,2,6);imshow(Z4);title('除法图像');内容c),代码: a=imread('E:psps素材壁纸mario.jpg');m=imadjust(a,0.5;1);%图像变亮n=imadjust(a,0;0.5);%图像变暗g=255-a;%负片效果subplot(2,2,1);imshow(a);title('原图像');subplot(2,2,2);imshow(m);title('图像变亮');subplot(2,2,3);ims

7、how(n);title('图像变暗');subplot(2,2,4);imshow(g);title('负片效果');4使用图像输入设备(扫描仪、数码相机、摄像机等)进行图像输入,学会常用数字图像处理软件Photoshop的功能操作练习。1.4 结果分析以上内容广泛应用于:图像分割、图像内容提取、图像目标跟踪和图像目标识别等方面。实验二 图像的傅里叶变换2.1实验目的熟悉及掌握图像的傅里叶变换原理及性质,实现图像的傅里叶变换。2.2实验任务及要求1、实现图像的傅里叶变换,按要求显示出变换的结果;2、完成实验报告。2.3实验内容、步骤和结果1、实验内容:a) 对

8、一幅图像进行平移,显示原始图像与处理后图像 ,分别对其进行傅里叶变换,显示变换后的结果,分析原图的傅里叶频谱与平移后的傅里叶频谱的对应关系;b) 对一幅图像进行旋转,显示原始图像与处理后的图像,分别对其进行傅里叶变换,显示变换后的结果,分析原图的傅里叶频谱与旋转后的傅里叶频谱的对应关系。2、步骤和结果:1) 打开MATLAB,根据题目要求在命令窗口写入相应地代码;2) 内容a):代码 : s=imread('E:psps素材壁纸mario.jpg');i=rgb2gray(s);i=double(i);j=fft2(i); %傅里叶变换k=fftshift(j);%直流分量移到

9、频谱中心l=log(abs(k);%对数变换m=fftshift(j);%直流分量移到频谱中心RR=real(m); %取傅里叶变换的实部II=imag(m); %取傅里叶变换的虚部A=sqrt(RR.2+II.2); %计算频谱府幅值A=(A-min(min(A)/(max(max(A)*255;%归一化b=circshift(s,800,450);%对图像矩阵im中的数据进行移位操作b=rgb2gray(b);b=double(b);c=fft2(b); %傅里叶变换e=fftshift(c);%直流分量移到频谱中心l=log(abs(e);%对数变换f=fftshift(c);%直流分量

10、移到频谱中心WW=real(f); %取傅里叶变换的实部BZZ=imag(f);%取傅里叶变换的虚部B=sqrt(WW.2+ZZ.2);%计算频谱府幅值B=(B-min(min(B)/(max(max(B)*255;%归一化subplot(2,2,1);imshow(s);title('原图像');subplot(2,2,2);imshow(uint8(b);title('平移图像');subplot(2,2,3);imshow(A);title('离散傅里叶图谱');subplot(2,2,4);imshow(B);title('平移离

11、散傅里叶频谱');结果如图3) 内容b),代码: s=imread('E:psps素材壁纸mario.jpg');i=rgb2gray(s);i=double(i);j=fft2(i); %傅里叶变换k=fftshift(j);%直流分量移到频谱中心l=log(abs(k);%对数变换m=fftshift(j);%直流分量移到频谱中心RR=real(m); %取傅里叶变换的实部II=imag(m); %取傅里叶变换的虚部A=sqrt(RR.2+II.2); %计算频谱府幅值A=(A-min(min(A)/(max(max(A)*255;%归一化b=imrotate(s,

12、-90);%对图像矩阵im中的数据进行移位操作b=rgb2gray(b);b=double(b);c=fft2(b); %傅里叶变换e=fftshift(c);%直流分量移到频谱中心l=log(abs(e);%对数变换f=fftshift(c);%直流分量移到频谱中心WW=real(f); %取傅里叶变换的实部BZZ=imag(f);%取傅里叶变换的虚部B=sqrt(WW.2+ZZ.2);%计算频谱府幅值B=(B-min(min(B)/(max(max(B)*255;%归一化subplot(2,2,1);imshow(s);title('原图像');subplot(2,2,2)

13、;imshow(uint8(b);title('平移图像');subplot(2,2,3);imshow(A);title('离散傅里叶图谱');subplot(2,2,4);imshow(B);title('平移离散傅里叶频谱'); 2.4 结果分析本次实验验证了傅里叶变换的平移不变性以及旋转不变性,使我对傅里叶变换运算有了更深入的了解。实验三 图像的灰度变换和直方图变换3.1实验目的1、熟悉及掌握图像的采样原理,实现图像的采样过程,进行图像的灰度转换;2、理解直方图的概念及应用,实现图像直方图的显示,及通过直方图的均衡化和直方图规定划方法对图

14、像进行修正。3.2实验任务及要求1、实现图像的直方图均衡化,按要求显示出结果;2、完成实验报告。3.3实验内容、步骤和结果1、实验内容:a) 对一幅图进行2倍、4倍、8倍和16倍减采样,显示结果;b) 显示一幅灰度图像a,改变图像的亮度使其整体变暗得到图像b,显示两幅图像的直方图;c) 对图像b进行直方图均衡化,显示结果图像和对应的直方图;d) 对B进行分段线性变换处理,试比较与直方图均衡化处理的异同。2、步骤和结果:1) 打开MATLAB,根据要求在命令窗口编写相应的代码;2) 内容a),代码:a=imread('E:psps素材壁纸mario.jpg');b=rgb2gra

15、y(a);for m=1:4 figure width,height=size(b); quartimage=zeros(floor(width/(m),floor(height/(2*m); k=1; n=1; for i=1:(m):width for j=1:(2*m):height quartimage(k,n)=b(i,j); n=n+1; end k=k+1; n=1; end imshow(uint8(quartimage);end3) 内容b),代码:a=imread('E:psps素材壁纸mario.jpg');c=rgb2gray(a);b=c-46;sub

16、plot(2,2,1);imhist(c);title('直方图');subplot(2,2,2);imhist(b);title('变暗后的直方图');subplot(2,2,3);imshow(c);title('原图像');subplot(2,2,4);imshow(b);title('变暗后的原图像');d=imadjust(c,0,1,1,0);imshow(d);4) 内容c),代码: b=imread('E:psps素材壁纸mario.jpg');c=rgb2gray(b);j=histeq(c);s

17、ubplot(2,2,1),imshow(c)subplot(2,2,2),imshow(j)subplot(2,2,3),imhist(c)%显示原始图像直方图subplot(2,2,4),imhist(j)%显示均衡化后图像直方图5) 内容d),代码:x1=0:0.01:0.125;x2=0.125:0.01:0.75;x3=0.75:0.01:1;y1=2*x1;y2=0.25+0.6*(x2-0.125);y3=0.625+1.5*(x3-0.75);x=x1,x2,x3;y=y1,y2,y3;plot(x,y);3.4 结果分析本次实验实现了图像的采样过程,进行了图像的灰度转换。实验

18、四 图像的平滑处理4.1实验目的1、熟悉并掌握常见的图像噪声种类;2、理解并掌握常用的图像的平滑技术,如领域平均法和中值滤波的原理、特点、适用对象。4.2实验任务及要求1、按要求为图像加入相应的常见噪声;2、根据不同的噪声使用不同的图像的平滑技术;3、完成实验报告。4.3实验内容、步骤和结果1、实验内容:a) 读出图像,给读出的图像分别加入高斯噪声、椒盐噪声和乘性噪声,并与原图像显示在同一图像窗口中;b) 对受高斯噪声(模拟值为0方差为0.02的高斯噪声)干扰的图像分别利用领域平均法和中值滤波法进行滤波去噪(窗口可变,可先取3*3,依次再取5*5,7*7),并显示滤波结果;c) 对受椒盐噪声的

19、图像(噪声方差为0.02)干扰的图像,选择合适的滤波器将噪声去噪;d) 对受乘性噪声的图像(噪声方差为0.02)干扰的图像,选择合适的滤波器将噪声去噪。2、步骤和结果:1) 打开MATLAB,在命令窗口编辑相应的程序;2) 内容a),代码: a=imread('E:psps素材壁纸mario.jpg'); j=imnoise(a,'gaussian',0,0.02); k=imnoise(a,'salt & pepper',0.04); l=imnoise(a,'speckle',0.05);subplot(4,1,1);

20、imshow(a);title('原图像');subplot(4,1,2);imshow(j);title('高斯噪声');subplot(4,1,3);imshow(k);title('椒盐噪声');subplot(4,1,4);imshow(k);title('乘性噪声');3) 内容b),代码:i=imread('E:psps素材壁纸mario.jpg');i=rgb2gray(i);j=imnoise(i,'salt & pepper',0.02);h1=fspecial('

21、average');A1=imfilter(j,h1);A2=medfilt2(j);subplot(2,2,1);imshow(i);title('原图像');subplot(2,2,2);imshow(j);title('椒盐图像');subplot(2,2,3);imshow(A1);title('均值滤波图像');subplot(2,2,4);imshow(A2);title('中值滤波图像');4) 内容c),代码:a=imread('E:psps素材壁纸mario.jpg');i=rgb2gra

22、y(a);I=imnoise(i,'salt & pepper',0.02);Z=medfilt2(i,3,3);Z1=medfilt2(I,3,3);Z2=medfilt2(I,5,5);Z3=medfilt2(I,7,7);subplot(2,2,1),imshow(Z);title('原图像中值滤波后');subplot(2,2,2),imshow(Z1);title('椒盐3*3中值滤波后');subplot(2,2,3),imshow(Z2);title('椒盐5*5中值滤波后');subplot(2,2,4),

23、imshow(Z3);title('椒盐7*7中值滤波后'); 4.4 结果分析中值滤波是一种非线性滤波,它利用一个含有奇数个像素的滑动窗口,将窗口正中点的灰度值用窗口各点的中值代替,由于椒盐噪声的灰度值不是在正中,因此可以直接被滤除,而点、线、尖角细节等较多的图像中,有效信号可能都不在正中。 在对图像进行邻域滤波时,半径不同,图像的模糊程度不同。原因是半径越大,图像的取值范围越大,越不精确,图像也就越模糊。实验五 5.1实验目的熟悉并掌握MATLAB图像处理工具箱的使用;理解并掌握常用的图像的增强技术。5.2实验任务及要求采用三种一阶导数边缘检测方法(如Robert、Sobe

24、l、prewitt)对图像进行锐化。采用二阶导数的拉普拉斯边缘检测方法对图像进行锐化。5.3实验内容、步骤和结果采用三种不同算子对图像进行锐化处理。代码:a=imread('E:psps素材壁纸mario.jpg');I=rgb2gray(a);H=fspecial('sobel');I1=imfilter(I,H);I1=imfilter(I,H);H=fspecial('prewitt');I2=imfilter(I,H);H=fspecial('laplacian');I3=imfilter(I,H);subplot(2,2

25、,1);imshow(I);title('原图像');subplot(2,2,2);imshow(I1);title('Sobel算子锐化图像');subplot(2,2,3);imshow(I2);title('prewitt算子锐化图像');subplot(2,2,4);imshow(I3);title('Laplacia算子锐化图像');2锐化空间滤波1)采用3×3的拉普拉斯算子w = 1, 1, 1; 1 -8 1; 1, 1, 1滤波。2)将1)结果叠加到原始图像上。可以看出噪声增强了(Laplacian算子对

26、噪声敏感),应想法降低。 3)获取Sobel图像并用imfilter对其进行5×5邻域平均,以减少噪声。 4)获取2)和3)相乘图像,噪声得以减少。 5)将4)结果叠加到原始图像上。 6)最后用imadjust函数对5)结果做幂指数为0.2的灰度变换。代码:i=imread('E:psps素材壁纸mario.jpg');i=rgb2gray(i);h1=1,1,1;1,-8,1;1,1,1;I1=imfilter(j,h1,'replicate');Z1=imadd(i,I1);h2=fspecial('sobel');I2=imfil

27、ter(j,h2,'replicate');h3=fspecial('average',5*5);I3=imfilter(i,h3);Z2=immultiply(Z1,I3);Z3=imadd(i,Z2);I4=imadjust(Z3,0.2);subplot(4,2,1);imshow(i);title('原图像');subplot(4,2,2);imshow(I1);title('拉普拉斯图像');subplot(4,2,3);imshow(Z1);title('叠加图像');subplot(4,2,4);im

28、show(I2);title('Sobel算子锐化图像');subplot(4,2,5);imshow(I3);title('领域平均原图像');subplot(4,2,6);imshow(Z2);title('相乘图像');subplot(4,2,7);imshow(Z3);title('叠加图像');subplot(4,2,8);imshow(Z4);title('灰度变换图像');3自己设计锐化空间滤波器,并将其对噪声图像进行处理,显示处理后的图像。代码:i=imread('E:psps素材壁纸mar

29、io.jpg');i=rgb2gray(i);j=imnoise(i,'gaussian',0,0.02);domain=8 8 0 8 8;8 8 0 8 8;0 0 0 0 0;8 8 0 8 8;8 8 0 8 8;K1=ordfilt2(j,5,domain);subplot(2,2,1),imshow(i);title('原图像');subplot(2,2,2),imshow(j);title('高斯噪声图像');subplot(2,2,3),imshow(K1);title('自定义模板处理图像');5.4 结

30、果分析Sobel算子做边缘检测,边缘定位精度不高,有时还可能对非边缘像素的响应大于某些边缘处的响应或者响应差别不是很大,造成漏检或误检,但是它对噪声具有较好的鲁棒性。Prewitt算子和Sobel算子提取边缘的结果差不多。在提取边缘的同时它对噪声具有平滑作用,能够抑制一定的噪声。由于Prewitt边缘检测算子是通过八个方向模板对图像进行卷积运算,因此运算量比较大。Log算子把的Gauss平滑滤波器和Laplacian锐化滤波器结合了起来,先平滑掉噪声,再进行边缘检测,所以效果会更好。Laplacian算子的特点:各向同性,线性和位移是不变的,对线性和孤立点检测效果好,但边缘方向信息丢失,常产生

31、双像素的边缘,对噪声有双倍的加强作用。实验六6.1实验目的 熟悉并掌握MATLAB图像处理工具箱的使用; 理解并掌握常用的图像的恢复和分割技术。6.2实验任务及要求 采用三种不同算子检测图像边缘,显示结果。分别使用Roberts、Prewitt、sobel算子和双峰阈值法、最佳阈值法进行图像分割。6.3实验内容、步骤和结果1) 采用三种不同算子检测图像边缘,显示结果。代码:a=imread('E:psps素材壁纸mario.jpg');i1=rgb2gray(a);BW1=edge(i1,'prewitt');BW2=edge(i1,'sobel'

32、;);BW3=edge(i1,'roberts');subplot(2,2,1);imshow(i1);title('原图');subplot(2,2,2);imshow(BW1);title('prewitt边缘检测');subplot(2,2,3);imshow(BW2);title('sobel边缘检测');subplot(2,2,4);imshow(BW3);title('roberts边缘检测');2)分别使用Roberts、Prewitt、sobel算子和双峰阈值法、最佳阈值法进行图像分割。代码:I=imread('E:psps素材壁纸mario.jpg');I=rgb2gray(I);thresh=graythresh(I)

温馨提示

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

评论

0/150

提交评论