首页 基于matlab数字图像处理GUI设计

基于matlab数字图像处理GUI设计

举报
开通vip

基于matlab数字图像处理GUI设计基于matlab数字图像处理GUI设计 目 录 摘要 .............................................. 2 一(数字图像概述 .................................... 3 1.1 数字图像处理的意义 ............................... 4 1.2 数字图像处理技术的发展 ........................... 5 二(matlab图像处理简介 ..........................

基于matlab数字图像处理GUI设计
基于matlab数字图像处理GUI设计 目 录 摘要 .............................................. 2 一(数字图像概述 .................................... 3 1.1 数字图像处理的意义 ............................... 4 1.2 数字图像处理技术的发展 ........................... 5 二(matlab图像处理简介 .............................. 6 2.1 matlab简介 .................................... 6 2.2 matlab图像界面GUI简介 .......................... 7 三(数字图像处理软件的设计 ........................... 7 3.1 软件的总体设计 ................................. 7 3.1.1整体界面设计 ................................... 8 3.1.2菜单栏设计 .................................... 8 3.2 文件的读入与显示 ................................ 8 3.3 图像的保存 ..................................... 9 3.4 图像的灰度处理 ................................. 9 3.5 图像二值化 .................................... 10 3.6 图像R直方图 .................................. 11 3.7 图像G直方图 .................................. 11 3.8 图像B直方图 .................................. 12 3.9 直方图均衡 .................................... 12 3.10 图像的腐蚀 .................................... 13 四(exe文件的生成 .................................. 14 参考文献 .......................................... 15 第1页 摘 要 数字图像处理是一门新兴技术,随着计算机硬件的发展,数字图像的实时处理已经成为可能,由于数字图像处理的各种算法的出现,使得其处理速度越来越快,能更好的为人们服务。数字图像处理是一种通过计算机采用一定的算法对图形图像进行处理的技术。数字图像处理技术已经在各个领域上都有了比较广泛的应用。图像处理的信息量很大,对处理速度的要求也比较高。MATLAB强大的运算和图形展示功能,使图像处理变得更加的简单和直观。本文介绍了MATLAB 语言的特点,基于MATLAB的数字图像处理环境,介绍了如何利用MATLAB及其图像处理工具箱进行数字图像处理,并通过一些例子来说明利用MATLAB图像处理工具箱进行图像处理的方法。主要论述了利用MATLAB的GUI实现图像二值化分析等图像处理。 关键词:MATLAB,数字图像处理,GUI,二值图像 第2页 Abstract Digital image processing is an emerging technology, with the development of computer hardware, real-time digital image processing has become possible due to digital image processing algorithms to appear, making it faster and faster processing speed, better for People services .Digital image processing is used by some algorithms computer graphics image processing technology. Digital image processing technology has been in various areas have a relatively wide range of applications. Image processing large amount of information on the processing speed requirement is relatively high. MATLAB powerful computing and graphics display capabilities, so that image processing becomes more simple and intuitive. This paper introduces characteristics of MATLAB language and this MATLAB-based digital image processing environment, describes how to use the MATLAB Image Processing Toolbox for its digital image processing, and through some examples to illustrate the use of MATLAB Image Processing Toolbox for image processing method. Mainly discusses the use of MATLAB for image enhancement,2-numeric image and other image processing technologies. Key words:MATLAB, digital image processing,GUI , image enhancement,2-numeric image 第3页 一、数字图像处理概述 1.1数字图像处理的意义 数字图像处理(Digital Image Processing),就是利用数字计算机或者其他数字硬件,对从图像信息转换而得到的电信号进行某些数学运算,以提高图像的实用性。例如从卫星图片中提取目标物的特征参数,三维立体断层图像的重建等。总的来说,数字图像处理包括点运算、几何处理、图像增强、图像复原、图像形态学处理、图像编码、图像重建、模式识别等。 由于计算机处理能力的不断增强,数字图像处理学科在飞速发展的同时,也越来越广泛地向许多其他学科快速交叉渗透,使得图像作为信息获取以及信息的利用等方面也变得越来越重要。目前数字图像处理的应用越来越广泛,已经渗透到工业、医疗保健、航空航天、军事等各个领域,在国民经济中发挥越来越大的作用。 MathWorks公司推出的MATLAB软件是学习数理知识的好帮手。应用MATLAB友好的界面和丰富、实用、高效的指令及模块,可以使人较快地认识、理解图像处理的相关概念,逐步掌握图像信号处理的基本方法,进而能够解决相关的工程和科研中的问题。 图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域必然涉及到人类生活和工作的方方面面。随着人类活动范围的不断扩大,图像处理的应用领域也将随之不断扩大,已在国家安全、经济发展、日常生活中充当越来越重要的角色,对国计民生的作用不可低估。 1.2 数字图像处理技术的发展 数字图像处理最早出现于20世纪50年代,当时的电子计算机已经发展到一定水平,人们开始利用计算机来处理图形和图像信息。数字图像处理作为一门学科大约形成于20世纪60年代初期。 早期的图像处理的目的是改善图像的质量,它以人为对象,以改善人的视觉效果为目的。图像处理中,输入的是质量低的图像,输出的是改善 第4页 质量后的图像,常用的图像处理方法有图像增强、复原、编码、压缩等。首次获得实际成功应用的是美国喷气推进实验室(JPL)。他们对航天探测器徘徊者7号在1964年发回的几千张月球照片使用了图像处理技术,如几何校正、灰度变换、去除噪声等方法进行处理,并考虑了太阳位置和月球环境的影响,由计算机成功地绘制出月球 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 面地图,获得了巨大的成功。随后又对探测飞船发回的近十万张照片进行更为复杂的图像处理,以致获得了月球的地形图、彩色图及全景镶嵌图,获得了非凡的成果,为人类登月创举奠定了坚实的基础,也推动了数字图像处理这门学科的诞生。在以后的宇航空间技术,如对火星、土星等星球的探测研究中,数字图像处理技术都发挥了巨大的作用。数字图像处理取得的另一个巨大成就是在医学上获得的成果。1972年英国EMI公司工程师Housfield发明了用于头颅诊断的X射线计算机断层摄影装置,也就是我们通常所说的CT(Computer Tomograph)。CT的基本方法是根据人的头部截面的投影,经计算机处理来重建截面图像,称为图像重建。1975年EMI公司又成功研制出全身用的CT装置,获得了人体各个部位鲜明清晰的断层图像。1979年,这项无损伤诊断技术获得了诺贝尔奖,说明它对人类作出了划时代的贡献。 与此同时,图像处理技术在许多应用领域受到广泛重视并取得了重大的开拓性成就,属于这些领域的有航空航天、生物医学工程、工业检测、机器人视觉、公安司法、军事制导、文化艺术等,使图像处理成为一门引人注目、前景远大的新型学科。随着图像处理技术的深入发展,从70年代中期开始,随着计算机技术和人工智能、思维科学研究的迅速发展,数字图像处理向更高、更深层次发展。人们已开始研究如何用计算机系统解释图像,实现类似人类视觉系统理解外部世界,这被称为图像理解或计算机视觉。很多国家,特别是发达国家投入更多的人力、物力到这项研究,取得了不少重要的研究成果。其中代表性的成果是70年代末MIT的Marr提出的视觉计算理论,这个理论成为计算机视觉领域其后十多年的主导思想。图像理解虽然在理论方法研究上已取得不小的进展,但它本身是一个比较难的研究领域,存在不少困难,因人类本身对自己的视觉过程还了解甚少,因此计算机视觉是一个有待人们进一步探索新的领域。 第5页 二、matlab图像处理简介 2.1 matlab简介 MATLAB 的名称源自 Matrix Laboratory ,由美国MathWorks公司推出。20世纪九十年代的时候,matlab已经成了国际控制界公认的标准计算软件。2001年推出了matlab6.0版本,其中有simulink工具包。开发了与外部进行直接数据交换的组件。同时也推出了符号计算工具包。它是一种科学计算软件,专门以矩阵的形式处理数据。MATLAB 将高性能的数值计算和可视化集成在一起,构成了一个方便的、界面友好的用户环境,并提供了大量的内置函数。从而被广泛地应用于科学计算、算法开发—预设计和验证、数据采集、建模仿真与原型设计、数据分析研究与可视化、科学与工程绘图、应用开发环境、控制系统、信息处理、神经网络、图像处理、小波分析等领域的分析、仿真和设计工作,而且利用 MATLAB 产品的开放式结构,可以非常容易地对MATLAB 的功能进行扩充,从而在不断深化对问题认识的同时,不断完善 MATLAB 产品以提高产品自身的竞争能力。MATLAB中的数字图像是以矩阵形式表示的,这意味着ATLAB强大的矩阵运算能力用于图像处理非常有利,矩阵运算的语法对MATLAB中的数字图像同样适用。本文对MATLAB图像处理工具箱进行探索及应用,实验 证明 住所证明下载场所使用证明下载诊断证明下载住所证明下载爱问住所证明下载爱问 该软件功能强大,语言简洁易学,人机界面友好,工具箱具有丰富的技术支持并集成了该领域家的智慧,应用简单而效果良好。 2.2 matlab图形界面GUI简介 用户界面是指:实现人与机器(或程序)之间交互作用的工具和方法。如键盘、 鼠标等都可成为与计算机交换信息的接口。图形用户界面GUI(全称Graphical User Interfaces )则是由窗口、光标、按键、菜单、文字说明等对象构成的一个用户界面,用户图形界面(GUI)是程序的图形化界面。GUI可以使用户定制用与MATLAB的交互方式。把图形界面加到MATLAB 的函数和M文件中。GUI可以在MATLAB 中生成非常有效的工具和应用程序,或是建立演示工作的交互式界面。创建MATLAB 用户图形界面必须有三个基本元素: (1) 组件:在matlab GUI 中的每一个项目如按钮、标签、编辑框等都是一个 图形化组件。组件又可分为三类:图形化控件(按钮,编辑框,列表,滚动条等)、静 第6页 态元素(窗口和文本字符串)、菜单和坐标系。图形化控件和静态元素由函数uicontrol创建,菜单由函数uimenu和uicontextmenu创建,坐标系经常用于显示图形化数据,由函数axes创建。 (2)图象窗口(Figure):GUI的每一个组件都必须安排在图象窗口中,可以用 函figure来创建空图象窗口,空图象窗口经常用于放置各种类型的组件。 (3)回应:当用户用鼠标单击或用键盘键入一些信息,那么程序就要有相应的执行动作。鼠标单击或键入信息是一个事件,如果matlab程序运行相应的函数,那么matlab函数肯定会有所反应。例如,如果用户单击一按钮,这个事件必然引起相应的matlab语句执行。这些相应的语句被称为回应,在执行GUI的单个图形组件时,必须有一个回应。 三、数字图像处理软件设计 本软件包的主要功能是通过matlab的GUI界面编制一个简易的图形界面以读取bmp格式的原始图像数据,并对它们进行分析和处理,得到所需要的效果,并把处理后的相关信息用图像显示出来。本软件的主要功能有:bmp图像文件的打开和保存,图像灰度处理和腐蚀、直方图的分析等等。 3.1软件总体设计 3.1.1整体界面设计 第7页 3.1.2菜单栏设计 3.2图像的读入与显示 [name,path]=uigetfile({'*.bmp'},'载入图像'); if isequal(name,0)|isequal(path,0) errordlg('没有选中文件','出错'); return; else x=imread([path,name]); axes(handles.axes1); imshow(x); handles.img=x; handles.noise_img=x; 第8页 3.3图像的保存 %文件保存 [filename,pathname] = uiputfile('*.bmp','图片保存为'); if isequal([filename,pathname],[0,0]) errordlg('没有保存','出错'); return; else file=strcat(pathname,filename); (handles.axes2); i=getimage(gca); imwrite(i,file); end 3.4图像的灰度处理 %灰度处理 axes(handles.axes2); if isrgb(handles.img) y=rgb2gray(handles.img); %RGB•••••••••• imshow(y); 第9页 else msgbox('这已经是灰度图像','转换失败'); 3.5图像的二值化 %二值图像 axes(handles.axes2); x=(handles.img); if isrgb(x) msgbox('这是彩色图像,不能转换为二值图像','转换失败'); else j=im2bw(x); imshow(j); end 第10页 3.6图像R直方图 %R直方图 set(handles.axes2,'HandleVisibility','ON'); axes(handles.axes2); x=imhist(handles.img(:,:,1)); %直方图统计 x1=x(1:10:256); horz=1:10:256; bar(horz,x1); set(handles.axes2,'xtick',0:50:255); 3.7图像G直方图 %G直方图 set(handles.axes2,'HandleVisibility','ON'); axes(handles.axes2); if isrgb(handles.img) 第11页 x=imhist(handles.img(:,:,2)); %直方图统计 x1=x(1:10:256); horz=1:10:256; bar(horz,x1); set(handles.axes2,'xtick',0:50:255); else msgbox('这是灰度图像','旋转失败'); end 3.8图像B直方图 %B直方图 set(handles.axes2,'HandleVisibility','ON'); axes(handles.axes2); if isrgb(handles.img) x=imhist(handles.img(:,:,3)); x1=x(1:10:256); horz=1:10:256; bar(horz,x1); 第12页 %axis([0 255 0 150000]); set(handles.axes2,'xtick',0:50:255); %set(handles.axes2,'ytick',0:2000:15000); else msgbox('这是灰度图像','旋转失败'); end 3.9直方图均衡 %直方图均衡 set(handles.axes2,'HandleVisibility','ON'); axes(handles.axes2); if isrgb(handles.img) a=histeq(handles.img(:,:,1)); b=histeq(handles.img(:,:,2)); c=histeq(handles.img(:,:,3)); k(:,:,1)=a; k(:,:,2)=b; k(:,:,3)=c; imshow(k); 第13页 else h=histeq(handles.img); imshow(h); end 3.10图像的腐蚀 %图像腐蚀 axes(handles.axes2); x=(handles.img); if isrgb(x) msgbox('这是彩色图像,不能进行图像腐蚀','失败'); else j=im2bw(x); se=eye(5); bw=bwmorph(j,'erode'); imshow(bw); end 第14页 四、exe文件的生成 最后本课题将创建好的GUI生成了可以执行的EXE文件。在matlab的command窗口中输入 mcc -B sgl untitled.m ,等待一到两分钟。这时,如果没有安装其他编译器,系统会提示是否选择MATLAB自带的LCC作为编译器。然后在放文件的地方就会出现几个文件,其中一个为EXE格式的,这样就实现了应用程序的创建。 参考文献 【1】. 朱富丽 河南商业高等专科学校现代教育与实验中心 2010 【2】. 高娜,陶慧 Matlab在数字图像处理中的应用 河南理工大学 2005 【3】. 袁怡圃 (刘怀如 基于MATLAB的数字图像处理教学软件包的设计 2009 【4】. 崔文 浅析MATLAB在数字图像处理中的应用洛阳大学 2006 【5】. 张国琴,吴周桥MATLAB 在数字图像处理教学中的应用 武汉科技学2005 【6】. 郑继刚 MATLAB在数字图像处理中的应用 保山学院 2009 【7】. 梁原 基于MATLAB的数字图像处理系统研究 长春理工大学 2008 【8】. 缪绍纲. 数字图像处理:活用 西南交通大学出版社, 2001 第15页
本文档为【基于matlab数字图像处理GUI设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_314871
暂无简介~
格式:doc
大小:217KB
软件:Word
页数:16
分类:生活休闲
上传时间:2018-10-05
浏览量:77