欢迎来到天天文库
浏览记录
ID:36624050
大小:1.24 MB
页数:10页
时间:2019-05-13
《基于MATLABGUI的数字图像处理的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、《数字视音频技术》课程设计报告题目:基于MATLABGUI的数字图像处理专业名称:电子信息工程班级:电信092学号:910706201姓名:XXX2012年11月基于MATLABGUI的数字图像处理XXX中文摘要:本文以MATLAB软件的图形用户界面(GUI)开发环境和图像处理工具箱为平台设计了数字图像综合处理系统,通过编写不同的按钮代码,实现数字图像的翻转、旋转、亮度调节、对比度调节和反色、浮雕、复古、连环画等功能,操作简单且美观。关键词:MATLAB数字图像处理GUI1设计内容和环境条件在MATLAB中,GUI[1]是一个包含多
2、种对象的图形窗口,并为GUI开发提供一个方便高效的集成开发环境GUIDE。GUIDE主要是一个界面设计工具集,MATLAB将所有GUI支持的控件都集成在这个环境中,并提供界面外观、属性和行为响应方式的设置方法。GUIDE将设计好的GUI保存在一个FIG文件中,同时还生成M文件框架。其中FIG文件包括GUI图形窗口及其所有FIG文件包含序列化的图形窗口对象;M文件包括GUI设计、控制函数以及定义为子函数的用户控件回调函数。GUI创建包括界面设计和控件编程两部分,主要步骤如下:通过设置GUIDE应用程序的选项来运行GUIDE;使用界面设
3、计编辑器进行界面设计;编写控件行为响应控制(即回调函数)代码。在MATLAB中,GUIDE提供多个模板来定制GUI。这些模板均已包括相关的回调函数,可以通过修改相应的M文件函数实现指定功能。2方案论证本设计涉及到MATLAB中GUIDE工具的使用,通过创建菜单型界面,来实现图像的处理。该设计打算通过编写不同的按钮代码,实现数字图像的翻转、旋转、亮度调节、对比度调节和反色、浮雕、复古、连环画等功能。旋转是指图像绕图像原点进行任一角度的几何变换,本设计通过建立两个不同的界面,通过界面间数据传递的方法来实现对图像的不同角度的旋转。本设计用
4、到了MATLAB中提供的imrotate函数。图像的翻转,包括图像的上下翻转和左右翻转。对于彩色图像,上下翻转利用flipud函数实现,左右翻转使用liplr函数实现。而对于二值图像则通过矩阵间的关系来实现。在进行亮度调节和对比度调节时,虽然可以以对话框的形式输入调节的比例系数,但实际效果不好,操作也不方便,故选择滚动条来调节。图像的亮度调节即对图像明亮程度的调节,通过加大或减小每个像素的三色数来调节。应用公式:V=V'x(1+d),其中,(-1≤d≤1),式中:V为调整后颜色值,V’为原颜色值,d为亮度调整系数。图像的对比度调节,
5、利用函数g=127+(f-127)(1+d)加强黑到白的渐变。。在图像特效方面,所谓图像反色就是将原图像灰度值翻转,简单说来就是使黑变白,使白变黑。假设对灰度级范围是[0,L-1]的图像求反,就是通过变换将[0,L-1]变换到[L-1,0]。实现图像浮雕效果,一般是将图像上每个像素点与其对角线的像素点形成差值,使相似颜色值淡化,不同颜色值突出,从而产生纵深感,达到浮雕的效果。其他图像特效的实现均是通过自编函数达成的,将在设计过程中说明。3设计过程3.1界面设计在命令窗口中直接输入guide命令,弹出如图1所示的窗口,在弹出的guid
6、equickstart窗口中,在CreateNewGUI选项卡中选择BlankGUI(default),并点击确定按钮,进入图形用户界面来设计系统静态界面,图2就是Guide提供的图形界面设计工具集【3】,在此界面下就可以利用控件组件、文本菜单、排列工具等对系统的界面进行设计。图1创建GUI图2空白界面各控件的放置如图3所示,并通过属性检查器等对各控件进行相应的设置。图3设计界面效果图3.2程序设计3.2.1文件右击“打开”按钮,选择“callback”跳转到回调函数的编写。在Matlab中,创建文件打开对话框的函数是uigetfi
7、le。其主要代码如下:[filename,pathname]=uigetfile({'*.bmp;*.jpg;*.png;*.jpeg;*.tif;*.gif','ImageFiles'},'打开图像');%设置显示打开的图像类型ifisequal(filename,0)
8、
9、isequal(pathname,0)%图像路径的合法性判断return;end图像的保存,同样通过对话框的形式来保存图像数据。通过uigetfile函数选择文件名和路径,最后用imwrite函数,把数据im存到指定的文件。其代码如下:iffilterindex
10、==0%选择取消,不保存图像return;else%图像另存为str=[pathnamefilename];imwrite(im,str);end“原图”的设置,通过再次获取原图的路径后进行读取显示,使其恢复到原图状态。3.2.2翻转
此文档下载收益归作者所有