《Matlab应用》课程设计-利用MATLAB仿真软件系统进行图像的数据分析.doc_第1页
《Matlab应用》课程设计-利用MATLAB仿真软件系统进行图像的数据分析.doc_第2页
《Matlab应用》课程设计-利用MATLAB仿真软件系统进行图像的数据分析.doc_第3页
《Matlab应用》课程设计-利用MATLAB仿真软件系统进行图像的数据分析.doc_第4页
《Matlab应用》课程设计-利用MATLAB仿真软件系统进行图像的数据分析.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

武汉理工大学Matlab应用课程设计说明书 课程设计任务书学生姓名: 专业班级: 指导教师: 工作单位: 信息工程学院 题 目: 利用MATLAB仿真软件系统进行图像数据分析 初始条件:1.MATLAB软件。2.数字信号处理与图像处理基础知识。要求完成的主要任务: 读取图像并求出图像的最大值、最小值、均值、中值、和、标准差、两图像的协方差、相关系数等。参考书目:1 余万波编著. 基于MATLAB的图像处理. 清华大学出版社. 2008.32 梁红. matlab在数字图像处理中的应用. 清华大学出版社. 2004 3 蓝章礼 李益才 李艾星 编著. 数字图像处理与图像通信. 清华大学出版社. 2009.34 余成波编著. 数字图像处理及MATLAB实现. 重庆大学出版社. 2003.65 胡学龙 许开宇 编著. 数字图像处理. 电子工业出版社. 2009.66 王家文编著. MATLAB7.0图形图像处理. 国防工业出版社. 2006.7时间安排:1方案设计 1天2软件设计 2天3系统调试1天4答辩 1天合 计5天指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日目录摘要3Abstract41.MATLAB简介51.1 MATLAB产生的历史背景51.2 MATLAB的语言特点和开发环境61.3 MATLAB应用领域72.图像概述83.数据采集83.1图像的读取83.2图像的显示114.图像数据统计处理134.1图像数据处理原理134.2各像素点中最大值144.3各像素点中最小值144.4各像素点值的均值154.5各像素点值的中值164.6各像素点值的和164.7各像素点值的标准差174.8各像素点值的方差184.9两图中各像素点值的协方差184.10两图的相对系数195.心得体会206.参考文献21摘要数字图形图像处理是指采用计算机处理图形图像的技术。近些年随着计算机与信息技术的高速发展,数字图处理技术也得到了快速发展,已成为计算机科学、医学、生物学、信息科学等领域各学科之间学习和研究的对象。成为学术界的研究热门。 MATLAB是目前国内外广泛流行的数字计算软件。其具有较强的图像处理功能,操作直观,简洁,同时又是一个较好的图像处理系统的开发工具。近些年得到了很大的发展,已经广泛应用于科学计算和工程计算领域。本文基于MATLAB的数字图像处理环境, 利用MATLAB软件进行图像的数据分析,包括读取图像并求出图像的最大值、最小值、均值、中值、和、标准差、两图像的协方差、相关系数等。关键字:MATLAB,数字信号处理,图像数据分析AbstractDigital image processing is refers to using computer graphics, image processing technology. In recent years along with the computer and the high speed development of information technology, digital map processing technology also got rapid development, has become a computer science, medicine, biology, information science fields between the subject and the object of research study. Become a hot academic research. MATLAB is popular at home and abroad and the digital calculation software. It has strong image processing function, operation is easy, simple, and at the same time, it is a good image processing system development tools. In recent years it has had great development, has been widely used in scientific computing and engineering computing. This paper based on the MATLAB digital image processing environment, using the MATLAB software image data analysis, including read the image and get the image of the maximum, minimum, mean, median, and, standard deviation, two image covariance, correlation coefficient, etc.Key words: MATLAB,digital signal processing,image data analysis1.MATLAB简介1.1 MATLAB产生的历史背景MATLAB是美国MathWorks公司生产的一个为科学和工程计算专门设计的交互式大型软件,是一个可以完成各种精确计算和数据处理的、可视化的、强大的计算工具。它集图示和精确计算于一身,在应用数学、物理、化工、机电工程、医药、金融和其他需要进行复杂数值计算的领域得到了广泛应用。它不仅是一个在各类工程设计中便于使用的运算工具,而且也是一个在数学、数值分析和工程计算等课程教学中的优秀的教学工具,在世界各地的高等院校中十分流行,在各类工业应用中更有不俗的表现。MATLAB可以在几乎所有的PC机和大型计算机上运行,适用于Windows、UNIX等多种系统平台。 MATLAB名称是由两个英文单词Maix和Laboratory的前二个字母组成。20世纪70年代后期,美国新墨西哥大学计算机系主任CleveMoler教授为了便于教学,减轻学生编写Fortran程序的负担,为两个矩阵运算软件包Linpack和Eispack编写了接口程序,这也许就算MATLAB的第一个版本。1984年,在JackLittle(也称JohnLittle)的建议推动下,由Little、Moler、SteveBangert三人合作,成立rMathWorks公司,同时把MATLAB正式推向市场。从那时开始,MATLAB的源代码采用C语言编写,增加了数据图形的可视化功能。1993年,MathWorks公司推出了MATLAB的40版本,系统平台由DOS改为Windows,推出了功能强大的、可视化的、交互环境的用于模拟非线性动态系统的工具Simulink,为MATLAB进行实时数据分析、处理和硬件开发而推出了与外部直接进行数据交换的组件,为MATLAB能融科学计算、图形可视、文字处理于一体而制作了Notebook,MathWorks使MATLAB成为国际控制界公认的标准计算软件。 MATLAB拥有了更丰富的数据类型和结构,更好的面向对象的快速精美的图形界面,更多的数学和数据分析资源,MATLAB工具也达到了25个,几乎涵盖了整个科学技术运算领域。在大部分大学里,应用代数、数理统计、自动控制、数字信号处理、模拟与数字通信、时间序列分析、动态系统仿真等课程的教材都把MATLAB作为必不可少的内容。1.2 MATLAB的语言特点和开发环境MATLAB作为一种科学计算的高级语言之所以受欢迎,就是因为它有丰富的函数资源和工具箱资源,编程人员可以根据自己的需要选择函数,而无需再去编写大量繁琐的程序代码,从而减轻了编程人员的工作负担。被称为第四代编程语言的MATLAB最大的特点就是简洁开放的程序代码和直观实用的开发环境。具体地说MATLAB主要有以下特点: (1)库函数资源丰富:数百种库函数大大减轻了用户子程序的编写工作量,也避免了一些不必要的错误,因而用户也不必担心程序的可靠性问题。 (2)语言精炼,代码灵活:MATLAB的编程语言符合人们的思维习惯,对代码的书写也没有特别严格的控制,语言精炼,程序的亢余度非常小。 (3)运算符多而灵活:MATLAB的内核是用c语言编写的,它为用户提供了和C语言一样多的运算符,用户运用这些运算符可以使程序更加简炼。 (4)面向对象,控制功能优良:MATLAB在5x各版本中优化了数据结构,使得程序的结构化控制更精良,面向对象的功能更加友善。特别是当前的70版,在可视化编程方面比以前的版本又有了更大的提高,使界面编程更方便、自由。 (5)程序设计自由:MATLAB70版支持长变量名达到63个字符,用户可以不对矩阵进行预定义就使用,变量和数组的应用也有了很大的扩展,这为用户编写程序提供了更大的自由度,使编程更加简单、方便。 (6)图形功能强大:在很多程序语言中,绘制图形是一件很麻烦的事情。但在MATLAB中,只需调用相应的绘图函数即可,既方便又迅速。随着硬件的发展和MATLAB70推出,MATLAB的图形功能更好,可视化编程能力得到更进一步的提高。 (7)程序的兼容性好:MATLAB可以在各种PC机、大型计算机和各种操作系统上运行。 (8)源代码开放:MATLAB的最重要的特点是源代码的开放性,除了内部函数,所有的MATLAB核心文件和工具箱文件都完全开放,都可渎可改。用户对源文件修改就可以生成适合自己的源代码文件。 (9)形形色色的工具箱:凡有工具箱的软件大都分为两大部分,就是核心部分和形形色色的工具箱。MATLAB有数百个核心内部函数,数十个形形色色的工具箱。工具箱大致可以分为两大类,类是学科性工具箱,另一类是功能性工具箱。学科性工具箱大都涵盖了本学科所有的已有的基本概念和基本运算,大都十分专业。如符号数学工具箱,简直就是一个高等数学、工程数学解题器。极限、导数、微分、积分、级数运算与展开、微分方程求解、Laplace变换等应有尽有。还有控制系统、信号处理、模糊逻辑、神经网络、小波分析、统计;优化、金融预测等工具箱,无一不是非常优秀的运算工具。这些工具箱都可以添加自己根据需要编写的函数,用户可以不断更新自己的工具箱,使之更适合于自己的研究和计算。1.3 MATLAB应用领域MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。MATLAB 产品族可以用来进行以下各种工作:(1)数值分析(2)数值和符号计算(3)工程与科学绘图(4)控制系统的设计与仿真(5)数字图像处理技术(6)数字信号处理技术(7)通讯系统设计与仿真(8)财务与金融工程 MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。2.图像概述MATAB能够读入、显示和处理多种标准图像格式文件。当图像文件经由MATLAB读入后,都是用数值数组的方式来表示的,这时候通过MATLAB函数显示出来的图像,实际上是一个句柄图形的图像对象。MATLAB支持的标准图像格式包括:BMP,HDF,JPEG,PCX,PNG,TIFF,XWD等等。MATLAB读入这些标准图像文件后,用数值数组存储这些文件的信息。其中,数值数组的数值元素可以使无符号的8位整数、无符号的16位整数或双精度浮点数。通常情况下,一个标准格式的图像文件经由MATLAB读入后产生至少一个数组,称为数据数组,其中记录了标准格式的图像各像素点的颜色信息;大多数情况下还会产生第二个数组,称为颜色表数组,用来存储解释数据数组的数值对应的颜色信息。根据MATLAB读入图像后产生的数组个数和MATLAB再次显示、处理这些数组数据时对数值的解释方法,可以把MATLAB内部的图像对象分为索引图像,灰阶强度图像和RGB真彩图像这三种类型。(1)索引图像:它的数据信息包括一个数据矩阵和一个双精度色图矩阵,它的数据矩阵中的值直接指定该点的颜色为色图矩阵中的某一种。色图矩阵中,每一行表示一种颜色,每行有三个数据,分别表示该种颜色中红、绿、蓝的比例情况,所有元素值都在0,1内。(2)灰度图像:它的数据矩阵中的元素值一般都在0,1或0,255之间,灰度图像根据这些数据利用线性插值来和色图中的颜色种类匹配。(3)RGB图像:图像中每个象素的颜色用三个数据来存储,分别指定红、绿、蓝三原色在象素颜色中的比例关系,组成一个三维数组。3.数据采集3.1图像的读取利用imread函数可以完成图像文件的读取操作。常用语法格式为:I=imread(filename,fmt)或I=imread(filename.fmt);其作用是将文件名用字符串filename表示的、扩展名用字符串fmt(表示图像文件格式)表示的图像文件中的数据读到矩阵I中。当filename中不包含任何路径信息时,imread会从当前工作目录中寻找并读取文件。要想读取指定路径中的图像,最简单的方法就是在filename中输入完整的或相对的地址。 MATLAB支持多种图像文件格式的读、写和显示。因此参数fmt常用的可能值有:(1)bmp Windows位图格式(2)jpgorjpeg 联合图像专家组格式(3)tifortiff 标志图像文件格式(4)gif 图形交换格式(5)pcx Windows画刷格式(6)png 可移动网络图形格式(7)xwd X Window Dump格式例如,命令行I=imread(lena.jpg);将JPEG图像lena读入图像矩阵I中。将电脑上两幅图片读入:实验程序为:I=imread(E:gg.jpg);P=imread(E:mm.jpg);用whos命令结果可见,文件mm.jpeg和gg.jpeg经由imread命令读入后,产生了两个数值数组I和P。得到结果如下所示:3.2图像的显示Matlab显示图像的最基本的手段是使用image函数。该函数还产生了图像对象的句柄,并允许对对象的属性进行设置,利用图像读取函数imread()可完成图形图像文件的读取。subplot函数介绍,在一般默认的情况下,MATLAB 每次使用plot 函数进行图形绘制,将重新产生一个图形窗口。但有时希望后续的图形能够和前面所绘制的图形进行比较。一般来说有两种方法:一是采用hold on(/off)命令,将新产生的图形曲线叠加到已有的图形上;二是采用 subplot(m,n,k)函数,将图形窗口分隔成n*m个子图,并选择第k个子图作为当前图形 ,然后在同一个视图窗口中画出多个小图形。作为一个二维曲线绘制函数,subplot的功能是:将一个窗口分为若干块,在选中的某一块区域内可以绘制图形。下面程序需采用subplot函数。实验程序为:I=imread(E:gg.jpg);subplot(1,2,1);image(I);title(gg) P=imread(E:mm.jpg);subplot(1,2,2);image(P);title(mm)实验结果如下:以上两张图片满足像素要求,但图像为彩图,不是灰度图,无法进行接下来的分析,需将彩图转换为灰度图,利用MATLAB中的rgb2gray()命令实现RGB图像到灰度图像的转化。转化后在使用命令isgray()判断图像是否变为灰度图,如果是灰度图将返回为1,不是将返回0。灰度图转换成功后,将转化后的灰度图读取出来。灰度转换程序如下:I=rgb2gray(I);P=rgb2gray(P);figure;imshow(I);figure;imshow(P);程序运行结果:4.图像数据统计处理4.1图像数据处理原理一幅图像可以被看作是空间各点光强度的集合。MATLAB把灰度图像存储为一个数据矩阵,该数据矩阵中的元素分别代表了图像中的像素。一幅行数为M、列数为N的图像大小为MN的矩阵形式为: 图4-1 MN矩阵形式由于在应用图片的方面,对图像各项参数的要求不同,所以要对图片进行适当的数据处理,来考察图片的不同参数。均值,标准差,方差就是图像的一些相关的参数,可以用作对图片的质量来作评价。4.2各像素点中最大值MATLAB中提供的max函数可求出最大值程序如下: mage_max=max(max(I) image_max=max(max(P)得到图像结果如图4-2所示:图4-2 图像gg和mm最大值4.3各像素点中最小值MATLAB中提供的min函数可求出最小值程序如下:image_min=min(min(I)image_min=min(min(P)得到结果如图4-3所示:图4-2 图像gg和mm最小值4.4各像素点值的均值MATLAB中提供均值计算函数mean()和mean2(),函数的使用方法如下:用mean2(H)求出矩阵所有元素的均值。题目要求计算图像各像素点的均值,因而可通过调用mean2()函数进行计算,在命令行中输入mean2(A_gray)即可求得灰度图各像素点的均值。程序如下:image_mean= mean2(I)image_mean= mean2(P)得到结果如图4-4所示:图4-4图像gg和mm的均值4.5各像素点值的中值MATLAB中提供的median函数可求出中值程序如下:image_median=median(I(:)image_median=median(P(:)得到结果如图4-5所示:图4-5图像gg和mm的中值4.6各像素点值的和MATLAB中提供的sum函数可求出各像素点的和程序如下:image_sum=sum(sum(I)image_sum=sum(sum(P)得到结果如图4-6所示:图4-6图像gg和mm的和值4.7各像素点值的标准差MATLAB中提供的std函数可求出标准差程序如下:image_std=std2(I(:) image_std=std2(P(:) 得到结果如图4-7所示:图4-7图像gg和mm的标准差4.8各像素点值的方差MATLAB中提供的var函数可求出方差程序如下:image_var=var(double(I(:)image_var=var(double(P(:)得到结果如图4-8所示:图4-8图像gg和mm的方差4.9两图中各像素点值的协方差MATLAB中提供的cov函数可求出两数组间的协方差程序如下:image_cov=cov(double(I),double(P)得到结果如图4-9所示:图4-9图像gg和mm的协方差4.10两图的相对系数MATLAB中提供的corrcoef函数可求出两数组间的协方差程序如下:image_corrcoef=corrcoef(double(I),double(P)得到结果如图4-10所示:图4-10图像gg和mm的相对系数5.心得体会 MATLAB课程设计让我更熟悉地掌握该软件的功能,灵活运用MATLAB,加强对matlab软件图像处理的能力,掌握图像的傅利叶变换、小波变换、小波包变换、离

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论