版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、沈阳理工大学数字图像处理课程设计 i摘要在图像处理中,图像分割是一项非常关键的技术,在图像工程中占有 重要的地位。随着科学技术的发展,它在众多领域中有着广泛的应用。如 医学、地质、环保、气象。常见的分割算法包括阔值分割算法、边缘检测 方法、区域提取方法和结合特定理论工具分割法。采用了标记分水岭算法 对图像进行分割,先对图像进行灰度图像的转化,在进行梯度分割,构造 出区域连接图和最小生成树,然后对他们整合。针对分水岭算法对梯度图像 强度的变化分水岭算法对梯度图像强度的变化非常敏感,分水岭算法得到 分割结果的时候往往会存在过分分割现象本文通过分别对前景对象和背景 对象进行标记,来获得更加完善的效果
2、。关键词:标记分水岭;梯度图像;Matlab沈阳理工大学数字图像处理课程设计II目录 TOC o 1-5 h z HYPERLINK l bookmark2 o Current Document 1绪论1 HYPERLINK l bookmark4 o Current Document 1.1研究目的及意义1 HYPERLINK l bookmark6 o Current Document 1.2国内外现状1 HYPERLINK l bookmark8 o Current Document 1.3本文研究内容2 HYPERLINK l bookmark10 o Current Document
3、 2图像分割算法综述2 HYPERLINK l bookmark12 o Current Document 2.1图像分割的概述2 HYPERLINK l bookmark14 o Current Document 2.2图像分割方法介绍 32.2.1阈值的分割方法32.2.2基于区域分割方法32.2.3基于边缘的图像分割52.2.4基于聚类分析的图像分割方法 6 HYPERLINK l bookmark16 o Current Document 3分水岭图像分割算法7 HYPERLINK l bookmark18 o Current Document 3.1分水岭算法原理 7 HYPERLI
4、NK l bookmark20 o Current Document 3.2分水岭算法特征8 HYPERLINK l bookmark22 o Current Document 3.3梯度图像获取83.3.1图像梯度的实现83.3.2梯度图像处理方法9 HYPERLINK l bookmark24 o Current Document 3.4标记对象10 HYPERLINK l bookmark26 o Current Document 4分水岭算法实现11 HYPERLINK l bookmark28 o Current Document 4.1分水岭算法实现流程 11 HYPERLINK
5、l bookmark30 o Current Document 4.2程序代码12 HYPERLINK l bookmark32 o Current Document 5仿真结果及分析16 HYPERLINK l bookmark74 o Current Document 结论29 HYPERLINK l bookmark76 o Current Document 参考文献30沈阳理工大学数字图像处理课程设计 1绪论1.1研究目的及意义图像分割就是把图像分成若干个特定的、 具有独特性质的区域并提出感兴趣目标的 技术和过程,其中的独特性区域可以是图像的颜色、灰度、纹理、轮廓等,而目标可以 对应某
6、一块所需要处理单位区域,也可是对应的多个处理区域。近年来,随着各科学新 理论和新方法的提出,人们也提出了一些特定理论、方法和工具相结合的分割记住,其 中基于形态学得分割算法是目前使用较为广泛的算法之一。数字图像分割在数学图像的处理和计算机视觉领域中是一个备受关的研究分支在 目标分割和提取的过程中可以运用大量的数字处理方法,结合它在计算机上所产生的视觉,模式识别等领域中的运用,吸引了一大群研究者的关注。数学图像分割技术所带来 的社会意义,加上研究者的研究,使得数学图像分割技术在深入的研究中不断的完善。 将会推动一系列的科学分之发展,比如,模式识别,计算机视觉,人工智能等。在最近 的20年中图像分
7、割得到了广泛的关注和发展,国内外的很多研究人士提出了许多的方 法,在各个不同的领域中都取得了响应的成果。但是在对于一种能过普遍应用于各种复 杂情况和准确性很高的分割检测算法,还存在大量的提升空间。目前的方法和理论还有 许多不完善的地方,这就需要不断的探索不断的改进和发展。图像有许多的复杂性和多义性,大部分的分割的过程无法依靠计算机单独完成,但 是手工分割的工作量大的惊人,而且对于地位非常困难,所以,有些人提出了人工河计 算机交互自动接合定位的方法,结合各自的优势,来实现对目标轮廓的快速定位。相信 这些交互式方法的应用,必将推动图像目标分割与提取这一既具有广阔的应用前景又具 有重要的学术价值的课
8、题的进一步研究,也必将成为一个更为独立和活跃的研究领域。1.2国内外现状据数字图像处理技术的发展来看,实时性在实际应用中运用非常广泛。实时图像处 理系统的主要难点在于如何在有限的时间里完成大批量的数据处理。因为要对图像进行处理,为了实现实时图像处理快速,高效的处理,在系统中图像处理的速度要达到一定 的速度,然而图像处理的速度是由执行短发的时间,视频输入输出延迟以及外部数据存 储器与DSP的数据交换效率来决定的。从而产生了许多种图像分割算法。比如阈值分 割算法,基于区域分割算法,以及基于边缘的图像分割。分水岭(watershed算法法是一种已经发展起来的数学形态图像分割方法。该方法 之所以能引起
9、人们的重视,第一是因为它的计算速度比较快,第二是因为物理轮廓线的 封闭性,第三是因为它的定位分厂精确。但是分水岭算法在微弱边缘处理也拥有很好的 响应。分水岭算法最初是由Digabel和Lantuejoul引入图像处理领域,用于分析简单的二 值图像。,Beucher,Vincent等人往深处研究,得到更通用的模型,建立了分水岭算法的 理论,大量的用于灰度图像的分割。它的思想虽然简单,但是设计方法比较困难,早期 因为计算机的落后导致该方法计算负担过重,所消耗的时间较长。因此,采用分水岭算 法进行图像分割时,会产生过度的分割现象和消耗的时间较长。应用到图像分割中,分水岭变换是指将源图像转换成一个标记
10、图像,其中所有属于 同一集水盆的点均被赋予同一个标记,并用一个特殊的标记来标几分水岭上的点。1.3本文研究内容本文根据国内外现有的图像分割方法,和课题设计要求,研究基于分水岭图像分割 方法,梯度图像获取,所使用的算子。并介绍了利用分水岭算法对图像进行分割。2图像分割算法综述2.1图像分割的概述图像分割在图像处理中时一项关键的技术,在20世纪70年代开始一直受到人们的高度重视,迄今为止已经提出了千百种分割算法,都因为无法通用的分割理论,现在所 提出的是针对具体问题的分割方法,并没有找到一种适合所有图像的通用分割算法。此 外,需要制定出适用分割算法的标准,给图像分割技术带来许多实际问题。最近几年又
11、 涌现出了许多新思路、新方法或改进算法,对一些经典方法和新出现的方法作了划分。 将图像分割方法分为阈值分割方法、边缘检测方法、区域提取方法和结合特定理论工具 的分割方法。图像的分割方法有两种。一种是边界方法,一种是区域方法,两种方法都 存在缺点和优点,一些学者试图把两者结合起来进行图像分割,随着计算机处理能力的 提高,越来越多的方法陆续的出现,如基于彩色纹理图像分割、纹理图像分割。教学工 具和实验手段也的到了很大的更新扩展,从时域信号到频域信号处理,使得近来的小波 变换也开始在图像分割中得到应用。2.2图像分割方法介绍2.2.1阈值的分割方法灰度阈值分割法是一种最常用的并行区域技术,它是图像分
12、割中应用数量最多一类2。阈值分割方法实际上是输入图像到输出图像其中,T为阈值,物体的图像元素背景的图像可以看出来,阈值的分割算法主要是确定阈值,主要能确定一个合适的阈值就能 准确的把图像分割开来。确定了阈值以后,把阈值和像素点的灰度值比较在和像素分割 可对各像素并行地进行,分割所得出的结果是直接给出图像的区域。计算简单,运算效率快,高是阈值分割的主要优点。在重视运算效率的场合,它得了广泛的应用。阈值 有很多种处理技术,有全局阈值,最佳阈值,自适应阈值等。不同的问题需要选择不同的阈值来确定。具体可以通过实验来去顶。如果给定了一 张图像,分析直方图的来确定最佳的阈值方法。例如当直放图明显呈现双峰情
13、况是,可 以选择两个峰值的中心点最为最佳的阈值。下图2.1 ( a) ( b )分别为全局阈值和自适应阈值分割结果。(a)全局阈值 (b)自适应阈值 图2.1全局阀值与自适应阀值2.2.2基于区域分割方法区域分割方法有两种,一种是区域生长,一种是区域分裂合并把具有相似性质的像素集合起来构成区域,这就是区域生长。详细的思想是先对每 一个所要分割的区域找到一个种子像素来作为所生长的起始点,根据某种实现确定的生长或者相似准则来判定种子像素周围于种子像素有相同或相似性质的像素合并到像素 所在的区域中。得到的新像素后,在把这些像素当做新的像素种子,来继续上一步的过 程。一直执行到没有符合条件的像素可以被
14、包括进来。这样就长成了一个区域。区域生长实现过程,需要选择出一组能够正确代表区域的种子像素,确定好在生长 过程中的相同或者相似性准则,其中相似或者相同准则可以使灰度,彩色,纹理,梯度 等特性。再指定一个让生长停止的准则条件。所选取出来的种子像素可以使单个像素, 也可以是包含若干个像素的小区域。根据不同的原则来指定不同的生长准则,使用不同 的生长准则,在生长的过程中会受到生长准则的影响。区域生长的主要优点是计算简单, 在对较均匀的连通目标有很好的分割效果。而缺点是需要人为的去确定种子像素,对噪 声相当敏感,可能会导致区域中出现空洞。此外。它还是一种串行的算法,如果计算的 目标过于庞大,分割速度就
15、会大大的减慢,因此在设计算法时,最好能提高它的计算效 率。下图为区域生长分割的一个结果。图22区域生长分割结果区域的分裂合并可以说是区域生长的逆过程:从整个的图像出发,不断的分裂图像 来得到各个子区域,然后把前景区域合并,来实现目标提取。假设对一幅图,前景区域 是由一些互相连通的像素组成的。如果把一副图像分裂到像素级,那就可以判定出该像 素是否就是前景像素。当判断完所有的像素点或子区域,在把前景区域或者像素合并就 能得到前景目标。这种方法在使用中,最常见的是四叉树分解法,下图为四叉树分解效果 图。图2.3四叉树分解效果图223基于边缘的图像分割.基于图像边缘信息的分割方法是最古老,也是仍然很重
16、要的一类图像分割方法 它主要作用是通过对于边缘的检测,检测灰度级或者结构具有突变的地方,表明一个区 域的终结,也是另一个区域开始的地方。边缘检测的结果是不能作为图像分割的结果。 还需要进一步的处理,将边缘点沿着边界(轮廓)连接起来。最终的目的至少是达到部 分分割,也就是将局部的边缘组成一个目标或部件的边界。基于边缘的分割方法经常遇到的几个问题:图像噪声和背景的影响。不是边界的地方出现边缘点。(a)原始图片是边界的地方缺少边缘点。(b)边缘图片图2.4边缘检测原始及边缘图(C)边缘伸张后的图片 图2.4边缘检测效果图2.2.4基于聚类分析的图像分割方法随着科学的不断发展,提出了许多对于图像分割的
17、新理论和新方法,随着出现了一 些特定的理论,方法相结合的图像分割方法,而聚类分析就属于其中一种。聚类法属于多远统计分析,它可在没有训练样本的情况下,自己根据数据集内在的 结构,按照数据在样本空间中相似性和相似性测量准则来对数据进行自动划分和归类, 使得同一类内的样本具有相同或者相近的属性,对于属性的不同类的样本属相差别会很 大。K均值聚类是一种基本的聚类方法,既有结构明确,通用性好和分割快速的优点, 但是他也存在优化分割陷入局部极小值的问题。1974年Dunn提出了模式形式K均值聚 类算法,既模糊C均值聚类算法8。Bezdek在1981年证明了模糊C均值的收敛性9 并讨论了模糊C均值类算法与K
18、均值聚类算法的关系,并进一步扩展和建立模糊聚类理 论。2.2.5基于模糊集理论的分割方法模糊集理论有描述不确定的能力,常用于图像分割的问题。近年来,涌现出很多 模糊分割技术,已经广泛的应用到图像分割当中。因为模糊技术在图像分割中有一个突 出的优点,它能和现有的很多图像分割方法互相结合在一起,形成一系列的集成模糊分 割技术。模糊分割技术有很多类,比如模糊聚类,模糊阈值,模糊边缘检测技术之类的。3分水岭图像分割算法分水岭算法其实就是对于整体形态进行分割的算法,是对图像做梯度分割处理。这 样处理的目的是要将图像分割成不同类型的特殊个体,来分析物体的边缘灰度变化情 况。梯度分割处理可以很好的描述图像中
19、物体边缘的灰度变化情况。所以,先将原始图 像进行对物体边缘的检测来得到梯度图像,在用分水岭算法对梯度图像进行分割。在进 行图像分析,从而达到分割图像的效果和目的。3.1分水岭算法原理分水岭算法是一种基于拓扑理论的数学形态学得分割方法,其基本思想是把图像看做是测地学上的拓扑地貌,图像中每个一像素灰度值表示该点得海拔高度,每一个局部 极小的值及其影响区域称为集盆,而集水盆的边界则形成分水岭10。它可以将图像分割为互不重叠区域,得到一个象素宽度且连续的边界,其应用对象是灰度梯度图像,梯 度图像可有Canny算子在灰度图像上得到11。Vincent和Soille提出的浸没模拟分水岭 算法是根据自然界中
20、水浸没的规律,即地形处于低洼的地段先被浸没。12分水岭算法主要包含了两个步骤。第一步:将图像进行处理,在将处理的图像像素灰度值的大小按 照升序排列出来;第二步:对排序处的顺序进行扫描,构造出“集水盆地”,然后在不 同标记的“集水盆地”的边缘构造出“防水提坝”,来对图像区域的初始化划分处理。(如图 3.1.1(a)(b)所示)(a) “集水盆地”的构造血小值(b)“提坝”的构造图3.1分水岭地貌图3.2分水岭算法特征分水岭算法有多种实现方法,较典型的有基于标记分水岭变换和欧式距离映射法。所谓标记分水岭变换就是从给定图片的全局极小值点开始,假设当前的值是,其中每个极小值小于或者等于 的集水盆会被分
21、配到唯一的标记,对于当前值是的像素,如果跟它相邻得区域中已经有了被标记过的像素,就分配一个相同的标记给它,如果它 周围没有一个像素被标记过。就把这个未标记过的像素当成一个新的集水盆,并且给它 一个新的标记。重复的进行标记,一直标记到图像中所有的像素都配分配到某一个集水 盆(就是属于某个对象区域为止)。标记分水岭变换则完成。欧式距离映射法,则是通过对二值图像的腐蚀,就是计算各个像素的欧式距离映射(Euclidean Distancc Maps.EDM)从而生成EDM图像,然后用该图像作为拓扑表面, 接着对其它像素的取值来作为获得分割结果的判断。EMD图像从最亮的值开始,知道迭代递减到1,然后重复
22、运算直到除了边界线以外所有的像素都被填充为止。传统的分水岭算法都是对梯度图像进行无标记的分割,这样会造成过分的分割。本 文采用对分割区域进行标记,使用标记分水岭算法。3.3梯度图像获取3.3.1图像梯度的实现图像边缘一般都是通过对图像进行梯度运算来实现的。图3.2是使用Sobel算子所得到的梯度图像。图3.2灰度图梯度图3.3.2梯度图像处理方法Sobel算子索贝尔算子(Sobel operato)是图像处理中的算子之一,主要用于图像边缘检测。 在技术上面,是一种离散性差分算子,它主要用来运行算图像亮度函数的梯度近似值。 使用该算子对图像的任和一个点计算,就会产长相对应的梯度矢量或者是其法矢量
23、。如果角度的值等于零的话,就代表图像该处拥有纵向边缘,左方向会比右方向暗一 些。Sobel算子在边缘检测中,是一种常用的模版。该算子分为两种,一种是检测水平 边沿,一种是检测垂直平边沿的。跟“和”相比,该算子对像素为止的影响做出了加权 处理,所以效果会更好。该算子还有一种各向同性 Sobel算子,它也分为水平边沿检测和垂直平沿检测两种。 它和普通的Sobel算子相比较,它的为止加权系数更加的准确,不同方向的边沿检测时, 梯度的幅值一致。Sobel算子的优势在于它是滤波算子形式,用于提取图像边缘,利用了快速卷积函 数,方法简单有效, 所以得到广泛应用。而它的缺点在于该算子没有能把图像的主体 和背
24、景严格的划分出来。就是说该算子没有对于图像的灰度进行处理,由于该算子没有严格的模拟人得视觉胜利特征来处理图像,所以提取出来的图像轮廓有些时候并不能得 到人们的满意。Canny算子坎尼(Canny)边缘检测算子广泛的应用于灰度图像中。坎尼根据边缘检测的有 效性和定位的可靠性,研究出了最优秀的边缘检测器所需要的特征,推导出了最优边缘检测器的数学表达式。在不同类型的边缘中,坎尼的边缘检测算子是最好形式是不相 同的。在一维边缘检测中,由于一阶导数算子的最大值和M-H算子的零交叉是一直的,所以坎尼边缘检测跟M-N边缘检测几乎是一样的。但是在二维检测中,坎尼算子的方 向性质使得边缘检测的定位性能要比 M-
25、H算子好很多,能更好的边缘强度估计,并且能 产生边缘梯度方向和强度两个信息,因此后续更为方便。衡量边缘检测性能优劣有三个指标坎尼首次把三点判据用数学的形式表示出来,在采用最优化数值方法,从而能得到对应给定边缘类型的最佳边缘检测模版。在二维图像 中,必须要使用若干个方向的模版分别对图像作卷积处理,然后取得最有可能的边缘方 向。对于阶跃行的边缘,坎尼推导出的最优边缘检测器的形状和高斯函数的一阶导数相 似。利用二维高斯函数的圆对称行和可分解性,我们就可以非常容易的来计算高斯函数 在任和一个方向上的方向导数和图像的卷积。所以,实际应用中可以选择高斯函数的一 届导数来作为阶跃形式边缘的次最优检测算子。3
26、.4标记对象分水岭算法对梯度图像强度的变化非常敏感,所以在用分水岭算法得到分割结果的 时候往往会存在过分分割现象,因此通常要分别对前景对象和背景对象进行标记,来获 得更加完善的效果。获得前景标记的方法有很多种,这些标记都必须是前景对象的内部链接的斑点像 素。本文中,将采用形态学技术“基于开的重建”和“基于闭的重建”来清理图像。将 会对于每个对象内部创建单位极大值,使用 imregi on almax命令来定位。所谓开运算,就是先腐蚀后膨胀,它可以把比结构元素小的突刺过滤掉,在切断细 长的搭接二起到分离作用。闭运算是先膨胀后腐蚀,它可以把比结构元素小的缺口或孔填充上,大街较短的间隔来起到连接作用
27、。这两种算法主要功能是去除比结构元素小的 特定图像细节,同时来保证不产生全局的几何失真。4分水岭算法实现4.1分水岭算法实现流程分水岭算法在MATLAB上实现的基本步骤有以下几步:1.读入彩色图像,并转化为灰度图像。2运用Sobel算子获得梯度幅值图像。前景标记对象和计算。计算背景标记。计算分割函数的分水岭变换。4.2程序代码clc; clear all; close all;图4.1基于分水岭算法实现流程图rgb = imread(pi nguo.jpg);if n dims(rgb) = 3I = rgb2gray(rgb);elseI = rgb;endfigure(units, nor
28、malized, position, 0 0 1 1);subplot(1,2, 1); imshow(rgb); title(原图);subplot(1,2, 2); imshow(I); title(灰度图);hy = fspecial(sobel);hx = hy;Iy = imfilter(double(I), hy, replicate);lx = imfilter(double(I), hx, replicate);gradmag = sqrt(Ix.A2 + Iy.A2);figure(units, normalized, position, 0 0 1 1);subplot(1
29、,2, 1); imshow(l,), title(灰度图像)subplot(1,2, 2); imshow(gradmag,), title(梯度幅值图像) se = strel(disk, 20);Io = imope n(l, se);figure(units, normalized, position, 0 0 1 1);subplot(1,2, 1); imshow(l, ); title(灰度图像);subplot(1,2, 2); imshow(lo), title(图像开操作)le = imerode(l, se);lobr = imreco nstruct(le, l);fi
30、gure(units, normalized, position, 0 0 1 1);subplot(1,2, 1); imshow(l, ); title(灰度图像);subplot(1,2, 2); imshow(lobr, ), title(基于开的重建图像); loc = imclose(lo, se);lc = imclose(l, se);figure(units, normalized, position, 0 0 1 1);subplot(2, 2, 1); imshow(l, ); title(灰度图像);subplot(2, 2, 2); imshow(lo, ); tit
31、le(开操作图像);subplot(2, 2, 3); imshow(lc, ); title(闭操作图像);subplot(2, 2, 4); imshow(loc, ), title(开闭操作);lobrd = imdilate(Iobr, se);Iobrcbr =imreco nstruct(imcompleme nt(lobrd),imcompleme nt(lobr); lobrcbr = imcompleme nt(lobrcbr);figure(units, normalized, position, 0 0 1 1);subplot(2, 2, 1); imshow(l, )
32、; title(灰度图像);subplot(2, 2, 2); imshow(loc, ); title(开闭操作);subplot(2, 2, 3); imshow(lobr, ); title(基于开的重建图像); subplot(2, 2, 4); imshow(lobrcbr, ), title(基于闭的重建图像); fgm = imregi on almax(lobrcbr);figure(units, normalized, position, 0 0 1 1);subplot(1, 3, 1); imshow(l, ); title(灰度图像);subplot(1, 3, 2);
33、 imshow(lobrcbr, ); title(基于重建的开闭操作);subplot(1, 3, 3); imshow(fgm, ); title(局部极大图像)It1 = rgb(:, :, 1);It2 = rgb(:, :, 2);It3 = rgb(:, :, 3);It1(fgm) = 255; It2(fgm) = 0; It3(fgm) = 0;I2 = cat(3, It1, It2, It3);figure(units, normalized, position, 0 0 1 1);subplot(2, 2, 1); imshow(rgb, ); title(原图像);s
34、ubplot(2, 2, 2); imshow(lobrcbr, ); title(基于重建的开闭操作);subplot(2, 2, 3); imshow(fgm, ); title(局部极大图像);subplot(2, 2, 4); imshow(I2); title(局部极大叠加到原图像); se2 = strel( on es(5,5);fgm2 = imclose(fgm, se2);fgm3 = imerode(fgm2, se2);figure(units, normalized, position, 0 0 1 1);subplot(2, 2, 1); imshow(lobrcb
35、r, ); title(基于重建的开闭操作);subplot(2, 2, 2); imshow(fgm, ); title(局部极大图像);subplot(2, 2, 3); imshow(fgm2, ); title(闭操作);subplot(2, 2, 4); imshow(fgm3, ); title(腐蚀操作);fgm4 = bwareaope n( fgm3, 20);It1 = rgb(:, :, 1);It2 = rgb(:, :, 2);It3 = rgb(:, :, 3);It1(fgm4) = 255; It2(fgm4) = 0; It3(fgm4) = 0;I3 = c
36、at(3, It1, It2, It3);figure(units, normalized, position, 0 0 1 1);subplot(2, 2, 1); imshow(I2, ); title(局部极大叠加到原图像);subplot(2, 2, 2); imshow(fgm3, ); title(闭腐蚀操作);subplot(2, 2, 3); imshow(fgm4, ); title(去除小斑点操作);subplot(2, 2, 4); imshow(I3, ); title(修改局部极大叠加到原图像); bw = im2bw(Iobrcbr, graythresh(Iobr
37、cbr);figure(units, normalized, position, 0 0 1 1);subplot(1,2, 1); imshow(Iobrcbr, ); title(基于重建的开闭操作);subplot(1,2, 2); imshow(bw, ); title(阈值分割);D = bwdist(bw);DL = watershed(D);bgm = DL = 0;figure(units, normalized, position, 0 0 1 1);subplot(2, 2, 1); imshow(Iobrcbr, ); title(基于重建的开闭操作);subplot(2
38、, 2, 2); imshow(bw, ); title(阈值分割);subplot(2, 2, 3); imshow(label2rgb(DL), ); title(分水岭变换示意图);subplot(2, 2, 4); imshow(bgm, ); title(分水岭变换脊线图); gradmag2 = imimposemi n( gradmag, bgm | fgm4);figure(units, normalized, position, 0 0 1 1);subplot(2, 2, 1); imshow(bgm, ); title(分水岭变换脊线图); subplot(2, 2, 2
39、); imshow(fgm4, ); title(前景标记);subplot(2, 2, 3); imshow(gradmag, ); title(梯度幅值图像); subplot(2, 2, 4); imshow(gradmag2, ); title(修改梯度幅值图像);5仿真结果及分析第一步:读入图片,将图片转化为灰度图像。clc; clear all; close all;rgb = imread(pi nguo.jpg);if n dims(rgb) = 3I = rgb2gray(rgb);elseI = rgb;endfigure(units, normalized, positi
40、on, 0 0 1 1); subplot(1,2, 1); imshow(rgb); title(原图); subplot(1,2, 2); imshow(I); title(灰度图);(a)原图(b)灰度图图5.1原图图的灰度处理第二步:做梯度幅值图像。使用Sobel边缘算子对图像进行水平和垂直方向的滤波,然后求取模值,sobel算子滤波后的图像在边界处会显示比较大的值,在没有边界处的值会很小hy = fspecial(sobel);hx = hy;ly = imfilter(double(l), hy, replicate);lx = imfilter(double(I), hx, re
41、plicate);gradmag = sqrt(Ix.A2 + Iy.A2);figure(units, normalized, position, 0 0 1 1);subplot(1,2, 1); imshow(l,), title(灰度图像)subplot(1,2, 2); imshow(gradmag,), title(梯度幅值图像)图5.2梯度幅值图像第三步:前景标记对象和计算。如果直接使用梯度模值图像进行分水岭算法话,得到的结果通常会存在过度分割的现象。所以本文采用分别对前景对象和背景对象进行标记,来获得更好的分割效果。首先使用用imope n对图像做开操作。se = strel(
42、disk, 20);Io = imope n(l, se);figure(units, normalized, position, 0 0 1 1);subplot(1,2, 1); imshow(I, ); title(灰度图像);subplot(1,2, 2); imshow(Io), title(图像开操作)图5.3图像的开操作然后对通过腐蚀之后重建来做基于开的重建计算:Ie = imerode(l, se);lobr = imreco nstruct(le, I);figure(units, normalized, position, 0 0 1 1);subplot(1,2, 1);
43、 imshow(I, ); title(灰度图像);subplot(1,2, 2); imshow(Iobr, ), title(基于开的重建图像);图5.4重建图像开操作后,使用imclose移除较暗的斑点和枝干标记。对比常规的形态学闭操作和 基于闭的重建操作。Ioc = imclose(Io, se);Ic = imclose(I, se);figure(units, normalized, position, 0 0 1 1); subplot(2, 2, 1); imshow(I, ); title(灰度图像);subplot(2, 2, 2); imshow(Io, ); title
44、(开操作图像);subplot(2, 2, 3); imshow(lc, ); title(闭操作图像);subplot(2, 2, 4); imshow(Ioc, ), title(开闭操作);图5.5普通图像开闭操作接着使用imdilate,然后使用imreconstruct。先对图像求补,对imreconstruct输出 图像求补。lobrd = imdilate(lobr, se);lobrcbr =imreco nstruct(imcompleme nt(lobrd),imcompleme nt(lobr);lobrcbr = imcompleme nt(lobrcbr);figur
45、e(units, normalized, position, 0 0 1 1);subplot(2, 2, 1); imshow(l, ); title(灰度图像);subplot(2, 2, 2); imshow(loc, ); title(开闭操作);subplot(2, 2, 3); imshow(lobr, ); title(基于开的重建图像);subplot(2, 2, 4); imshow(lobrcbr, ), title(基于闭的重建图像);开闭操作灰度團傑基干闭的重違團像基于幵的垂建图像图5.6基于开闭重建图像通过比较,基于重建的开闭操作比普通的开闭操作有效。下面计算lobr
46、cbr的局部极大来得到更好的前景标记fgm = imregi on almax(lobrcbr);figure(units, normalized, position, 0 0 1 1);subplot(1, 3, 1); imshow(I, ); title(灰度图像);subplot(1, 3, 2); imshow(Iobrcbr, ); title(基于重建的开闭操作);subplot(1, 3, 3); imshow(fgm, ); title(局部极大图像)局部极犬图像图5.7前景标记叠加前景标记到原图上,更容易的理解这个结果。It1 = rgb(:, :, 1);It2 = rg
47、b(:, :, 2);It3 = rgb(:, :, 3);Itl(fgm) = 255; It2(fgm) = 0; It3(fgm) = 0;I2 = cat(3, It1, It2, It3);figure(units, normalized, position, 0 0 1 1);subplot(2, 2, 1); imshow(rgb, ); title(原图像);subplot(2, 2, 2); imshow(lobrcbr, ); title(基于重建的开闭操作);subplot(2, 2, 3); imshow(fgm, ); title(局部极大图像); subplot(2
48、, 2, 4); imshow(l2); title(局部极大叠加到原图像);图5.8前景标记到原图通过闭操作和腐蚀操作来清理标记斑点的边缘,来解决大多闭塞处和阴影对象没有被标记,对象在结果中得不到合理的分割和一些对象的前景标记会一直到对象的边缘。se2 = strel( on es(5,5);fgm2 = imclose(fgm, se2);fgm3 = imerode(fgm2, se2);figure(units, normalized, position, 0 0 1 1);subplot(2, 2, 1); imshow(Iobrcbr, ); title(基于重建的开闭操作);su
49、bplot(2, 2, 2); imshow(fgm, ); title(局部极大图像);subplot(2, 2, 3); imshow(fgm2, ); title(闭操作);subplot(2, 2, 4); imshow(fgm3, ); title(腐蚀操作);基于重逢的开闭按作闭操作图5.9闭操作和腐蚀操作使用bwareaopen来移除少于特定像素个数的斑点。BW2 = bwareaopen(BW,P从二值图像中移除所以少于 P像素值的连通块,得到另外的二值图像BW2。fgm4 = bwareaope n( fgm3, 20);It1 = rgb(:, :, 1);It2 = rg
50、b(:, :, 2);It3 = rgb(:, :, 3);It1(fgm4) = 255; It2(fgm4) = 0; It3(fgm4) = 0;I3 = cat(3, It1, It2, It3);figure(units, normalized, position, 0 0 1 1);subplot(2, 2, 1); imshow(l2, ); title(局部极大叠加到原图像);subplot(2, 2, 2); imshow(fgm3, ); title(闭腐蚀操作);subplot(2, 2, 3); imshow(fgm4, ); title(去除小斑点操作);subplo
51、t(2, 2, 4); imshow(l3, ); title(修改局部极大叠加到原图像)图5.10移出斑点第四步:计算背景标记首先,在清理后的图像Iobrcbr中,暗像素属于背景,所以可以从阈值操作开始bw = im2bw(lobrcbr, graythresh(lobrcbr);figure(units, normalized, position, 0 0 1 1);subplot(1,2, 1); imshow(Iobrcbr, ); title(基于重建的开闭操作);subplot(1,2, 2); imshow(bw, ); title(阈值分割);图5.11阈值分割背景像素在黑色区域,在理想情形下,不需要要求背景标记太接近于要分割的对象 边缘。一般计算骨架影响范围”来细化”背景,或者SKIZ, bw的前景。这样能通过计 算bw的距离变换的分水岭变换来实现,然后寻找结果的分水岭脊线(DL=O )。D =bwdist(BW)计算二值图像 BW的欧几里得矩阵。对BW的每一个像素,距离变换指定 像素和最近的BW非零像素的距离。bwdist默认使用欧几里得距离公式。BW可以由 任意维数,D与BW有同样的大小。D = bwdist(bw);DL = watershed(D);bgm = DL = 0;figure(units, normal
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 阿基米德原理
- 掘进工安全生产岗位责任制
- 岗位职责班组管理规章制度
- 客户答谢会讲义
- 人教部编版四年级语文上册第8课《蝴蝶的家》精美课件
- 【寒假阅读提升】四年级下册语文试题-现代文阅读(一)-人教部编版(含答案解析)
- 2024年成都客运资格证技巧
- 2024年银川客运从业资格证考题
- 2024年新疆客运考试模拟题及答案详解解析
- 2024年武汉道路旅客运输资格证从业考试
- 职业生涯规划医学生
- 医学课件指骨骨折
- 拜占庭历史与文化智慧树知到期末考试答案2024年
- 反应釜验证方案样本
- S2-旋挖桩机安装拆卸专项方案
- 二年级下册语文课件-作文指导:13-通知(23张PPT) 部编版
- 普通高中物理课程标准解读
- 成人失禁相关性皮炎的预防与护理-护理团标
- 西南师大版二年级下册三位数加减混合运算200题及答案
- 国外保护非物质文化遗产的现状
- 瓜子二手车商业计划书
评论
0/150
提交评论