基于Matlab的数字图像处理系统设计(共29页).doc
《基于Matlab的数字图像处理系统设计(共29页).doc》由会员分享,可在线阅读,更多相关《基于Matlab的数字图像处理系统设计(共29页).doc(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上论文(设计)题目: 基于MATLAB的数字图像处理系统设计 姓 名 宋立涛 学 号 学 院 信息学院 专 业 电子与通信工程 年 级 级 年 月 日基于MATLAB的数字图像处理系统设计摘 要MATLAB 作为国内外流行的数字计算软件,具有强大的图像处理功能,界面简洁,操作直观,容易上手,而且是图像处理系统的理想开发工具。笔者阐述了一种基于MATLAB的数字图像处理系统设计,其中包括图像处理领域的大部分算法,运用 MATLAB 的图像处理工具箱对算法进行了实现,论述了利用系统进行图像显示、图形表换及图像处理过程,系统支持索引图像、灰度图像、二值图像、RGB 图像等图像
2、类型;支持BMP、GIF、JPEG、TIFF、PNG 等图像文件格式的读,写和显示。上述功能均是在MATLAB 语言的基础上,编写代码实现的。这些功能在日常生活中有很强的应用价值,对于运算量大、过程复杂、速度慢的功能,利用 MATLAB 可以既能快速得到数据结果,又能得到比较直观的图示。关键词:MATLAB 数字图像处理图像处理工具箱 图像变换第一章 绪 论1.1 研究目的及意义图像信息是人类获得外界信息的主要来源,近代科学研究、军事技术、工农业生产、医学、气象及天文学等领域中,人们越来越多地利用图像信息来认识和判断事物,解决实际问题,由此可见图像信息的重要性,数字图像处理技术将会伴随着未来信
3、息领域技术的发展,更加深入到生产和科研活动中,成为人类生产和生活中必不可少的内容。MATLAB 软件不断吸收各学科领域权威人士所编写的实用程序,经过多年的逐步发展与不断完善,是近几年来在国内外广泛流行的一种可视化科学计算软件。MATLAB 语言是一种面向科学与工程计算的高级语言,允许用数学形式的语言来编写程序,比 Basic、Fortan、C 等高级语言更加接近我们书写计算公式的思维方式,用 MATLAB 编写程序犹如在演算纸上排列出公式与求解问题一样。它编写简单、编程效率高并且通俗易懂。1.2 国内外研究现状1.2.1 国内研究现状国内在此领域的研究中具有代表性的是清华大学研制的数字图像处理
4、实验开发系统 TDB-IDK 和南京东大互联技术有限公司研制的数字图像采集传输与处理实验软件。TDB-IDK 系列产品是一款基于 TMS320C6000 DSP 数字信号处理器的高级视频和图像系统,也是一套 DSP 的完整的视频、图像解决方案,该系统适合院校、研究所和企业进行视频、图像方面的实验与开发。该软件能够完成图像采集输入程序、图像输出程序、图像基本算法程序。可实现对图像信号的实时分析,图像数据相对 DSP独立方便开发人员对图像进行处理,该产品融合 DSP 和 FPGA/CPLD 两个高端技术,可以根据用户的具体需求合理改动,可以分析黑白和彩色信号,可以完成图形显示功能。南京东大互联技术
5、有限公司研制的数字图像采集传输与处理实验软件可实现数字图像的采集、传输与处理。可利用软件及图像采集与传输设备,采集图像并实现点对点的数字图像传输,可以观察理解多种图像处理技术的效果和差别,其中包括图像的灰度直方图及其变换、锐化、平滑、滤波、伪彩、轮廓提取与增强、图像格式转换及其文件结构。1.2.2 国外研究现状目前大量的图像处理软件如PHOTOSHOP,PAINTSHOP等都是基于广告策划和图像修饰处理而设计的应用软件,针对图像处理技术基本知识的理解与掌握以及相关处理方法研究的软件甚少,不适合学习研究使用。随着计算机辅助设计的日益提高和成熟,用于学习与研究的软件也越来越多。如美国Souther
6、n Illinois University开发的CVIPtools计算机视觉与图像处理实验软件就是专门针对图像处理技术的实验软件,为初学者提供了一个消化理论知识的实验环境。CVIPtools计算机视觉与图像处理实验软件,主要用于计算机数字图像分析和处理,主要宗旨是让图像处理的初学者、学生、老师和其它研究人员探索计算机数字图像处理的巨大力量。最新Windows版本的CVIPtools提供使用者四种层次应用方式:算法代码层,公共对象模块(组件)界面层, cvipimage层和图形用户界面(GUI)。最下面的阶层算法代码层主要是基于以前的版本CVIPtools ,包括所有的图像、数据处理程序和功能,
7、是用标准C语言写的。最上的阶层为CVIPtools GUI,可以让生手实验一些图像处理的工具,而不需具备程序设计的能力。目前国外很多大学、研究院在数字图像处理的实验研究中都应用此软件。1.3 数字图像处理研究的内容一般的数字图像处理的主要目的集中在图像的存储和传输,提高图像的质量,改善图像的视觉效果,图像理解以及模式识别等方面。新世纪以来,信息技术取得了长足的发展和进步,小波理论、神经元理论、数字形态学以及模糊理论都与数字处理技术相结合,产生了新的图像处理方法和理论。数字图像处理技术主要包括:1、图像增强目前图像增强技术根据其处理的空间不同,可分为空域法和频域法两大类,前者根据在图像所在的像素
8、空间进行处理,后者是通过对图像进行傅里叶变换后在频域上间接进行的。2、图像恢复图像恢复,也称为图像还原,其目的是尽可能地减少或者去除数字图像在获取过程中的降质,恢复被退化图像的本来面貌,从而改善图像质量,以提高视觉观察效果。3、图像变换图像变换就是把图像从空域转换到频域,对原图像函数寻找一个合适变换的数学问题,众多图像变换方法不断出现,从傅里叶变换发展到余弦变换,再到现在非常流行的小波变换,图像变换分为可分离变换和统计变换两大类。4、图像压缩数字图像需要很大的存储空间,因此无论传输或存储都需要对图像数据进行有效的压缩。其目的是生成占用较少空间而获得与原图十分接近的图像5、图像分割图像分割的目的
9、是把一个图像分解成它的构成成分,图像分割是一个十分困难的过程。图像分割的方法主要有 2 类:一种是假设图像各成分的强度值是均匀的,并利用这个特性,这种方法的技术有直方图分割,另外一种方法是寻找图像成分之间的边界,利用的是图像的不均匀性,基于这种方法的的技术有梯度法分割。6、边缘检测边缘检测技术用于检测图像中的线状局部结构。大多数的检测技术应用某种形式的梯度算子。边缘检测广泛应用于图像分割、图像分类、图像配准和模式识别,在大多数的实际应用中,边缘检测是当做一个局部滤波运算完成的。第二章 数字图像处理技术软件MATLAB 简介2.1 MATLAB 软件简介MATLAB 是 Math works 公
10、司于推出的一套高性能的数值计算和可视化软件,其全称是 Matrix Laboratory,亦即矩阵实验室,经过多年的逐步发展与不断完善,现已成为国际公认的最优秀的科学计算与数学应用软件之一,是近几年来在国内外广泛流行的一种可视化科学计算软件。它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便的、界面友好的用户环境,而且还具有可扩展性特征,具有信号处理、控制系统、神经网络、图像处理、小波分析等 30 多个具有专门功能的工具箱,工具箱内的函数源程序也是开放性的,多为 M 文件,用户可以查看这些文件的代码并进行更改,MATLAB 支持用户对其函数进行二次开发,用户的应用程序也可以作为新
11、的函数添加到相应的工具箱中。MATLAB 中的数字图像是以矩阵形式表示的,这意味着 MATLAB 强大的矩阵运算能力用于图像处理非常有利。矩阵运算的语法对 MATLAB中的数字图像同样适用。2.2.MATLAB 的主要优缺点2.2.1 MATLAB 的主要优点1、界面友好,编程效率高MATLAB 是一种以矩阵为基本变量单元的可视化程序设计语言,它的语法结构简单,数据类型单一,命令表达方式接近于常用的数学公式。不仅能免去大量的经常反复的基本数学运算,而且它的编译和执行速度都远远超过了采用 C 和 Fortran 语言设计的程序。2、功能强大,可扩展性强MATLAB 语言不但提供了科学计算、数据分
12、析与可视化、系统仿真等强大的功能,而且具有可扩展性特征,具有自动控制、信号处理、图像处理、模糊逻辑、神经网络、小波分析等 30 多个具有专门功能的 MATLAB 工具箱。工具箱中的函数可以互相调用,也可以由用户自己更改3、易学易用性、高效性MATLAB 不需要用户有高深的数学知识和程序设计能力,不需要用户深刻了解算法及编程技巧。MATLAB 语句功能十分强大,一条语句可完成十分复杂的任务,大大加快了工程技术人员从事软件开发的效率。2. 2.2MATLAB 的缺点1、MATLAB 是一种解释性语言,对于实时性要求较高的领域,如自动控制、信号处理等,其实时效率是较差的。2、MATLAB 程序不能脱
13、离其环境运行,因此它不能被用于开发商用软件。3、程序可以被直接看到程序的源代码,因而不利于算法和数据的保密。2.3MATLAB 图像处理工具箱简介MATLAB 的图像处理工具箱功能十分强大,支持的图像文件格式丰富,如*.BMP、*.JPEG、*.GIF、*.TIFF、*.PCX、*.HDF、*.XWD、*.PNG 等。MATLAB 图像处理工具箱支持四种图像类型,分别为真彩色图像、索引色图像、灰度图像、二值图像,由于有的函数对图像类型有限制,这四种类型可以用工具箱的类型转换函数相互转换。MATLAB 提供了 15 类图像处理函数,涵盖了包括近期研究成果在内的几乎所有的图像处理方法。这些函数按其
14、功能可分为:图像显示;图像文件 I/O;几何操作;像素和统计处理;图像分析;图像增强;线性滤波;线性二元滤波设计;图像变换;邻域和块处理;二进制图像操作;区域处理;颜色映像处理;颜色空间变换;图像类型和类型转换。利用这些图像处理工具箱,并结合其强大的数据处理能力,我们可把精力集中在算法研究上,大大提高了工作效率。而且,在测试这些算法时既可方便地得到统计数据,同时又可得到直观图示。2.4MATLAB 支持的图像类型及其转换分析1、索引图像索引图像包括一个数据矩阵 A,一个颜色映射矩阵 B。其中 B 是一个包含 3 列和若干行的数据阵列。B 矩阵的每一行分别表示红色、绿色和蓝色的颜色值。在 MAT
15、LAB 中,索引图像是从像素值到颜色映射表值的直接映射。像素颜色由数据矩阵 A 作为索引指向矩阵 B 进行索引。2、灰度图像MATLAB 中,一幅灰度图像是一个数据矩阵 I,其中 I 的数据均代表了在一定范围内的颜色灰度值。MATLAB 把灰度图像存储为一个数据矩阵,该数据矩阵中的元素分别代表了图像中的像素。矩阵中的元素可以是双精度的浮点数类型、8 位或 16 位无符号的整数类型。大多数情况下,灰度图像很少和颜色映射表一起保存。但是在显示灰度图像时,MATLAB 仍然在后台使用系统预定义的默认的灰度颜色映射表。3、二值图像与灰度图像相同,二值图像只需要一个数据矩阵,每个像素只取两个灰度值。二值
16、图像可以采用 uint8 和 double 类型存储,工具箱中以二值图像作为返回结果的函数都使用 uint8 类型。4、RGB 图像RGB 图像,即真彩色图像,在 MATLAB 中存储为 nm3 的数据矩阵。数组中的元素定义了图像中每一个像素的红、绿、蓝颜色值。需要指出的是,RGB图像不使用Windows颜色映射表。像素的颜色保存在像素位置上的红、绿、蓝的强度值的组合来确定。图像文件格式把 RGB 图像存储为 24 位的图像,红、绿、蓝分别占 8 位。这样可以有约 1000万种颜色5、图像序列MATLAB 的图像处理工具箱中还支持将多帧图像连接成图像序列。图像序列是一个四维的数组,图像帧的序号
17、在图像的长、宽、颜色深度之后构成第四维。在 MATLAB 中,各种图像类型之间的转换关系如图 2.1 所示:图2.1 图像类型间的转换第三章:图像处理系统的详细设计用 MATLAB 对图像进行处理是当前科技领域的一个重要的课题,它采用的是用一组有序的灰度或彩色数据元素构成图像,数组的每一个元素对应于图像的一个像素值。这样 MATLAB 就可以利用其强大的矩阵计算功能实现对图像的数字处理。本案所设计的系统主要是利用 MATLAB 所提供的图形用户界面(GUI),实现一个可视的面向对象的操作界面。3.1 设计原则由于要求不同,设计出来的界面也就千差万别。但是,自从人们开始设计图形界面以来,界面设计
18、的评判标准却没有太大的变化。简单说来,一个好的界面应遵从以下三个原则:简单性、一致性、习常性。1、简单性设计界面时,应力求简洁、直接、清晰地体现出界面的功能和特征。那些可有可无的功能应尽量删去,以保持界面的清洁。2、一致性所谓一致性包含两层意义:一是自己开发的界面风格要尽量一致;二是新设计的界面要与其他已有的界面风格不要截然相左。这是因为用户在初次使用新界面时,总是习惯于凭借经验进行试探。3、习常性设计界面时,应尽量使用人们所熟悉的标志和符号。用户可能并不了解界面的具体含义及操作方法,但他也可以根据熟悉标志做出正确猜测,自学入门。4、其他考虑因素除了以上对界面的静态要求外,还应注意界面的动态性
19、能。如对用户操作的响应要迅速、连续。3.2 设计的一般步骤1、分析界面所要求实现的主要功能,明确设计任务。2、在稿纸上绘出界面草图,并对其进行审查。3、按照构思的草图,上机制作静态界面,并进行检查。4、编写界面动态功能的程序,对其功能进行逐项检查。3.3 系统功能的模块设计根据当前图像处理系统的总体设计样式和要求,该系统主要包括文件、工具、编辑、图像、调色、图像类型转换、颜色空间转换、正交变换等模块。其模块图如3.1所示:图3.1 系统功能框图3.4 窗口界面的实现该系统界面的设计主要是利用MATLAB所提供的GU(IGraphUser Interface)向导设计控件而完成的,该向导可以实现
20、多种控件的设计,给用户提供了一种友好的交互方式,同时也给操作带来很多方便。图形用户界面GUI是包含图形对象(如图形窗口、菜单、控件、文本)的用户界面,用户以某种方式选择或者击活这些对象会发生变化或引起动作。1、启动 GUI 的方法启动图形用户界面的方法有很多种,例如可以利用工具栏上的命令按钮,也可以采用菜单和命令的方式。在本人设计的案例中采用的是命令方式:在命令窗口直接输入 guide 命令,弹出的窗口如图 3.2 所示:图3.2 GUI 启动界面在弹出的guide quick ate new gui选项卡里面的start 窗口中选择 creBlank GUI 选项,这样就可以进入图形用户界面
21、来设计我们的系统静态界面。图3.3 Guide 界面上图就是 Guide 提供的图形界面设计工具集,在此界面下就可以利用控件组件、文本菜单、排列工具等对系统的界面进行设计。该系统的静态界面如图 3.4 所示:图3.4Guide 设计界面当静态界面设计完成以后,对该界面进行保存,此时 Guidie将自描述,动生成两个发布文件,分别是.fig 文件和.m 文件。Fig 文件:该文件包括图形窗口及其所有后裔的完全包括:该文件包括 GUI 设计、控制函数以及为子函数的用户控u Edit 对系统的菜所有对象的属性值。Fig 文件是一个二进制文件,调用 hgsave命令或界面设计编辑器的 file 菜单
22、save 选项保存图形窗口时将产生该文件。Fig 文件最有用的地方之一就是对象句柄的保存和引用,可以使用 open、openfig 和 hgload 命令打开一个后缀为.fig的文件。M 文件件回调函数,主要用于控制 GUI 展开时的各种特征。这个 M文件可以分为 GUI 初始化和回调函数两个部分,用户控件的回调函数根据用户与 GUI 的具体交互方式分别调用。设计好系统的界面以后,接下来就要利用 Men单进行设计,创建菜单的第一步就是利用 GUI 的工具栏上的Menu Edit 按钮启动相应的窗口。然后使用 New Menu 工具栏来创建菜单,然后可以指定菜单的属性。例如可以设置菜单的标签、分
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Matlab 数字图像 处理 系统 设计 29
限制150内