MTALAB在数字图像处理中的应用_第1页
MTALAB在数字图像处理中的应用_第2页
MTALAB在数字图像处理中的应用_第3页
MTALAB在数字图像处理中的应用_第4页
MTALAB在数字图像处理中的应用_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

1、MTALAB在数字图像处理中的应用摘 要:研究数学形态学的二值形态学、灰度形态学的腐蚀、膨胀、开启和闭合四种基本运算,利用这4种基本运算消除图像噪声。本文在总结和分析了数学形态学的基本理论及其应用的基础上,用MATLAB编程实现消除图像噪声。仿真结果表明,本文应用二值形态学和灰度形态学去除图像噪声具有较好的效果,并有一定的实用性。关键词:形态学;图像噪声;腐蚀;膨胀Application of MATLAB to Digital Image ProcessingAbstract:This paper studies the four basic operations of binary mor

2、phology, gray-scale morphology of mathematical morphology: dilation, erosion, opens and close, and then combines these basic operations to remove image noise. This paper based on the summing-up and analysis of the basic theory and application of mathematics morphology, removing image noise by MATLAB

3、 program. Simulation results are given to demonstrate that the binary morphology and gray-scale morphology have good effect of noise removing and these methods have their practicability.Key words:morphology; image noise; erosion; dilation1 引言随着计算机技术的发展,图像及信号处理技术越来越为大众所需求。经典的信号处理方法主要是基于线性系统的理论、传统的信号与

4、系统的概念及Fourier分析,并广泛地运用于不同的科学与技术领域中。然而,对于图像的形态特征和几何结构等非线性因素的分析和描述却由于系统的线性特征而受到限制。近几十年发展起来的数学形态学1从理论和方法上弥补了这一缺憾,数学形态学不仅提供了描述和分析图像几何及形状特征的多种技术和方法,同时它对于经典的信号处理技术也产生了极大的影响并扩展了原有的技术。基于数学形态学的图像处理技术是一种采用集合的概念表示图像、非线性叠加方式描述图像的非线性系统技术,称之为形态系统2,它广泛地应用于生物医学和电子显微镜图像的分析以及数字图像处理和计算机视觉等领域,并已发展成为一种新型的图像处理方法和理论。用于图像处

5、理的形态系统,具有完备的结构和理论体系,是进行非线性性态分析和描述的有力工具。2 形态学的相关理论2.1图像的表示方法如同信号处理中线性时不变系统的建立和描述基于信号的多频表示一样,形态系统的描述和分析方法的建立则是基于图像的集合表示以及相应的集合变换。用R和Z分别表示实数集合和整数集合,E=Rd或Zd(d=1、2、)分别表示连续的或离散的d维空间,则一个d维图像可表示为E上的一个函数,其取值范围为R或Z。如果函数仅取两个不同的值,则图像可用E中的集合表示。如二值图像可表示为取值为1和0的函数,图像的前景可表示为,背景可表为余集,或简单地用X的特征函数来表示。对于多值(灰度)图像可以通过阀值变

6、换1,2获得其二值图像,采用阀值的方法还可以实现对于灰值图像的集合表示。为此,若引入图像的阀集:这里幅值a取值于R或Z,取决于f(x)是模拟还是数字图像。利用阀集可重构图像。如果引入的特征函数则即给出了一个二值图像,并且有。2.2 基本的形态变换数学形态学有4种基本的形态运算,即腐蚀(Erosion)、膨胀(Dilation)及开(Opening)、闭(Closing)运算,基于这4种基本的形态运算可以建立具有各种功能的形态变换和实用算法,它们构成了数学形态学应用的基础。在E空间的代数结构下,引入集合的平移:。对于二值图像X及具有简单形状和小尺寸的紧集B(如d维球体),将:, (1)分别称为B

7、对X的腐蚀和膨胀,集合B则称为结构元素(StructuringElement),将腐蚀和膨胀的复合运算: , (2)分别称为B对X的开、闭运算.以上基于二值图像的运算称为二值形态变换或二值形态滤波。运用阀值或本影的方法,在二值形态变换3的基础上可以获得多值图像的形态变换。运用结构元素B对多值图像的所有阀集合进行膨胀产生集合簇,以此作为阀集合所确定的函数称为结构元素B对多值图像的膨胀: (3)其等价表示为: (4)类似地,结构元素B对多值图像的腐蚀是以为阀集合的函数: (5)其等价表示为: (6)这样定义的,可以理解为多值图像在点x的B窗口内的局部最大值和局部最小值,结构元素B还可以理解为一个控

8、制器,控制对图像进行膨胀或腐蚀的范围。以(3)式和(5)式为基础可以引入结构元素B对多值图像的开、闭运算::,运用多值图像g(x)作为结构元的多值形态运算可以通过本影的方法加以表示,即: ,它们的等价形式为:,特别地,当为平坦结构元时,则有:,。类似地,可以引入基于多值图像的形态开、闭运算:,。综上所述,基于阀集合和本影的多值形态变换是以结构元或其紧支集为窗口的局部极大和极小运算,它是一种非线性运算,也是形态学的基本运算。在图像分析中,极大和极小运算对应于结构元关于图像的最大和最小相关程度的一种描述。2.3 常用形态学操作函数1、dilate函数该函数能够实现二值图像的膨胀操作,有以下形式:B

9、W2=dilate(BW1,SE)BW2=dilate(BW1,SE,n)其中:BW2=dilate(BW1,SE)表示使用二值结构要素矩阵SE队图像数据矩阵BW1执行膨胀操作。输入图像BW1的类型为double或unit8,输出图像BW2的类型为unit8。BW2=dilate(BW1,SE,n)表示执行膨胀操作n次。2、erode 函数该函数能够实现二值图像的腐蚀操作,有以下形式:BW2= erode(BW1,SE)BW2= erode(BW1,SE,n)其中:BW2= erode(BW1,SE)表示使用二值结构要素矩阵SE队图像数据矩阵BW1执行腐蚀操作。输入图像BW1的类型为doubl

10、e或unit8,输出图像BW2的类型为unit8。BW2= erode(BW1,SE,n)表示执行腐蚀操作n次。3、bwmorph函数该函数的功能是能实现二值图像形态学运算。它的格式如下: BW2=bwmorph(BW1,operation) BW2=bwmorph(BW1,operation,n)其中:对于格式,bwmorph函数可对二值图像BW1采用指定的形态学运算;对于格式,bwmorph函数可对二值图像BW1采用指定的形态学运算n次。operation为下列字符串之一:clean:除去孤立的像素(被0包围的1)close:计算二值闭合dilate:用结构元素计算图像膨胀erode:用结

11、构元素计算图像侵蚀4、imclose函数该函数功能是对灰度图像执行形态学闭运算,即使用同样的结构元素先对图像进行膨胀操作后进行腐蚀操作。调用格式为:IM2=imclose(IM,SE)IM2=imclose(IM,NHOOD)5、imopen函数该函数功能是对灰度图像执行形态学开运算,即使用同样的结构元素先对图像进行腐蚀操作后进行膨胀操作。调用格式为:IM2=imopen(IM,SE)IM2=imopen(IM,NHOOD)3用MATLAB编程实现图像去噪3.1 二值形态学消除图像噪声用二值形态学方法对图像中的噪声进行滤除的基本思想4是:使用具有一定形态的结构元素去度量和提取图像中的对应形状,

12、以达到消除图像噪声的目的。下面是二值形态学消除图像噪声的一个实例。首先将tire.tif图像加入椒盐噪声,这种噪声前面已经介绍过,它在亮的图像区域内是暗点,而在暗的图像区域内是亮点,再对有噪声图像进行二值化操作,再对有噪声图像进行开启操作,由于这里的结构元素矩阵比噪声的尺寸要大,因而开启的结果是将背景上的噪声点去除了,最后对前一步得到的图像进行闭合操作,将轮胎上的噪声点去掉了。下面是算法实现的程序代码:I1=imread('tire.tif'); %读灰度图tire.tifI2=imnoise(I1,'salt & pepper'); %在图像上加入椒盐

13、噪声figure,imshow(I2) %显示加椒盐噪声后的灰度图像I3=im2bw(I1); %把加椒盐噪声后的灰度图像二值化figure,imshow(I3) %显示二值化后的图像I4=bwmorph(I3,'open'); %对二值噪声图像进行二值形态学开运算figure,imshow(I4) %显示开运算后的图像I5=bwmorph(I4,'close'); %对上述图像进行形态学闭运算figure,imshow(I5) %显示最终处理后的图像3.2 灰度形态学法消除图像噪声灰度形态学在消除图像噪声应用方面与二值形态学大致相同,但由于灰度形态学都是针对灰

14、度图像进行的,因此它也有自己的特点。对灰度图像平滑处理的一种方法是将图像先进行开运算再进行闭运算处理,则处理结果将去除或消减图像中的亮斑和暗斑,图像中的噪声被滤除。同样,我们也可以采取先闭再开的方法来获得图像平滑的效果。算法实现的程序代码如下:I1=imread('tire.tif'); %读灰度图像tire.tiffigure,imshow(I1); %显示图像I2=imnoise(I1,'salt & pepper'); %在灰度图像加入椒盐噪声figure,imshow(I2); %显示加噪声后的图像SE = strel('disk'

15、;,2); %创建一个半径为2的圆盘结构元素SEJ = imopen(I2,SE); %用结构元素SE对椒盐噪声图像进行形态学开操作figure, imshow(J,) % 显示图像BW = imclose(J,SE); %用结构元素SE对椒盐噪声图像进行形态学闭操作figure, imshow(BW) %显示处理后的图像4 MATLAB仿真及结果分析4.1 二值形态学消除图像噪声 图1 带椒盐噪声的图像 图2 二值化图像 图3 二值开操作运算后的图像 图4 二值闭操作运算后的图像上图为用二值形态学运算消除图像噪声的仿真结果。二值形态学运算消除图像噪声比较简单,它主要是利用二值闭操作和二值开操

16、作的性质,再选择适当的顺序处理图像噪声就行。这里采用的是先对待处理图像进行开操作再进行闭操作,运算后能有效地消除了图像噪声。图1是带椒盐噪声的图像。图2是对原图像二值化后的结果图。图3是开运算结果图。图4是闭运算结果图。从图3和4可以看出开操作后图像的噪声点减少了,再对其进行闭操作后噪声点基本上都消除。由此看出,二值形态学能消除图像噪声,但因为这过程对图像进行了二值变换操作,运算后图像没法恢复原来的灰度图像。所以,二值形态学消除噪声一般都应用在不需要恢复图像原来形态的图像处理中。4.2 灰度形态学法消除图像噪声 图5 原灰度图像 图6 加入椒盐噪声的图像 图7 灰度开运算后的图像 图8 灰度闭

17、运算后的图像上图为用灰度形态学法消除图像噪声的仿真结果。图7是使用半径为2的圆盘结构元素对图6进行灰度开运算结果图。图8是用相同结构元素对图6继续进行灰度闭运算结果图。从图7和图8可以看出,对噪声图像进行灰度开运算后把轮胎周围的噪声点消除掉了,再对图像进行灰度闭运算后把轮胎内部周围的噪声点消除掉了。由上图还可以看出,灰度形态学除噪的优点是除噪之后图像依然是灰度图像,除噪效果较好,但不足之处是除噪后原图像中的有些细节被损失掉了。5 结论本文主要运用数学形态学的两种方法实现对图像噪声的消除,用matlab实现仿真编程,结果表明,形态学在消除图像噪声中的效果不错,除噪效果可以用MATLAB仿真结果来验证。虽然应用形态学消除图像噪声在理论上趋于完备,但是在实际应用中仍有很多地方步完善,还需要我们不断努力创新。参考文献1HenkJAMHeijmans.MorphologicalImageOpera-torsM.Boston:AcademicPress

温馨提示

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

评论

0/150

提交评论