第一范文网 - 专业文章范例文档资料分享平台

基于MATLAB的数字图像处理毕业设计(含源文件)

来源:用户分享 时间:2025/6/1 8:47:00 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

……………………………………………………装………………订………………线……………………………………………………………………

家组的图像压缩格式。文件后缀名为“.jpeg”或“.jpg”,是最常用的图像文件格式。JPEG是一种有损压缩格式,能够将图像压缩在很小的存储空间内。

(2) TIFF(Tagged Image File Format)格式。它是目前图像文件格式中最复杂的一种。处理1,4,8,24位非压缩图像,1,4,8,24位packbit压缩图像,一位CCITT压缩图像等。且它支持单色到32位真彩色模式的所有图像。文件内容包括:文件头,参数指针表与参数域,参数数据表和图像数据四部分。

(3) BMP(Windows Bitmap)格式。它是一种与硬件设备无关的图像文件格式,使用非常广。有1,4,8,24位非压缩图像,8位RLE(Run-length Encoded )图像。文件内容包括:文件头(一个BITMAP FILEHEADER数据结构),位图信息数据块(位图信息头BITMAP INFOHEADER和一个颜色表)和图像数据。

(4) GIF(Graphics Interchange Format)格式。原义是“图像互换格式”,是CompuServe公司在 1987年开发的图像文件格式。GIF文件的数据,是一种基于LZW算法的连续色调的无损压缩格式。其压缩率一般在50%左右,它不属于任何应用程序。目前几乎所有相关软件都支持它,公共领域有大量的软件在使用GIF图像文件。GIF图像文件的数据是经过压缩的,而且是采用了可变长度等压缩算法。GIF格式的另一个特点是其在一个GIF文件中可以存多幅彩色图像,如果把存于一个文件中的多幅图像数据逐幅读出并显示到屏幕上,就可构成一种最简单的动画。

(5) PCX(Windows Paintbrush)格式。它是最早使用的图像文件格式之一。PCX格式支持256种颜色,不如TIFF等格式功能强,但结构比较简单,存取速度快,压缩比适中,适用于一般软件的使用。可处理1,4,8,16,24位等图像数据。文件内容包括:文件头(128字节),图像数据、扩展颜色映射表数据。

(6) HDF(Hierarchical Data Format)格式。有8位、24位光栅数据集。 (7) PNG(Portable Network Graphics):包括1位、2位、4位、8位和16位灰度图像,8位和16位索引图像,24位和48位真彩色图像。

(8) RAS(Sun Raster image): 有1位bitmap、8位索引、24位真彩色和带有透明度的32位真彩色。

[12]

(9) CO(Windows Icon resource): 有1位、4位、8位非压缩图像。

第 8 页 共 41 页

……………………………………………………装………………订………………线……………………………………………………………………

第3章 MATLAB仿真软件的简介

3.1 MATLAB的历史背景

在20世纪70年代中期,Cleve Moler博士和其同事在美国国家科学基金的资助下开发了调用EISPACK和LINPACK的FORTRAN子程序库。EISPACK是特征值求解的FORTRAN程序库,LINPACK是解线性方程的程序库。在当时,这两个程序库代表矩阵运算的最高水平。

到20世纪70年代后期,身为美国New Mexico大学计算机系系主任的Cleve Moler,在给学生讲授线性代数课程时,想教学生使用EISPACK和LINPACK程序库,但他发现学生用FORTRAN编写接口程序很费时间,于是他开始自己动手,利用业余时间为学生编写EISPACK和LINPACK的接口程序。Cleve Moler给这个接口程序取名为MATLAB,该名为矩阵(matrix)和实验室(laboratory)两个英文单词的前三个字母的组合。在以后的数年里,MATLAB在多所大学里作为教学辅助软件使用,并作为面向大众的免费软件广为流传。

1983年春天,Cleve Moler到Stanford大学讲学,MATLAB深深地吸引了工程师John Little。John Little敏锐地觉察到MATLAB在工程领域的广阔前景。同年,他和 Cleve Moler、Sieve Bangert一起,用C语言开发了第二代专业版。这一代的MATLAB语言同时具备了数值计算和数据图示化的功能。

1984年,Cleve Moler和 John Lithe成立了MathWorks公司,正式把MATLAB推向市场,并继续进行MATLAB的研究和开发。

在当今30多个数学类科技应用软件中,就软件数学处理的原始内核而言,可分为两大类。一类是数值计算型软件,如 MATLAB、Xmath、Gauss等,这类软件长于数值计算,对处理大批数据效率高;另一类是数学分析型软件,如Mathematica、Maple等,这类软件以符号计算见长,能给出解析解和任意精度解,其缺点是处理大量数据时效率较低。MathWorks公司顺应多功能需求之潮流,在其卓越数值计算和图示能力的基础上,又率先在专业水平上开拓了其符号计算、文字处理、可视化建模和实时控制能力,开发了适合多学科、多部门要求的新一代科技应用软件MATLAB。经过多年的国际竞争,MATLAB 已经占据了数值型软件市场的主导地位。

在MATLAB进入市场前,国际上的许多应用软件包都是直接以FORTRAN和C语言等编程语言开发的。这种软件的缺点是使用面窄、接口简陋、程序结构不开放以及没有标准的基库,很难适应各学科的最新发展,因而很难推广。MATLAB的出现,为各国科学家开发学科软件提供了新的基础。在MATLAB问世不久的20世纪80年代中期,原先控制领域里的一些软件包纷纷被淘汰或在MATLAB上重建。

时至今日,经过Math Works公司的不断完善,MATLAB已经发展成为适合多学科、多种工作平台的功能强劲的大型软件。在国外,MATLAB已经经受了多年考验。在欧美等高校,MATLAB已经成为线性代数、自动控制理论、数理统计、数字信号处理、时间序列分析、动态系统仿真等高级课程的基本教学工具;成为攻读学位的大

第 9 页 共 41 页

……………………………………………………装………………订………………线……………………………………………………………………

学生、硕士生、博士生必须掌握的基本技能。在设计研究单位和工业部门,MATLAB被广泛用于科学研究和解决各种具体问题

[13]

3.2 MATLAB简介

MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。

MATLAB 是MATrix LABoratory(“矩阵实验室”)的缩写,不仅具备完善的科学计算功能,而且能胜任众多专业领域的仿真和设计任务,甚至能自动生成直接与硬件关联的代码,在图像处理、系统仿真、数字信号处理、自动控制等领域都有着广泛的应用。

MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多。

MATLAB包括拥有数百个内部函数的主包和三十几种工具包(Toolbox)。工具包又可以分为功能性工具包和学科工具包。功能工具包用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能。学科工具包是专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于此类。

MATLAB图像处理工具箱包括:

(1)图像处理工具箱(Image Processing Toolbox) 它为工程师和科学家提供了一套完整的用于图像处理和分析的函数,总共超过了200个图像处理函数,用户只需要花少量的时间在算法编程上,而可以把大量时间用于问题的分析处理上。

(2)图像获取工具箱(Image Acquisition Toolbox) 它扩展了MATLAB的强大科学计算能力,允许直接在MATLAB环境下通过工业标准硬件设备获取图像和视频信号。

(3)地图工具箱(Mapping Toolbox) 它与MATLAB组合起来提供了一个完整的分析和显示地理信息的环境,利用该工具箱提供的函数,工程师可以用来分析地理数据,进行地图显示,调用外部地图数据源。

3.3 MATLAB的特点

MATLAB软件具有如下特点:

(1) 它的语言非常接近自然语言,因此,具有一定程序设计基础的人学起来比较容易。运算符丰富,具有结构化的控制语句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性。它的程序限制不严格,程序设计自由度大,而且具有源程序的开放性。

第 10 页 共 41 页

……………………………………………………装………………订………………线……………………………………………………………………

(2) 该软件提供了大量的内部函数,让用户在使用时非常方便,此外,日益庞大的Toolbox更是让该软件的应用领域越来越广泛。

(3) 该软件语言以向量矩阵为着眼点,因此它比较适于进行数值分析。

(4) 它的绘图功能强大,由于MATLAB在世界范围内特别是在工程计算领域的流行,越来越多的人开始青睐并使用这套软件。

(5) MATLAB的缺点是,它和其他高级程序相比,程序的执行速度较慢。由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速

[14]

度较慢。

3.4 MATLAB在数字图像中的运用

图像处理工具包是由一系列支持图像处理操作的函数组成的。所支持的图像处理操作有:图像的几何操作、邻域和区域操作、图像变换、图像恢复与增强、线性滤波和滤波器设计、变换(DCT变换等) 、图像分析和统计、二值图像操作等。下面就MATLAB 在图像处理中各方面的应用分别进行介绍。

(1) 图像文件格式的读写和显示。MATLAB 提供了图像文件读入函数 imread(),用来读取如:bmp、tif、tiffpcx 、jpg 、gpeg 、hdf、xwd等格式图像文;图像写出函数 imwrite() ,还有图像显示函数 image()、imshow()等等。 (2) 图像处理的基本运算。MATLAB 提供了图像的和、差等线性运算 ,以及卷积、相关、滤波等非线性算。例如,conv2(I,J)实现了I,J两幅图像的卷积。 (3) 图像变换。MATLAB 提供了一维和二维离散傅立叶变换(DFT) 、快速傅立叶变换(FFT) 、离散余弦变换 (DCT) 及其反变换函数,以及连续小波变换(CWT)、离散小波变换(DWT)及其反变换。

(4) 图像的分析和增强。针对图像的统计计算MATLAB 提供了校正、直方图均衡、中值滤波、对比度调整、自适应滤波等对图像进行的处理。

(5) 图像的数学形态学处理。针对二值图像,MATLAB 提供了数学形态学运算函数;腐蚀(Erode)、膨胀(Dilate)算子,以及在此基础上的开 (Open)、闭(Close)算子、厚化 (Thicken) 、薄化 (Thin) 算子等丰富的数学形态学运算。 (6) 此外,还有一些重要的函数在MATLAB中的应用: ① 使用imnoise添加噪声。 ② 使用imfinfo用于图像文件信息查询。 ③ 使用montage函数来显示多帧图像阵列。

④ 使用immovie函数显示多帧图像阵列中创建MATLAB电影动画。 ⑤ 使用zoom函数来实现图像上任一区域的缩放。 ⑥ 使用warp函数将图像作为纹理进行映射。

⑦ 使用subimage函数在一个图像窗口中显示多幅图像。

以上所提到的 MATLAB在图像中的应用都是由相应的MATLAB函数来实现的,使用时,只需按照函数的调用语法正确输入参数即可。具体的用法可参考MATLAB丰富的帮助文档。图像边缘对图像识别和计算机分析十分有用,在MATLAB中,函数 edge()用于灰度图像边缘的提取,它支持六种不同的边缘提取方法,即Sobel方

第 11 页 共 41 页

基于MATLAB的数字图像处理毕业设计(含源文件).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c83v8y7hwcs55t2h95x553fre38hic90118w_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top