基于MATLAB的数字图像处理毕业设计(含源文件)_第1页
基于MATLAB的数字图像处理毕业设计(含源文件)_第2页
基于MATLAB的数字图像处理毕业设计(含源文件)_第3页
基于MATLAB的数字图像处理毕业设计(含源文件)_第4页
基于MATLAB的数字图像处理毕业设计(含源文件)_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

……………………装………………订………………线……………………毕业设计(论文)任务书基于MATLAB的数字图像处理毕业设计(论文)的主要内容及要求:1.掌握数字图像处理的基本概念,了解数字图像处理的特点及其应用,了结图像的文件格式。2.掌握MATLAB仿真软件的基本知识和编程方法。3.掌握主要的图像处理方法及其原理(如图像增强,二值图像处理等),并通过MATLAB设计图像处理的程序来实现图像处理。4.翻译5000字英文资料。5.撰写毕业论文,并进行毕业答辩。指导教师签字:第1页共1页……………………装………………订………………线……………………摘要图像信息是人类获取信息的重要来源及利用信息的重要手段,图像处理科学技术是科学研究、社会生产及人类生活中不可缺少的强有力工具。在信息社会中,数字图像处理科学在理论或实践上都存在着巨大的潜力。数字图像处理是一种通过计算机采用一定的算法对图形图像进行处理的技术。数字图像处理技术已经在各个领域上都有了比较广泛的应用。图像处理的信息量很大,对处理速度的要求也比较高。MATLAB强大的运算和图形展示功能,使图像处理变得更加的简单和直观。本文介绍了MATLAB软件,基于MATLAB的数字图像处理环境和如何利用MATLAB及其图像处理工具箱进行数字图像处理。主要论述了利用MATLAB实现二值图像分析、图像增强、图像复原等图像处理。关键词:MATLAB,数字图像处理,图像增强,二值图像,图像复原第1页共2页……………………装………………订………………线……………………AbstractTheimageinformationisaveryimportantsourceforpeopletogettheinformationandtheimportantmeansofinformation,imageprocessingtechnologyisapowerfultoolforscientificresearch,socialproductionandhumanlife.Intheinformationsociety,thedigitalimageprocessingscienceexistsgreatpotentialbothintheoryorpractice.Digitalimageprocessingisacomputerusingacertainalgorithmforgraphicsandimageprocessingtechnology.Digitalimageprocessingtechnologyhasbeeninvariousareashavearelativelywiderangeofapplications.Imageprocessinglargeamountofinformation,thespeedofprocessingrequirementsarerelativelyhigh.MATLABpowerfulcomputingandgraphicsdisplayfunction,whichmakesimageprocessingbecomemoresimpleandintuitive.ThispaperintroducestheMATLABsoftwareandtheMATLAB-baseddigitalimageprocessingenvironment,describeshowtousetheMATLABImageProcessingToolboxforitsdigitalimageprocessing.MainlydiscussestheuseofMATLABforimageenhancement,thetwovalueimageanalysis,imagerestorationandotherimageprocessingtechnologies.Keywords:MATLAB,digitalimageprocessing,imageenhancement,twovalueimage,imagerestoration第2页共2页……………………装………………订………………线……………………目录第1章绪论..........................................错误!未定义书签。1.1课题研究的目的及意义...........................错误!未定义书签。1.2国内外研究现状................................错误!未定义书签。1.3课题内容安排..................................错误!未定义书签。第2章数字图像处理的简介..........................错误!未定义书签。2.1图像的数字化过程...............................错误!未定义书签。2.2数字图像处理的基本内容.........................错误!未定义书签。2.2.1基本概念..................................错误!未定义书签。2.2.2数字图像处理的主要内容....................错误!未定义书签。2.3数字图像处理的特点和应用.......................错误!未定义书签。2.3.1数字图像处理的特点........................错误!未定义书签。2.3.2数字图像处理的应用........................错误!未定义书签。2.4数字图像类型...................................错误!未定义书签。2.5主要图像文件格式...............................错误!未定义书签。第3章MATLAB仿真软件的简介.......................错误!未定义书签。3.1MATLAB的历史背景...............................错误!未定义书签。3.2MATLAB简介.....................................错误!未定义书签。3.3MATLAB的特点...................................错误!未定义书签。3.4MATLAB在数字图像中的运用.......................错误!未定义书签。第4章二值图像分析.................................错误!未定义书签。4.1二值图像的实现.................................错误!未定义书签。4.2二值形态学的基本运算........................错误!未定义书签。4.2.1膨胀.....................................错误!未定义书签。4.2.2腐蚀.....................................错误!未定义书签。4.3二值分析进行图像处理综合应用.................错误!未定义书签。4.3.1噪声滤除.................................错误!未定义书签。4.3.2边缘提取.................................错误!未定义书签。4.3.3特征提取..................................错误!未定义书签。第5章图像增强.....................................错误!未定义书签。5.1空域变换增强...................................错误!未定义书签。5.1.1增强对比度(线性变换)....................错误!未定义书签。5.1.2图像求反..................................错误!未定义书签。5.2空域滤波增强...................................错误!未定义书签。5.2.1原理......................................错误!未定义书签。5.2.2线性平滑滤波器(领域均值法)............错误!未定义书签。5.2.3非线性平滑滤波器(中值滤波法)............错误!未定义书签。5.2.4锐化滤波器................................错误!未定义书签。第1页共2页……………………装………………订………………线……………………5.3图像频域增强...................................错误!未定义书签。5.3.1频域增强原理和功能........................错误!未定义书签。5.3.2低通滤波..................................错误!未定义书签。5.3.3高通滤波..................................错误!未定义书签。5.3.4周期底纹清除滤波..........................错误!未定义书签。5.3.5同态滤波..................................错误!未定义书签。第6章图像复原.....................................错误!未定义书签。6.1图像退化模型...................................错误!未定义书签。6.2维纳(Wiener)滤波...............................错误!未定义书签。6.2.1直接逆滤波................................错误!未定义书签。6.2.2维纳(Wiener)滤波基本原理..................错误!未定义书签。6.3Lucy-Richardson迭代非线性算法.................错误!未定义书签。第7章总结与展望...................................错误!未定义书签。7.1总结...........................................错误!未定义书签。7.2展望...........................................错误!未定义书签。致谢..................................................错误!未定义书签。参考文献..............................................错误!未定义书签。第2页共2页……………………装………………订………………线……………………第1章绪论本章主要介绍课题研究的目的及意义,该课题国内外研究现状以及论文内容安排等。1.1课题研究的目的及意义数字图像处理(DigitalImageProcessing),就是利用数字计算机或者其他数字硬件,对从图像信息转换而得到的电信号进行某些数学运算,以提高图像的实用性。例如从卫星图片中提取目标物的特征参数,三维立体断层图像的重建等。总的来说,数字图像处理包括点运算、几何处理、图像增强、图像复原、图像形态学处理、图像编码、图像重建、模式识别等。由于计算机处理能力的不断增强,数字图像处理学科在飞速发展的同时,也越来越广泛地向许多其他学科快速交叉渗透,使得图像作为信息获取以及信息的利用等方面也变得越来越重要。目前数字图像处理的应用越来越广泛,已经渗透到工业、医疗保健、航空航天、军事等各个领域,在国民经济中发挥越来越大的作用。MathWorks公司推出的MATLAB软件是学习数理知识的好帮手。应用MATLAB友好的界面和丰富、实用、高效的指令及模块,可以使人较快地认识、理解图像处理的相关概念,逐步掌握图像信号处理的基本方法,进而能够解决相关的工程和科研中的问题。图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域必然涉及到人类生活和工作的方方面面。随着人类活动范围的不断扩大,图像处理的应用领域也将随之不断扩大,数字图像处理对人类的作用将是不可限量。1.2国内外研究现状数字图像处理起源于20世纪20年代。当时,人们通过Bartlane海底电缆图片传输系统,从伦敦到纽约传输了一幅经过数字压缩后的照片,从而把传输时间从一周多缩短到不足三个小时。为了传输图片,该系统在传输端进行了图像编码,然后在接收端用特殊打印设备重构了该图片。尽管这一应用包含了数字图像处理的知识,但是并没有使用计算机。而数字图像处理需要很大的存储空间和计算能力,其发展受到计算机中数据存储、显示和传输等相关技术发展的制约。在20世纪50年代,当时的电子计算机已经发展到一定水平,人们开始利用计算机来处理图形和图像信息。20世纪60年代初期数字图像处理作为一门学科大约形成了。第一台可执行图像处理任务的大型计算机出现。早期的图像处理的目的是改善图像的质量,它以人为对象,以改善人的视觉效果为目的。图像处理中,输入的是质量低的图像,输出的是改善质量后的图像,常用的图像处理方法有图像增强、复原、编码、压缩等。首次获得实际成功应用的是美国喷气推进实验室(JPL)。他们对航天探测器徘徊者7号在1964年发回的几千张月球照片使用了图第1页共41页……………………装………………订………………线……………………像处理技术,如几何校正、灰度变换、去除噪声等方法进行处理,并考虑了太阳位置和月球环境的影响,由计算机成功地绘制出月球表面地图,获得了巨大的成功。随后又对探测飞船发回的近十万张照片进行更为复杂的图像处理,以致获得了月球的地形图、彩色图及全景镶嵌图,获得了非凡的成果,为人类登月创举奠定了坚实的基础,也推动了数字图像处理这门学科的诞生。在以后的宇航空间技术,如对火星、土星等星球的探测研究中,数字图像处理技术都发挥了巨大的作用。20世纪60年代末70年代初,数字图像处理技术应用于医学图像、地球遥感监测和天文学等诸多领域。1972年英国EMI公司工程师Housfield发明了用于头颅诊断的X射线计算机断层摄影装置,也就是我们通常所说的CT(ComputerTomograph)。CT的基本方法是根据人的头部截面的投影,经计算机处理来重建截面图像,称为图像重建。1975年EMI公司又成功研制出全身用的CT装置,获得了人体各个部位鲜明清晰的断层图像。1979年,这项无损伤诊断技术获得了诺贝尔奖,说明它对人类作出了划时代的贡献。1972年美国陆地资源卫星(Landsat)将多谱图像用于资源探测。同年,计算机层析仪图像重建技术用于医学[3]。(CT)问世,它将20世纪70年代中期开始,随着计算机技术和人工智能、思维科学研究的迅速发展,数字图像处理向更高、更深层次发展。人们已开始研究如何用计算机系统解释图像,实现类似人类视觉系统理解外部世界,这被称为图像理解或计算机视觉。很多国家,特别是发达国家投入更多的人力、物力到这项研究,取得了不少重要的研究成果。其中代表性的成果是70年代末MIT的Marr提出的视觉计算理论,这个理论成为计算机视觉领域其后十多年的主导思想。图像理解虽然在理论方法研究上已取得不小的进展,但它本身是一个比较难的研究领域,存在不少困难,因人类本身对自己的视觉过程还了解甚少,因此计算机视觉是一个有待人们进一步探索新的领域。1.3课题内容安排本文主要以MATLAB为工具来实现数字图像的处理。全文共分7章,内容安排如下:第一章绪论,介绍了课题研究目的及意义和国内外研究现状。第二章介绍了图像的数字化、数字图像处理的基本知识和图像文件格式。第三章介绍了Matlab仿真软件。第四章介绍了二值图像操作原理及利用MATLAB实现二值图像操作。第五章介绍了图像增强的原理及利用MATLAB来实现图像增强。第六章介绍了图像复原原理及利用MATLAB实现图像复原。第七章总结与展望。第2页共41页……………………装………………订………………线……………………第2章数字图像处理的简介2.1图像的数字化过程图像的数字化过程就是在计算机内生成一个二维矩阵的过程。数字化的目的是将一幅图像以数字的形式进行表示,并且要做到既不失真又便于计算机进行处理。图像的数字化要求是要达到以最小的数据量不失真地描述图像信息。数字图像(digitalimagine)和传统的图像即模拟图像(picture)是有差别的。图像的数字化包括采样和量化两个过程。1.采样采样(sampling)就是把在时间上和空间上连续的图像分割成离散点(采样点,即像素)的集合的一种操作。采样是对图像空间坐标的离散化,它决定了图像的空间分辨率。采样越细,越能精确地表现图像。图像基本上是在二维平面上连续分布的信息形式要把它输入到计算机中,首先要把二维信号变成一维信号,因此要进行扫描(scanning)。最常用的扫描方法是在二维平面上按一定间隔顺序地从上方顺序地沿水平方向的直线(扫描线)扫描,从而取出浓淡值(灰度值)的线扫描(Laster扫描)。对于由此得到的一维信号,通过求出每一特定间隔的值,可以得到离散的信号。对于运动图像除进行水平,垂直两个方向的扫描以外,还有进行时间轴上的扫描。通过采样,如设横向的像素数为M,纵向的像素数为N,则画面的大小可以表示为“M*N”个像素。一般来说,图像中细节越多,采样的间隔应当越小。2.量化如果把这些连续变化的值(灰度值)量化为8bit,则灰度值被分成0-2552的256个级别,分别对应于各个灰度值的浓淡程度,叫做灰度等级或灰度标度。经过采样,图像被分解成在时间上和空间上离散分布的像素,但是像素的值(灰度值)还是连续值。像素的值,是指白色-灰色-黑色的浓淡值,有时候也指光的强度(亮度)值或灰度值。把这些连续的浓淡值或灰度值变为离散的值(整数值)的操作就是量化。在0-255的值对应于白-黑的时候,有以0为白,255为黑的方法,也有以0为黑,255为白的方法,这取决于图像的输入方法以及用什么样的观点对图像进行处理等,这是在编程时应特别注意的问题。但在只有黑白二值的二值图像的情形,一[4]般设0为白,1为黑。量化的方法有:(1)分层量化(Hierarchicalquantization)(2)均匀量化(Uniformquantization)(3)非均匀量化(Non-uniformquantization)分层量化是把每一个离散样本的连续灰度值分成有限多的层次。均匀量化是把第3页共41页……………………装………………订………………线……………………源图像灰度层次从最暗至最亮均匀分为有限层次,如果采用不均匀分层就是非均匀量化。对连续的灰度值赋予量化级的,即灰度值方法有:等间隔量化(Equalintervalquantization)和非等间隔量化(Nonequalintervalquantization)。等间隔量化是简单地把采样值的灰度范围等间隔地分割并进行量化。非均匀量化是依据一幅图像具体的灰度值分布的概率密度函数,按总的量化误差的最小的原则来进行量化。实用中一般采用等间隔量化。3.采样、量化和图像细节的关系上面的数字化过程,需要确定数值N和灰度级的级数K。在数字图像处理中,一般都取成2的整数幂,即:N2nK2m(2-1)(2-2)一幅数字图像在计算机中所占的二进制存储位数b为:blog(2)N*N*m(bit)(2-3)m*NN例如,灰度级为256级(m=8)的512×512的一幅数字图像,需要大约210万个存储位。随着N和m的增加,计算机所需要的存储量也随之迅速增加。由于数字图像是连续图像的近似,从图像数字化的过程可以看到。这种近似的程度主要取决于采样样本的大小和数量(N值)以及量化的级数K(或m值)。N和K的值越大,图像越清晰。2.2数字图像处理的基本内容2.2.1基本概念数字图像处理(DigitalImageProcessing)是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。相对于以往的数字图像处理方法,数字图像处理是一次新的“工业革命”,它彻底改变了以往人们处理图像时所采用的手段,成为图像处理中一个崭新的方向。数字图像处理的产生和迅速发展主要受三个因素的影响:一是计算机的发展;二是数学的发展(特别是离散数学理论的创立和完善);三是广泛的农牧业、林业、环境、军事、工业和医学等方面的应用需求的增长。2.2.2数字图像处理的主要内容从系统整体研究的角度来看,数字图像处理的研究内容主要包括以下几个方面:图像的获取、表示与表现,图像增强、图像复原、图像分割、图像分析、图像重建及图像编码压缩等。其中,数字图像处理包括:算术/逻辑操作和几何运算、图像增强、图像分割、图像形态学处理、模式识别、图像复原、图像压缩等内容。(1)算术/逻辑操作图像中的算术/逻辑操作主要以像素对像素为基础在两幅或多幅图像间进行(其中不包含逻辑非操作,它在单一影像中进行)。第4页共41页……………………装………………订………………线……………………对图像的逻辑操作同样也是基于像素的。“与或非”这三种逻辑算子完全是函数化的。当我们对灰度级图像进行逻辑操作时,像素值作为一个二进制的字符串来处理。在四种算术操作中,减法与加法在图像处理中最有用。我们简单的把两幅图像想除看成是用一副的取反图像与另一幅图像相乘。在四种代数运算操作中加法运算可用于降低图像中加性随机噪声的污染;减法运算则可以检测图像中物体的运动变化;乘法运算可用于标记图像中的感兴趣区域;除法运算则经常用于多光谱遥感图像的分析处理,以扩大不同物体之间的差异。(2)几何变换几何运算用于改变图像中像素与像素之间的空间位置关系,从而改变图像的空间结构,达到处理图像的目的。简单而言,图像几何变换就是建立一种源图像像素与变换后的图像像素之间的映射关系。主要包括图像的平移、缩放、旋转、镜像和转置变换等。(3)图像增强图像增强是图像处理最关键的研究问题之一,图像增强按作用域可分为两类,即空域处理和频域处理。空域处理是直接对图像进行处理,而频域处理则是在图像的某个变化域内,对图像的变换系数进行运算,然后通过逆变换获得图像增强效果。图像增强可以突出图像中的某些“有用”信息,扩大图像中不同物体特征之间的差别,改善图像的视觉效果。图像增强的算法包括直方图增强,空域滤波增强,频域滤波增强和彩色增强等。(4)图像分割图像分割将图像细分为构成它的子区域或对象。图像分割算法一般基于亮度值的两个基本特性之一:不连续性和相似性。第一类方法基于亮度的不连续变化分割图像,比如图像的边缘。第二类方法依据事先制定的准则将图像分割为相似的区域。图像分割包括间断检测,边缘检测,门限处理等。(5)图像形态学处理图像形态学由一组形态学代数算子组成,最基本的形态学代数算子包括腐蚀、膨胀、开运算、闭运算等,通过组合应用这些算子,可以实现对图像形状、结构的分析和处理。数学形态学可以完成图像分割、特征提取、边界检测、图像滤波、图像增强和恢复等工作。(6)模式识别模式识别总是从大量信息和数据出发,在一定的经验和认识基础上,利用计算机和数学的推理的方法对信息进行自动识别。模式识别系统一般包括4个部分,即数据获取、预处理、特征提取和决策分类。(7)图像复原(恢复)由于设备造成的扫描线漏失、错位等各种原因不可避免造成图像质量的下降(退化)。图像的复原就是根据事先建立起来的系统退化模型,将降质了的图像重建成接近于或完全无退化的原始理想图像的过程。(8)图像压缩第5页共41页……………………装………………订………………线……………………数字图像的数据量是很巨大的,然而数字图像实际上又具有很大的压缩潜力。图像压缩所解决的问题是尽量减少表示数字图像时所需的数据量。减少数据量的基本原理是出去其中的冗余数据。这种变换在图像存储或传输之前进行。在以后的某个时候,再对压缩图像进行解压缩,以重构原图像或原图像的近似图像。2.3数字图像处理的特点和应用2.3.1数字图像处理的特点(1)优点:1.再现性好2.处理精度高3.适用面宽4.灵活性高(2)缺点:1.处理信息量大2.占用频带较宽3.像素间相关性大4.无法复制三维景物的全部几何信息5.人为因素影响较大2.3.2数字图像处理的应用计算机图像处理和计算机、多媒体、智能机器人、专家系统等技术的发展紧密相关。近年来计算机识别、理解图像的技术发展很快,也就是图像处理的目的除了直接供人观看(如医学图像是为医生观看作诊断)外,还进一步发展了与计算机视觉有关的应用,如邮件自动分检,车辆自动驾驶等。下面仅罗列了一些典型应用实例,而实际应用更广。(1)在生物医学中的应用主要包括显微图像处理;DNA显示分析;红、白血球分析计数;虫卵及组织切片的分析;癌细胞的识别;染色体分析等等。(2)遥感航天中的应用军事侦察、定位、导航、指挥等应用;多光谱卫星图像分析;地形、地图、国土普查;地质、矿藏勘探;天文、太空星体的探测及分析等。(3)工业应用CAD和CAM技术用于模具、零件制造、服装、印染业;零件、产品无损检测,焊缝及内部缺陷检查;交通管制、机场监控;火车车皮识别等。(4)军事公安领域中的应用巡航导弹地形识别;指纹自动识别;警戒系统及自动火炮控制;反伪装侦察;手迹、人像、印章的鉴定识别;过期档案文字的复原;集装箱的不开箱检查等。(5)遥感上的应用在遥感的发展中,可以看到大量与图像处理密切相关的技术。如在20世纪70年代美国发射的第一颗陆地卫星就是通过对获取的遥感图片进行处理后达到上述目第6页共41页……………………装………………订………………线……………………的的。随后美国发射了海洋卫星、气象卫星和军用卫星,从而获取了大量遥感资料。此图像处理广泛应用于土地测绘、资源调查、气象监测、环境污染监测、森林防护等。(6)其他应用图像的远距离通信;多媒体计算机系统及应用;电视电话;服装试穿显示;理发发型预测显示;电视会议;办公自动化、现场视频管理等。2.4数字图像类型MATLAB中,一幅图像可能包含一个数据矩阵,也可能包含一个颜色映射表矩阵。MATLAB中有四种基本的图像类型:(1)二值图像(二进制图像)二值图像也叫黑白图像,就是图像像素只存在0、1两个值。一个二值图像是纯黑白的。每一个像素值将取0或者1中的一个值,通常0表示黑,1表示白。二值图像可以保存为双精度或uint8类型的双精度数组,显然使用uint8类型更节省空间。在图像处理工具箱中,任何一个返回二进制图像的函数都是以uint8类型逻辑数组来返回的。(2)灰度图像在MATLAB中,灰度图像是保存在一个矩阵中的,矩阵中的每一个元素代表一个像素点。矩阵可以是双精度类型,其值域为[0,1];也可以为uint8类型,其数据范围为[0,255]。矩阵的每个元素代表不同的亮度或灰度级。彩色图像转化为灰度图像公式:Y=0.299R+0.578G+0.144B(2-4)(3)索引图像索引图像包括图像矩阵与颜色图数组,其中,颜色图是按图像中颜色值进行排序后的数组。对于每个像素,图像矩阵包含一个值,这个值就是颜色图中的索引。颜色图为m*3双精度值矩阵,各行分别指定红绿蓝(RGB)单色值。Colormap=[R,G,B],R,G,B为值域为[0,1]的实数值。图像矩阵与颜色图的关系依赖于图像矩阵是双精度型还是uint8(无符号8位整型)类型。如果图像矩阵为双精度类型,第一点的值对应于颜色图的第一行,第二点对应于颜色图的第二行,依次类推。如果图像矩阵是uint8,有一个偏移量,第0点值对应于颜色图的第一行,第一点对应于第二行,依次类推;uint8长用于图形文件格式,它支持256色。(4)RGB图像与索引图像一样,RGB图像分别用红,绿,蓝三个亮度值为一组,代表每个像素的颜色。与索引图像不同的是,这些亮度值直接存在图像数组中,而不是存放在颜色图中。图像数组为M*N*3,M,N表示图像像素的行列数。2.5主要图像文件格式(1)JPEG(JointPhotographicExpertsGroup)格式,是一种成为联合图像专第7页共41页……………………装………………订………………线……………………家组的图像压缩格式。文件后缀名为“.jpeg”或“.jpg”,是最常用的图像文件格式。JPEG是一种有损压缩格式,能够将图像压缩在很小的存储空间内。(2)TIFF(TaggedImageFileFormat)格式。它是目前图像文件格式中最复杂的一种。处理1,4,8,24位非压缩图像,1,4,8,24位packbit压缩图像,一位CCITT压缩图像等。且它支持单色到32位真彩色模式的所有图像。文件内容包括:文件头,参数指针表与参数域,参数数据表和图像数据四部分。(3)BMP(WindowsBitmap)格式。它是一种与硬件设备无关的图像文件格式,使用非常广。有1,4,8,24位非压缩图像,8位RLE(Run-lengthEncoded)图像。文件内容包括:文件头(一个BITMAPFILEHEADER数据结构),位图信息数据块(位图信息头BITMAPINFOHEADER和一个颜色表)和图像数据。(4)GIF(GraphicsInterchangeFormat)格式。原义是“图像互换格式”,是CompuServe公司在1987年开发的图像文件格式。GIF文件的数据,是一种基于LZW算法的连续色调的无损压缩格式。其压缩率一般在50%左右,它不属于任何应用程序。目前几乎所有相关软件都支持它,公共领域有大量的软件在使用GIF图像文件。GIF图像文件的数据是经过压缩的,而且是采用了可变长度等压缩算法。GIF格式的另一个特点是其在一个GIF文件中可以存多幅彩色图像,如果把存于一个文件中的多幅图像数据逐幅读出并显示到屏幕上,就可构成一种最简单的动画。(5)PCX(WindowsPaintbrush)格式。它是最早使用的图像文件格式之一。PCX格式支持256种颜色,不如TIFF等格式功能强,但结构比较简单,存取速度快,压缩比适中,适用于一般软件的使用。可处理1,4,8,16,24位等图像数据。文件内容包括:文件头(128字节),图像数据、扩展颜色映射表数据。(6)HDF(HierarchicalDataFormat)格式。有8位、24位光栅数据集。(7)PNG(PortableNetworkGraphics):包括1位、2位、4位、8位和16位灰度图像,8位和16位索引图像,24位和48位真彩色图像。(8)RAS(SunRasterimage):有1位bitmap、8位索引、24位真彩色和带有透明度的32位真彩色。[12](9)CO(WindowsIconresource):有1位、4位、8位非压缩图像。第8页共41页……………………装………………订………………线……………………第3章MATLAB仿真软件的简介3.1MATLAB的历史背景在20世纪70年代中期,CleveMoler博士和其同事在美国国家科学基金的资助下开发了调用EISPACK和LINPACK的FORTRAN子程序库。EISPACK是特征值求解的FORTRAN程序库,LINPACK是解线性方程的程序库。在当时,这两个程序库代表矩阵运算的最高水平。到20世纪70年代后期,身为美国NewMexico大学计算机系系主任的CleveMoler,在给学生讲授线性代数课程时,想教学生使用EISPACK和LINPACK程序库,但他发现学生用FORTRAN编写接口程序很费时间,于是他开始自己动手,利用业余时间为学生编写EISPACK和LINPACK的接口程序。CleveMoler给这个接口程序取名为MATLAB,该名为矩阵(matrix)和实验室(laboratory)两个英文单词的前三个字母的组合。在以后的数年里,MATLAB在多所大学里作为教学辅助软件使用,并作为面向大众的免费软件广为流传。1983年春天,CleveMoler到Stanford大学讲学,MATLAB深深地吸引了工程师JohnLittle。JohnLittle敏锐地觉察到MATLAB在工程领域的广阔前景。同年,他和CleveMoler、SieveBangert一起,用C语言开发了第二代专业版。这一代的MATLAB语言同时具备了数值计算和数据图示化的功能。1984年,CleveMoler和JohnLithe成立了MathWorks公司,正式把MATLAB推向市场,并继续进行MATLAB的研究和开发。在当今30多个数学类科技应用软件中,就软件数学处理的原始内核而言,可分为两大类。一类是数值计算型软件,如MATLAB、Xmath、Gauss等,这类软件长于数值计算,对处理大批数据效率高;另一类是数学分析型软件,如Mathematica、Maple等,这类软件以符号计算见长,能给出解析解和任意精度解,其缺点是处理大量数据时效率较低。MathWorks公司顺应多功能需求之潮流,在其卓越数值计算和图示能力的基础上,又率先在专业水平上开拓了其符号计算、文字处理、可视化建模和实时控制能力,开发了适合多学科、多部门要求的新一代科技应用软件MATLAB。经过多年的国际竞争,MATLAB已经占据了数值型软件市场的主导地位。在MATLAB进入市场前,国际上的许多应用软件包都是直接以FORTRAN和C语言等编程语言开发的。这种软件的缺点是使用面窄、接口简陋、程序结构不开放以及没有标准的基库,很难适应各学科的最新发展,因而很难推广。MATLAB的出现,为各国科学家开发学科软件提供了新的基础。在MATLAB问世不久的20世纪80年代中期,原先控制领域里的一些软件包纷纷被淘汰或在MATLAB上重建。时至今日,经过MathWorks公司的不断完善,MATLAB已经发展成为适合多学科、多种工作平台的功能强劲的大型软件。在国外,MATLAB已经经受了多年考验。在欧美等高校,MATLAB已经成为线性代数、自动控制理论、数理统计、数字信号处理、时间序列分析、动态系统仿真等高级课程的基本教学工具;成为攻读学位的大第9页共41页……………………装………………订………………线……………………学生、硕士生、博士生必须掌握的基本技能。在设计研究单位和工业部门,MATLAB[13]被广泛用于科学研究和解决各种具体问题。3.2MATLAB简介MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。MATLAB是MATrixLABoratory(“矩阵实验室”)的缩写,不仅具备完善的科学计算功能,而且能胜任众多专业领域的仿真和设计任务,甚至能自动生成直接与硬件关联的代码,在图像处理、系统仿真、数字信号处理、自动控制等领域都有着广泛的应用。MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多。MATLAB包括拥有数百个内部函数的主包和三十几种工具包(Toolbox)。工具包又可以分为功能性工具包和学科工具包。功能工具包用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能。学科工具包是专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于此类。MATLAB图像处理工具箱包括:(1)图像处理工具箱(ImageProcessingToolbox)它为工程师和科学家提供了一套完整的用于图像处理和分析的函数,总共超过了200个图像处理函数,用户只需要花少量的时间在算法编程上,而可以把大量时间用于问题的分析处理上。(2)图像获取工具箱(ImageAcquisitionToolbox)它扩展了MATLAB的强大科学计算能力,允许直接在MATLAB环境下通过工业标准硬件设备获取图像和视频信号。(3)地图工具箱(MappingToolbox)它与MATLAB组合起来提供了一个完整的分析和显示地理信息的环境,利用该工具箱提供的函数,工程师可以用来分析地理数据,进行地图显示,调用外部地图数据源。3.3MATLAB的特点MATLAB软件具有如下特点:(1)它的语言非常接近自然语言,因此,具有一定程序设计基础的人学起来比较容易。运算符丰富,具有结构化的控制语句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性。它的程序限制不严格,程序设计自由度大,而且具有源程序的开放性。第10页共41页……………………装………………订………………线……………………(2)该软件提供了大量的内部函数,让用户在使用时非常方便,此外,日益庞大的Toolbox更是让该软件的应用领域越来越广泛。(3)该软件语言以向量矩阵为着眼点,因此它比较适于进行数值分析。(4)它的绘图功能强大,由于MATLAB在世界范围内特别是在工程计算领域的流行,越来越多的人开始青睐并使用这套软件。(5)MATLAB的缺点是,它和其他高级程序相比,程序的执行速度较慢。由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速[14]度较慢。3.4MATLAB在数字图像中的运用图像处理工具包是由一系列支持图像处理操作的函数组成的。所支持的图像处理操作有:图像的几何操作、邻域和区域操作、图像变换、图像恢复与增强、线性滤波和滤波器设计、变换(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页……………………装………………订………………线……………………法、Prewitt方法、Robert方法,Laplacian2Gaussian方法、过零点方法和Canny[15]方法。第12页共41页……………………装………………订………………线……………………第4章二值图像分析二值图像中所有的像素只能从0和1这两个值中取,因此在MATLAB中,二值图像用一个由0和1组成的二维矩阵表示。这两个可取的值分别对应于关闭和打开,关闭表征该像素处于背景,而打开表征该像素处于前景。也就是说它指每个像素是不是黑就是白,其灰度值没有中间过渡的图像。二值图像一般用来描述文字或者图形,它的特点:(1)优点:占用空间少,更容易识别出图像的结构特征。(2)缺点:当表示人物,风景的图像时,二值图像只能描述其轮廓,不能描述细节。这时候要用更高的灰度级。二值图像经常使用位图格式存储。4.1二值图像的实现二值图像操作只返回与二值图像的形式或结构有关的信息,如果希望对其他类型的图像进行同样的操作,则首先要将其转换为二进制的图像格式,可以通过调用MATLAB提供的im2bw()来实现,方法如下:MATLAB程序代码:I=imread('jiafeimao.jpg');figure,imshow(I);J=im2bw(I);%二值化处理figure,imshow(J);运行程序,得到图4-1:(1)原图(2)二值图像图4-1图像二值化4.2二值形态学的基本运算数学形态学的基础是集合运算,我们把二值图像A看作是二维坐标点的集合,包含图像里为1的点,B通常是一个小的集合,作用类似于模板。基本运算有:(1)膨胀(Dilation)运算:定义为A⊕B。(2)腐蚀(Erosion)运算:定义为AB。第13页共41页……………………装………………订………………线……………………(3)开(Open)运算:开运算是先对图像进行腐蚀,然后再进行膨胀的结果。用B对A进行形态学开操作可以记为,它的定义为(4-1):ABABBB(4-1)(4)闭(Close)运算:闭运算是先对图像进行膨胀,然后再进行腐蚀的结果。用B对A进行形态学开操作可以记为•,它的定义为(4-2):ABA•BABB(4-2)4.2.1膨胀膨胀的算符为,A用B来膨胀写作AB,这里先将A和B看作是所有取值为1的像素点的集合。其定义为:(4-3)ABxBAx其中B表示集合B的反射,表示对B的反射进行位移x。A与B的交集不Bx能为空集。B膨胀A的过程是:先对B做关于中心像素的映射,再将其映像平移x,换句话说,用B来膨胀A得到的集是B平移后与A至少有一个非零元素相交时B的中心像素的位置的集合。膨胀是使区域从四周向外扩大,给图像中的对象边界添加像素;而腐蚀则是使区域从四周同时向内缩小,删除对象边界某些像素。在MATLAB中利用imdilate函数来实现膨胀操作。下面用MATLAB例子来说明。MATLAB膨胀程序代码如下:clearall;bw=imread('text.png');se=strel('line',11,90);bw2=imdilate(bw,se);figure;imshow(bw);figure;imshow(bw2);运行程序,得到如图4-2:第14页共41页……………………装………………订………………线……………………(1)原图(2)图像膨胀图4-2二值图像膨胀4.2.2腐蚀腐蚀的算符为,A用B来腐蚀写作AB。其定义为Bx|()}(4-4)x用B来腐蚀A得到集合是B完全包括在A中时B的中心像素位置(原点位置)的集合。平移后的B与A的背景并不叠加。在MATLAB图像处理工具箱中提供了imerode函数实现图像的腐蚀操作。MATLAB二值腐蚀程序代码如下:clearall;I=imread('circles.png');se=strel('disk',11);J=imerode(I,se);figure;imshow(I);figure;imshow(J);运行程序,得到如图4-3:(1)原图(2)图像腐蚀图4-3二值图像腐蚀第15页共41页……………………装………………订………………线……………………可以从图4-2中看出膨胀使图像的边界像素增多,区域从四周向外扩大了,造成图像变得模糊了,边界重叠了。从图5-3中看出腐蚀使图像边界像素减少,区域从四周缩小,亮点减少。4.3二值分析进行图像处理综合应用4.3.1噪声滤除将开启运算和闭合运算结合起来可构成噪声滤除器。开启就是先对图像进行腐蚀后膨胀的结果。闭合就是先对图像进行膨胀后腐蚀的结果。开启和闭合这两种运算都可以除去比结构元素小特定图像细节,同时保证不产生全局几何失真。开启运算可以把结构元素小的突刺滤掉,切断细长搭接而起到分离作用。闭合运算可以把比结构元素小的缺口或孔填充上,搭接短的间断而起到连通的作用。开启运算将背景上的噪声去除了;再进行闭合运算则将其他噪声去掉。这样就构成了噪声滤除器,起到了去除噪声的作用。MATLAB中还提供了预定义的形态函数bwmorph,利用bwmorph(I,'open')可以对I图像进行形态开运算,利用bwmorph(I,'close')可以对I图像进行形态闭运算。MATLAB噪声去除程序代码如下:I1=imread('jiafeimao.jpg');I2=im2bw(I1);I2=double(I2);I3=imnoise(I2,'salt&pepper');I4=bwmorph(I3,'open');I5=bwmorph(I4,'close');figure;subimage(I2);figure;subimage(I3);figure;subimage(I4);figure;subimage(I5);运行程序,得到如图4-4:第16页共41页……………………装………………订………………线……………………(1)二值图像(2)加入椒盐噪声的图像50100150200250300350(3)开运算所得图像(4)再闭运算所得图像图4-4噪声滤除4.3.2边缘提取集合A的边界表示为f(A),它可以通过先由B对A进行腐蚀,然后用A减去腐蚀后的图像得到边缘,即式(4-5):fAAAB(4-5)其中,B是一个适当的结构元素。当然,也可以先由B对A膨胀,再用膨胀后的图像减去A得到边缘,即式(4-6):f(A)ABA(4-6)在MATLAB图像处理工具中提供了bwperim函数用于对二值图像进行边缘提取。MATLAB边缘提取程序代码如下:I1=imread('jiafeimao.jpg');I2=im2bw(I1);I3=bwperim(I2);subplot(1,2,1);imshow(I2);subplot(1,2,2);imshow(I3);第17页共41页……………………装………………订………………线……………………运行程序,得到如图4-5:(1)二值图像(2)边缘处理的图像图4-5边缘处理4.3.3特征提取在进行图像处理时,会希望获得图像中改变某些特征的信息,例如,膨胀和腐蚀从定量的角度上来看就是二值图像中各对象面积的增大或者缩小。特征提取包括计算图像面积、欧拉数计算、移除对象、区域填充。在这里着重介绍计算图像面积。在MATLAB图像处理工具箱中提供了bwarea函数来计算二值图像的面积。面积粗略的说就是图像中前景的像素的个数。MATLAB边缘提取程序代码如下:clearall;I1=imread('jiafeimao.jpg');I=im2bw(I1);disp('膨胀前图像面积为:')bwarea(I)SE=ones(5);I2=imdilate(I,SE);disp('膨胀后图像面积为:')bwarea(I2)运行程序,得到如下结果:膨胀前图像面积为:ans=7.6120e+004膨胀后图像面积为:ans=8.2933e+004第18页共41页……………………装………………订………………线……………………第5章图像增强图像增强是图像处理的主要任务之一,它的目的是采用某种技术手段,改善图像的视觉效果,或将图像转换成更加适合人眼观察和机器分析、识别的形式,以便从图像中获取更有用的信息。图像增强算法的应用是有针对性的,并不存在通用的增强算法。图像增强的基本方法可以分为两大类:(1)空间域方法空间域是指图像平面自身,这类方法是以对图像的像素直接处理为基础的。它包括空域变换增强、空域滤波增强(包括平滑滤波器和锐化滤波器)。空域增强方法可表示为(5-1):g(x,y)=EH[f(x,y)](5-1)其中f(x,y)和g(x,y)分别为增强前后的图像,EH代表增强操作。(2)频域方法频率域处理技术是以修改图像的傅里叶变换为基础的,也就是将原来的图像空间中的图像以某种形式转换到其他空间中,然后利用该空间的特有性质方便地进行图像处理,最后再转换回原来的图像空间中,从而得到处理后的图像。它包括低通滤波、高通滤波、同态滤波周围底纹清除滤波(以前两种为主)。频域增强方法可表示为(5-2):'Fu,vHu,vFu,v(5-2)Huv,为滤波器,Fuv,和F'u,v分别为增强前后的图像。其中5.1空域变换增强5.1.1增强对比度(线性变换)对比度增强是增强技术中一种比较简单但又十分重要的方法。这种方法按照一定的规则,逐点修改输入图像每一像素的灰度,从而改变图像灰度的动态范围。其对应的变换图像如图4-1所示。对应的公式为(5-3):kfx,yfx,yf11gx,ykfx,yb;ffx,yf(5-3)211fxyf,2,;kfxybf3223在图5-1中可以看出,通过变换可以使原图的较高的和较低的灰度值的动态范[16]围减小了,而原图在二者之间的动态范围增加了,从而其范围的对比度增加了。第19页共41页……………………装………………订………………线……………………图5-1增强对比度MATLAB增强对比度程序代码如下:X1=imread('333.jpg');figure,imshow(X1)f0=0;g0=0;f1=70;g1=30;f2=180;g2=230;f3=255;g3=255;r1=(g1-g0)/(f1-f0);b1=g0-r1*f0;r2=(g2-g1)/(f2-f1);b2=g1-r2*f1;r3=(g3-g2)/(f3-f2);b3=g2-r3*f2;[m,n]=size(X1);X2=double(X1);fori=1:mforj=1:nf=X2(i,j);g(i,j)=0;if(f>=0)&(f<=f1)g(i,j)=r1*f+b1;elseif(f>=f1)&(f<=f2)g(i,j)=r2*f+b2;elseif(f>=f2)&(f<=f3)g(i,j)=r3*f+b3;endend第20页共41页……………………装………………订………………线……………………endfigure,imshow(mat2gray(g))运行得到如下结果:图5-2原图图5-3增强对比度后图像在MATLAB中还提供了imadjust对比度调整函数,用于调整灰度值或者颜色图,但处理图像只能是灰度图像。MATLAB程序代码如下:clearall;I=imread('333.jpg');subplot(1,2,1);imshow(I);J=imadjust(I);subplot(1,2,2);imshow(J);运行程序得到如下结果图5-4:(1)原始图像(2)增强对比度后图像图5-4增强对比度5.1.2图像求反所谓对图像求反是将原来的灰度值翻转,简单的说就是使黑变白,使白变黑。假设对灰度级范围是[0,L-1]变换到[L-1,0],变换公式为(5-4):tL1s这种方法尤其适用于增强嵌入于图像暗色区域的白色或灰色细节。MATLAB图像求反程序代码如下:(5-4)clearall;第21页共41页……………………装………………订………………线……………………I=imread('999.jpg');figure,imshow(I);J=double(I);J=256-1-J;J=uint8(J);figure,imshow(J);运行程序得到如下结果图5-5:(1)原始图像(2)图像求反后图像图5-5图像其反5.2空域滤波增强一般情况下,像素的邻域比该像素要大,也就是说这个像素的邻域中除了本身以外还包括其他像素。在这种情况下,g(x,y)在(x,y)位置处的值不仅取决于f(x,y)在以(x,y)为中心的邻域内所有的像素的值。为在邻域内实现增强操作,常可利用模板与图像进行卷积。每个模板实际上是一个二维数组,其中各个元素的取值定了模板的功能,这种模板操作也称为空域滤波。仍以s和t分别表示f(x,y)在(x,y)位置处的增强前后的灰度值,并以n(s)代表f(x,y)在(x,y)邻域内像素的灰度值,则t=EA[s,n(s)]。5.2.1原理根据其特点,空域滤波一般可分为线性滤波和非线性滤波两类。线形滤波器的设计常基于对傅立叶变换的分析。非线形空域滤波器则一般直接对邻域进行操作。另外各种滤波器根据功能又主要分成平滑滤波器和锐化滤波器。平滑可用低通来实现,平滑的目的是模糊和消除噪声。锐化可用高通来实现,锐化的目的是为了增强被模糊的细节。所以共有(非)线性平滑滤波器和(非)线性锐化滤波器四种空间滤波增强方法。平滑滤波器:它能减弱或消除傅立叶空间的高频分量,但不影响低频分量。因为高频分量对应图像中的区域边缘等灰度值具有较大较快变化的部分,滤波器将这些分量滤去可使图像平滑。第22页共41页……………………装………………订………………线……………………锐化滤波器:它能减弱或消除傅立叶空间的低频分量,但不影响高频分量。因为低频分量对应图像中灰度值缓慢变化的区域,因而与图像的整体特性,如整体对比度和平均灰度值等有关,将这些分量滤去可使图像锐化。空域滤波器都是利用模板卷积,主要步骤如下:(1)将模板在图中漫游,并将模板中心与图中某个像素位置重合;(2)将模板上的系数与模板下对应的像素相乘;(3)将所有的乘积相加;(4)将模板的输出响应赋给图中对应模板中心位置的像素。[17]下面分别介绍在MATLAB中如何应用平滑和锐化滤波器。5.2.2线性平滑滤波器(领域均值法)线性平滑滤波可以去除图像中某些类型的噪声,其中领域平均法就是常用的简单空间域线性平滑噪声技术。领域平均法将一个像素及其领域中所有的像素的平均值赋给输出图像中相应的像素,从而达到平滑的目的,又称均值滤波。对于给定图像f(x,y)中的每个像素点(i,j),设其领域S,S含有M个像素,假定噪声n(x,y)是加性噪声,在空间各点互不相关,且期望为0,方差为2,领域平均处理后的图像为g(x,y),则有(5-5):1M1nxygxy,fxy,,(5-5)M从式子中看出噪声均值不变,噪声方差变小,说明噪声强度减弱了,抑制了噪声。MATLAB领域平均法程序代码如下:clearall;I=imread('rice.png');J=imnoise(I,'salt&pepper',0.02);figure,imshow(I);figure,imshow(J);K1=filter2(fspecial('average',3),J);%进行3*3模板平滑滤波K2=filter2(fspecial('average',5),J);%进行5*5模板平滑滤波figure,imshow(uint8(K1));figure,imshow(uint8(K2));运行程序,得到如下结果图5-6:从程序运行后的结果看出,模板越大,去噪能力越强,但同时会让图像变得模糊。第23页共41页……………………装………………订………………线……………………(1)原图(2)加入椒盐噪声的图像(3)3*3模板平滑滤波器(4)5*5模板平滑滤波器图5-6线性平滑滤波器领域均值法5.2.3非线性平滑滤波器(中值滤波法)中值滤波器是最常用的非线性平滑滤波器,它也是一种典型的低通滤波器,主要目的是保护图像边缘,同时也能去除噪声,也就是说,能够在抑制随机噪声的同时不使图像边缘模糊。与线性平滑滤波不同,中值滤波是将领域中的像素按灰度级排序,取其中间值作为输出像素中值滤波只依赖于领域的空间范围和中值计算中涉及的像素数。设f(x,y)表示数字图像像素点的灰度值,滤波窗口为A的中值滤波器可以定义为(5-6):f(x,y)gx,yMed(5-6)(x,yA中值滤波法的具体步骤:(1)将模板在图像中漫游,并将模板中心和图像某个像素的位置重合;(2)读取模板下对应像素的灰度值;(3)将这些灰度值从小到大排成一列;第24页共41页……………………装………………订………………线……………………(4)找出这些值排在中间的一个;(5)将这个中间值赋给对应模板中心位置的像素。MATLAB中值滤波程序代码如下:a=imread('rice.png');b=imnoise(a,'salt&pepper',0.02);%对图像添加椒盐噪声k=medfilt2(b);%中值滤波去噪subplot(1,3,1);imshow(a);subplot(1,3,2);imshow(b);subplot(1,3,3);imshow(k);运行程序,得到如下结果图5-7:(1)原图(2)含有椒盐噪声图像(3)中值滤波去噪图像图5-7中值滤波法可以看出,对于椒盐噪声中值滤波法效果比领域平均法要好很多,图像也要清晰很多。所以对于椒盐噪声一般用中值滤波法更好。5.2.4锐化滤波器在图像的识别中,需要边缘鲜明的图像,即图像锐化。图像锐化的目的是为了突出图像的边缘信息,加强图像的轮廓特征,以便于人眼的观察和机器的识别。因此,从图像增强的目的来看,它与图像平滑相反的一类处理。下面主要介绍最常用的线性锐化滤波器。线性高通滤波器是最常用的线性锐化滤波器。这种滤波器的中心系数都是正的,而周围的系数都是负的。对3*3的模板来说,典型的系数取值是:[0–10;-14–1;0–10]事实上这是拉普拉斯算子,所有的系数之和为0。当这样的模板放在图像中灰度值是常数或变化很小的区域时,其输出为0或很小。这个滤波器将原来的图像中的零频域分量去除了,也就是将输出的图像的平均值变为0,这样就会有一部分像素的灰度值小于0。在图像处理中我们一般只考虑正的灰度值,所以还有将输出图像的灰度值范围通过尺度变回到所要求的范围。第25页共41页……………………装………………订………………线……………………对于离散函数f(i,j),拉普拉斯算子的表达式为(5-7):2fi,jfijfijfi,j1fi,j14fi,j(5-7)系统取值为[0–10;-18–1;0–10]。MATLAB锐化滤波程序代码如下:clearall;I=imread('pears1.png');subplot(1,2,1);imshow(I);I=double(I);H=[010,1-41,010];J=conv2(I,H,'same');K=I-J;subplot(1,2,2),imshow(K,[]);运行该程序,得到如下结果图5-8:可以从图片得出,图像的边缘很鲜明,图像的轮廓得到了加强,使得原来模糊的图像清晰了很多,这就是线性锐化滤波器的优点所在。(1)原始图像(2)锐化滤波后图像图5-8线性锐化滤波器5.3图像频域增强5.3.1频域增强原理和功能与空域增强一样,图像在频域内处理也可以实现滤波和边缘检出的功能。其原理是抑制图像在变化域某个范围内的分量,其他分量不受影响,以改变输出图像的频率分布,达到图像增强的作用。频域处理技术的基础是卷积理论。设函数f(x,y)与线性位不变算子h(x,y)的卷积结果是g(x,y),即(5-8):g(x,y)=h(x,y)f(x,y)(5-8)那么根据卷积定理在频域有(5-9):G(x,y)=H(u,v)F(u,v)(5-9)第26页共41页……………………装………………订………………线……………………其中G(x,y)、H(u,v)、F(u,v)分别是g(x,y)、h(x,y)、f(x,y)的傅立叶变在数字图像处理中,f(x,y)是指输入图像,通过傅里叶变换可得到F(m,n),换。只要选定变换函数H(m,n),就可以确定G(m,n),再通过傅里叶反变换得到输出图像g(x,y),即

温馨提示

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

评论

0/150

提交评论