数字图像处理实习报告.doc

上传人:文库蛋蛋多 文档编号:2391597 上传时间:2023-02-17 格式:DOC 页数:28 大小:6.20MB
返回 下载 相关 举报
数字图像处理实习报告.doc_第1页
第1页 / 共28页
数字图像处理实习报告.doc_第2页
第2页 / 共28页
数字图像处理实习报告.doc_第3页
第3页 / 共28页
数字图像处理实习报告.doc_第4页
第4页 / 共28页
数字图像处理实习报告.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《数字图像处理实习报告.doc》由会员分享,可在线阅读,更多相关《数字图像处理实习报告.doc(28页珍藏版)》请在三一办公上搜索。

1、数字图像处理实习报告 专业:生医0901 小组成员:李建鲁、张丹 指导老师:喻 罡2012年7月10日数字图像处理一、目的1 用MATLAB或其他的语言来实现数字图像处理方面的一些操作;2 熟悉MATLAB7.1的一些基本函数及与数字图像处理相关的函数;3 熟悉图形用户界面(GUI),并用其来编写界面;4 熟悉数字图像处理课程中的一些知识点,如图像灰度变化,直方图,图像增强,滤波,图像复原,形态学处理,图像边缘检测,图像放大和缩小等等,并能用MATLAB实现以上的功能;5 掌握从简单到复杂的方法,一步一步的实现功能,并能耐心排错,养成合作互助精神。二、任务1实现图像的打开,显示,保存操作,实现

2、图像的旋转;2实现图像的灰度变换(图像反转,对数反转,幂次反转);3实现图像的大小变换;4实现图像的直方图处理及直方图均衡化;5实现图像的空域和频域增强,实现均值滤波,维纳滤波,中值滤波及巴特沃斯低通、高通滤波;6实现图像的加噪,如椒盐噪声、高斯噪声等;7实现图像的形态学运算,如开运算,闭运算,膨胀运算,腐蚀运算等操作;8实现图像的边缘检测,如Robert算子边缘检测,Sobel算子边缘检测,Prewitt算子边缘检测,Log算子边缘检测,Canny算子边缘检测;9实现整个界面的设计,编排,最终达到一种比较完美的效果。三、主要内容及步骤 本次实验主要是利用设计编辑器进行GUI界面设计,并进行相

3、应代码编写,以实现数字图像处理。 步骤:1、启动GUIDE。直接输入guide运行或单击File菜单栏中的New打开GUI模块界面。2、利用GUI界面中的控件完成界面设计。3、用属性编辑器设置各个控件的相关属性。4、编写回调程序。主要界面四、算法实现(相应代码) 打开:filename,pathname=. uigetfile(*.jpg,JPEG-Files (*.jpg); . *.tif,TIF-Files(*.tif);*.png,PNG-Files(*.png);. *.*,All Files (*.*),_,untitled.jpg);str=pathname,filename;g

4、lobal image;global dai;image=imread(str);dai=image;axes(handles.axes1);imshow(image);图像翻转:可以实现顺时针90度的选转,每点击一下,则选择90global dai;dai=imrotate(dai,90,bilinear);axes(handles.axes2);imshow(dai);对数翻转:global dai; A=double(dai); m,n=size(dai); for x=1:m for y=1:n g(x,y)=log(A(x,y)+1); end end axes(handles.ax

5、es2);imshow(mat2gray(g);幂次翻转:global dai; a=double(dai); m,n=size(dai); for x=1:m for y=1:n g(x,y)=0; g(x,y)=a(x,y).5; end end axes(handles.axes2);imshow(mat2gray(g);直方图:global dai;axes(handles.axes2);counts,x=imhist(dai);bar(x,counts);直方图均衡化:global dai; J= histeq(dai); axes(handles.axes2); imshow(J)

6、;开运算:global dai; se=strel(disk,1);pp3=imopen(dai,se); axes(handles.axes2); imshow(pp3);闭运算:global dai; se=strel(disk,1); pp4=imclose(dai,se); axes(handles.axes2); imshow(pp4);膨胀运算:global dai; se=strel(disk,1); pp1=imdilate(dai,se); axes(handles.axes2); imshow(pp1);腐蚀运算:global dai; se=strel(disk,1);

7、pp2=imerode(dai,se); axes(handles.axes2);imshow(pp2);椒盐噪声:加入的参数为0.05global daiglobal imageprompt=输入参数1:;defans=0;p=inputdlg(prompt,输入参数,1,defans);p1=str2num(p1);dai=imnoise(image,salt & pepper,p1); %生成椒盐噪声axes(handles.axes2);imshow(dai);imwrite(dai,salt.jpg); 高斯噪声:输入的参数1为0.5参数2为0.5global daiglobal i

8、mageprompt=输入参数1:,输入参数2:;defans=0,0;p=inputdlg(prompt,输入参数,1,defans);p1=str2num(p1);p2=str2num(p2);dai=imnoise(image,gaussian,p1,p2); %生成高斯噪声axes(handles.axes2);imshow(dai);Log算子边缘检测:global dai; BW4=edge(dai,log); axes(handles.axes2);imshow(BW4);Sobel算子边缘检测:global dai;BW2=edge(dai,sobel); axes(handl

9、es.axes2); imshow(BW2);Canny算子边缘检测:global dai; BW5=edge(dai,canny); axes(handles.axes2); imshow(BW5);Prewitt算子边缘检测:global dai; BW3=edge(dai,prewitt); axes(handles.axes2); imshow(BW3);均值滤波:global dai;axes(handles.axes2);k1=filter2(fspecial(average,5),dai)/255;imshow(k1);维纳滤波:global dai;axes(handles.a

10、xes2);prompt=输入参数1:,输入参数2:;defans=5,5;p=inputdlg(prompt,输入参数,1,defans);p1=str2num(p1);p2=str2num(p2);dai=wiener2(dai,p1,p2); %维纳滤波imshow(dai);imwrite(dai,wiener.jpg); 中值滤波:global daidai=medfilt2(dai,5,5,symmetric); axes(handles.axes2);%中值滤波imshow(dai);imwrite(dai,medfilt.jpg);巴特奥斯滤波:global dai; axes

11、(handles.axes2); f=double(dai); g=fft2(f); g=fftshift(g); N1,N2=size(g); n=2; d0=50; n1=fix(N1/2); n2=fix(N2/2); for i=1:N1 for j=1:N2 d=sqrt(i-n1)2+(j-n2)2); h=1/(1+0.414*(d/d0)(2*n); result(i,j)=h*g(i,j); end end result=ifftshift(result); X2=ifft2(result); X3=uint8(real(X2); imshow(X3);高通滤波:global

12、 dai; axes(handles.axes2); f=double(dai); g=fft2(f); g=fftshift(g); N1,N2=size(g); n=2; d0=5; n1=fix(N1/2); n2=fix(N2/2); for i=1:N1 for j=1:N2 d=sqrt(i-n1)2+(j-n2)2); if d=0 h=0; else h=1/(1+(d0/d)(2*n); end result(i,j)=h*g(i,j); end end result=ifftshift(result); X2=ifft2(result); X3=uint8(real(X2)

13、; imshow(X3);图像旋转:可以任意角度旋转,上图为旋转30的截图global imageaxes(handles.axes2);prompt=旋转角度:;defans=0;p=inputdlg(prompt,input,1,defans);p1=str2num(p1);f=imrotate(image,p1,bilinear,crop);imshow(f);handles.img=f;guidata(hObject,handles);上下翻转:global imagef=flipud(image);axes(handles.axes2)imshow(f);handles.img=f;

14、 guidata(hObject,handles);镜像翻转:axes(handles.axes2);global imagef=fliplr(image);imshow(f);handles.img=f;guidata(hObject,handles);转换成灰度:global dal;global image%T=getimage;dal=rgb2gray(image); axes(handles.axes2);imshow(dal);截图:global dal;global imageaxes(handles.axes2);dal=imcrop(image); axes(handles.

15、axes2);imshow(dal);global image axes(handles.axes2);imshow(image); 撤销:axes(handles.axes2); global Timshow(T);放大与缩小:global imageaxes(handles.axes2);b=double(image);a=str2num(get(handles.edit5,String);c=imresize(b,a,nearest);imshow(uint8(c);axes(handles.axes2);保存:FileName FilePath=uiputfile(*.jpg,JPEG

16、-Files (*.jpg); . *.tif,TIF-Files(*.tif);*.png,PNG-Files(*.png);. *.*,All Files (*.*),_,untitled.jpg); if isequal(FileName,FilePath,0,0) FileFullName=FilePath FileName; axes(handles.axes2); ITER=getimage(gca); imwrite(ITER,FileFullName,jpg); else msgbox(保存失败!); end六、讨论(1)在基于空域的图像增强中,对数变换和指数变化,能压缩或抑制

17、明暗灰度级,从而是图片变得清晰。(2)直方图均衡化能是变化后的图像函数密度分布近似均匀化,扩展了像素动态范围,但不能抑制噪声。(3)均值滤波能有效除去图像中不相关的细节,减少噪声,但易引起边缘模糊;中值滤波去噪能力强,对椒盐噪声尤为有效,能有效保持图像的细节(边缘)。(4)基于频域的图像增强中,巴特沃斯滤波和高斯滤波都能使图像平滑,但巴特沃斯不能彻底消除振铃效应,而高斯可以。(5)边缘检测中:Sobert算子在用于水平和垂直方向的检测时精确度高但容易丢失边缘。不能抑制噪声,对陡峭的地噪声图像检测效果好。Sobel算子能抑制一定的噪声,易引起边缘模糊,检测出为噪声,检测效果低。Prewitt算子

18、和Sobel相似。Log算子对噪声抑制明显,亦能是边缘平滑,但有时会丢失很多边缘。Canny算子抗躁能力强,检测精度高。七、实习总结刚开始听到老师讲实习内容是觉得比较简单,因为以前用过MATLAB做过类似的实验,何况这次可以调用MATLAB中本身库函数。但真正去看了题目时觉得好难,既要用GUI设计界面,又要编写代码,而对于MATLAB的应用也不是很熟练。经过查阅资料,和队友讨论总算有了思路。 刚刚开始时的确不熟悉,总是犯错,有各种各样的问题,加上粗心大意,经常错误还找不到错误。通过这15天的实习我学会了很多知识,对如何获得知识也有了一定的感知。并且有效地培养我们自学能力和合作互作精神。 首先,对于这个题目,要有充分利用老师见过的知识和上次实践的相关内容。同时,和同学讨论,了解他人的想法和思路,最后得出自己的思路。 其次,熟悉MATLAB的基本运用,利用GUI设计界面的方法及相关库函数的使用和代码的编写。 最后,是实验的调试,找出错误,并改正,从而达到预期的效果。 通过本次实验,有效地巩固了课本知识,综合各方面因素,让我们理解数字图像处理各种方法的优缺点。八、参考文献1、数字图像处理2、EEE图像处理学报1996的专刊中介绍了非线性图像处理的内容。3、网上资料

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

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号