2017毕业论文-基于matlab的图像处理技术及用户界面设计

上传人:自*** 文档编号:79725554 上传时间:2019-02-17 格式:DOC 页数:19 大小:2.39MB
返回 下载 相关 举报
2017毕业论文-基于matlab的图像处理技术及用户界面设计_第1页
第1页 / 共19页
2017毕业论文-基于matlab的图像处理技术及用户界面设计_第2页
第2页 / 共19页
2017毕业论文-基于matlab的图像处理技术及用户界面设计_第3页
第3页 / 共19页
2017毕业论文-基于matlab的图像处理技术及用户界面设计_第4页
第4页 / 共19页
2017毕业论文-基于matlab的图像处理技术及用户界面设计_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《2017毕业论文-基于matlab的图像处理技术及用户界面设计》由会员分享,可在线阅读,更多相关《2017毕业论文-基于matlab的图像处理技术及用户界面设计(19页珍藏版)》请在金锄头文库上搜索。

1、1 论论文成文成绩绩 学校 基于基于 matlab 的的图图像像处处理技理技术术及用及用户户界面界面设计设计 姓姓 名名 x 学学 号号 x 课课 程程 数字数字图图像像处处理理 专业专业年年级级 xx 指指导导教教师师 xx xx 2011 年年 1 月月 5 日日 1 目目 录录 1前言前言.1 2设计分析设计分析1 2.1 设计目的1 2.2 设计要求1 2.3 总体设计分析2 3实现方法实现方法2 31 文件打开.2 3.2 文件重载4 3.3 RGB 转换为灰度.4 3.4 文件保存.4 3.5 关闭.5 3.6 退出项.6 3.7 垂直镜像.7 3.8 水平镜像.7 3.9 图像缩

2、放.8 3.9 图像旋转.9 3.10 反色.10 3.10 直方图均衡.11 3.11 全局线性变换.11 3.12 分段线性变换.11 3.13 添加噪声.12 3.13 平滑处理选项.13 3.13 锐化处理.14 3.14 伪彩色增强.15 4调试以及分析调试以及分析15 5结论结论15 参考文献参考文献16 致致 谢谢16 1 基于基于 matlabmatlab 的图像处理技术及用户界面设计的图像处理技术及用户界面设计 学 生:x 指导老师:x (学校 系,地名 邮编) 1前言前言 数字图像处理技术是 20 世纪 60 年代发展起来的一门新兴学科,随着图像处理理论和方法的 进一步完善

3、,使得数字图像处理技术在各个领域得到了广泛应用,并显示出广阔的应用前景。 MATLAB 既是一种直观、高效的计算机语言,同时又是一个科学计算平台。它为数据分析和数据 可视化、算法和应用程序开发提供了最核心的数学和高级图形工具。根据它提供的 500 多个数学 和工程函数,工程技术人员和科学工作者可以在它的集成环境中交互或编程以完成各自的计算。 MATLAB 中集成了功能强大的图像处理工具箱。由于 MATLAB 语言的语法特征与 C 语言极为相 似,而且更加简单,更加符合科技人员对数学表达式的书写格式,而且这种语言可移植性好、可 扩展性强、再加上其中有丰富的图像处理函数,所以 MATLAB 在图像

4、处理的应用中具有很大的优 势。 2设计分析设计分析 2.1 设计目的设计目的 综合运用 MATLAB 工具箱实现图像处理的 GUI 程序设计。 2.2 设计要求设计要求 (1) 学习各种简单的图像处理算法,实现对图像的基本操作,如图像的打开,关闭,保存;数字 图像的基本处理,如图像放大、缩小、旋转、位移、滤波、锐化等。 (2) 菜单栏包括:文件,几何变换,灰度处理(点运算) ,图像增强等项。 (3) 主界面部分包含两个图像显示,和部分按钮及需要输入的参数。由于界面大小有限,部分功 能留在菜单栏中。 (4) 描述所设计的系统功能和所用的算法,对系统的功能和算法进行详细的论述。 (5) 编写程序代

5、码和调试程序,设计一个基于 MATLAB 的数字图像处理系统。 2 2.3 总体设计分析总体设计分析 设计图形的初始界面如图 2.1 所示: 图 2.1 软件界面 本软件在菜单栏添加了四个菜单选项,分别实现文件操作、几何变换、灰度处理及图像增强 等多种功能。头部是用四个静态框组成。用一个 axes 控件显示原始图像,另一个 axes 控件显示 每一步处理后的图像。对于坐标是用来对比缩放图像时查看其效果的。 3实现方法实现方法 具体设计主要有四个部分组成,分别是文件、几何变换、灰度处理及图像增强,然后每一部分又 有不同的选项,文件中包括:打开、重载、RGB 转换为灰度、保存处理结果、关闭及退出;

6、几 何变换中包括:垂直镜像、水平镜像、图像缩放及图像旋转;灰度处理包括:反色、直方图均衡、 全局线性变换及分段线性变换;图像增强中有:加噪声、平滑、锐化及伪彩色增强。 其中加噪声又有两种,椒盐噪声和高斯噪声;平滑中包括邻域平均法和中值平均法;锐化分为梯 度锐化和拉普拉斯锐化;伪彩色增强包括亮度切割法和灰度级彩色变换法。下面就其程序及效果 做详细说明。 31 文件打开文件打开 程序说明: 为了让使用者方便的使用,所以在设计的时候,通过对话框的形式来选择文件,选择 uigetfile 函数来实现,uigetfile 函数显示一个打开文件对话框,该对话框自动列出当前路径下的 3 目录和文件,由于这个

7、 GUI 程序的操作对象是图像文件,所以设置这里的缺省后缀名为“.jpg” 。 Uigetfile 函数的调用格式为name,path=uigetfile(),在按下对话框中的执行按钮“打开” 后,返回选择的文件名和路径,分别保存到“name”和“path”中。如果按下取消按钮或是发生 错误,则返回值是 0。根据返回值的情况,如果是 0,则弹出提示错误的对话框,否则,通过 imread 函数读出图像数据,把图像数据赋值给全局变量 I。 运行效果: 图 3.1 文件打开图 3.2 文件重载文件重载 其实文件重载和文件打开是相差不大的,基本功能相同。主要区别是重新载入一张要求处理 的图片,相当于给

8、全局变量 I 符新值。 3.3 RGB 转换为灰度转换为灰度 程序说明: 由于小软件中有许多功能是针对于灰度图像进行处理的,所以在进行这些操作之前是必须转 化成灰度的,转换成灰度也成了必备的功能了。其实转换非常简单,只需要调用函数 rgb2gray(), 然后将保存图像的变量放入括号即可。 运行效果: 4 图 3.2 真彩转灰度图 3.4 文件保存文件保存 程序说明: 同样也通过对敌框的形式来保存图像数据,通过 uigetfile 函数选择文件名和路径,用 imwrite 函数,把数据 I 存到指定的文件中。 运行效果: 5 图 3.3 文件保存图 3.5 关闭关闭 程序说明: 关闭只是对当前

9、的操作进行关闭,把显示的两副图置为空白,并且把程序中的数据 I 也清空, 恢复到打开时的状态。 运行效果: 6 图 3.4 点击关闭前图 图 3.5 点击关闭后的效果图 7 3.6 退出项退出项 退出,顾名思义就是退出整个软件,把所有的窗口及操作都终止。 3.7 垂直镜像垂直镜像 运行效果: 图 3.6 垂直镜像图 3.8 水平镜像水平镜像 运行效果: 8 图 3.6 水平镜像图 3.9 图像缩放图像缩放 程序说明: 使用函数 imresize 来实现对图像的放大或缩小。插值方法可选用三种方法,最近邻插值,双 线性插值,双三次插值。该函数的调用格式为:B=imresize(A,m,method

10、)。其中,参数 method 用 于指定插值的方法,本软件中设置其为“bilinear” ,缩放的倍数由用户自己设定。 运行效果: 9 图 3.7 放大图 图 3.8 缩小图 运行效果: 10 图 3.9 旋转 45 度图 运行效果: 图 3.11 反色效果图 11 3.10 直方图均衡直方图均衡 运行效果: 图 3.12 直方图均衡效果图 3.11 全局线性变换全局线性变换 运行效果 12 3.12 分段线性变换分段线性变换 运行效果 13 3.13 添加噪声添加噪声 经常用到的噪声有二种,高斯噪声,椒盐噪声,可以通过以下两个函数来实现: y=imnoise(handles.img,gaus

11、sian,p);%高斯噪声 y=imnoise(x,salt %椒盐噪声 p的参数设定默认值为0.02,原图加入高斯噪声和椒盐噪声后结果分别如图3.13和图3.14所示。 图3.13 加椒盐噪声图 14 图3.14 加高斯噪声图 3.13 平滑处理选项平滑处理选项 将图像平滑可以用邻域平均法和中值滤波法。 领域平均法的思想是用像素及其指定邻域内像素的平均值或加权平均值作为该像素的新值, 以便去除突变的像素点,从而滤除一定的噪声。常用的模板是全 1 的矩阵,然后求平均。邻域平 均法的主要优点是算法简单,但它在降低噪声的同时使图像产生模糊,特别是在边缘和细节处。 模板尺寸越大,则图像模糊程度越大。

12、由于邻域平均法去邻域平均值,因而噪声也被平均到平滑 图像中,它对椒盐噪声的平滑效果并不理想。 中值滤波法是一种非线性滤波,它能在滤除噪声的同时很好地保持图像边缘。中值滤波的 原理很简单,它把以某像素为中心的小窗口内的所有像素的灰度按从小到大的顺序,取排序结果 的中间值作为该像素的灰度值。为方便操作,中值滤波通常取含奇数个像素的窗口。可以用函数 来使图像平滑即 y=medfilt2(I,5,5);其中 y 表示处理后的图像,I 表示原图像。 15 3.13 锐化处理锐化处理 图像的锐化的目的是使模糊的图像变清晰,增强图象边缘等细节。为了能增强任何方向的边 缘,将图像锐化的方法有梯度算子和拉普拉斯

13、算子。而梯度算子包括水平垂直差分法和 Robert 交叉算子,其中 Robert 交叉算子使用 2*2 邻域内的两对角像素来计算两个偏导数,是一阶微分。 拉普拉斯算子是一种各向同性的二阶微分算子,其常用的模板有0 -1 0;-1 4 -1;0 -1 0、-1 -1 -1;-1 8 -1;-1 -1 -1、1 -2 1;-2 4 -2; 1 -2 1等。 对图像进行锐化可以用的函数为: 梯度算子:y=edge(I,roberts); 其中 y 表示处理后的图像,I 表示原图像, 拉普拉斯算子:h=0 -1 0;-1 4 -1;0 -1 0;y=conv2(i,h,same);x=i-y; 其中

14、x 表示处理后的图像,h 是拉普拉斯算子的模板,I 表示原图像。 3.14 伪彩色增强伪彩色增强 伪彩色增强是把黑白图像的各不同灰度级按照线性或非线性的映射函数变换成不同的彩色, 得到一幅彩色图像的技术。它使原图像细节更易辨认,目标更容易识别。伪彩色增强的方法主 要有以下三种。 密度分割法 灰度级一彩色变换 频率域伪彩色增强 密度分割法或称强度分割法是伪彩色增强中一种最简单的方法,如图 3.4.4 所示。它是把 黑白图像的灰度级从 0(黑)到 M0(白)分成N个区间Ii(i1,2,N),给每个区间Ii指定 一种彩色Ci,这样,便可以把一幅灰度图像变成一幅伪彩色图像。此法比较直观简单,缺点 16

15、 是变换出的彩色数目有限。 4调试以及分析调试以及分析 在程序设计过程中遇到了许多问题例如一个函数只能对灰度图像处理,不能对 RGB 图像处 理,那么如何才能对 RGB 图像处理呢?了解 MATLAB 和数字图像处理的人都知道用到的很多 函数是针对二维数据的,而 RGB 图像的数据是一个三维矩阵,所以处理要与灰度图像不同,在 开始的时候,我认为应该找一个能够应用于三维矩阵的函数,结果却没找到,后来想到可以把三 维数据进行降维处理,同样使用二维的函数,只要是同样处理三次。比如,彩色图像的滤波处理, 直方图均衡等。再例如同一个操作对灰度图像可以使用,当用户选择的是彩色图像时,该操作就 会出错?这是

16、由于设计程序时,本身程序是有针对性的,有些程序只能对灰度图像有效,有些对 彩色图像有效,但是用户并不清楚这些,所以在设计的过程中就要考虑全面,要分开设计。在本 次课程设计中,我均对每个程序的开始时,用 if isrgb(x)进行判断。等等很多问题都要自己去 查阅资料,分析问题并解决问题。 5结论结论 通过本次课程设计,对 MATLAB GUI 设计流程有了比较深刻的了解与体会,同时 也了解了一般软件设计的过程。在设计过程中遇到了很多的问题,通过解决这些问 题,使用软件的能力得到了很大的提高。 MATLAB 具有非常强大的二维和三维绘图功能,各种科学运算结果的可视化非 常专业。计算的可视化可以将杂乱的数据通过图形表示从中观察出其内在的关系。 MATLAB 可以使用不同的线形、彩色、数据点标记等来修饰图像,也可以设计出图 形用户界面,很方便。 参考文献参考文献 1关于数字图像处理的中外文文献资料 如:数字图像处理 阮秋琦 阮

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 毕业论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号