腐蚀、膨胀、开运算、闭运算(特制材料)
- 格式:doc
- 大小:198.50 KB
- 文档页数:4
数字图像处理中的形态学与图像分割算法数字图像处理是计算机科学与工程领域中的一门重要学科,它研究如何对数字图像进行分析、处理和改进。
在数字图像处理中,形态学和图像分割算法是两个重要的概念。
本文将介绍数字图像处理中的形态学和图像分割算法,并探讨它们在实际应用中的作用和局限性。
形态学是一种基于形状和结构的图像处理方法,它模拟了生物学中的形态学概念。
形态学操作主要包括腐蚀、膨胀、开运算和闭运算等。
腐蚀操作通过对图像中的每个像素点进行局部最小值操作,可以去除图像中的小噪声和细小的边缘。
腐蚀操作可以使图像中的物体变得更小,边缘变得更细。
膨胀操作则是通过对图像中的每个像素点进行局部最大值操作,可以填充图像中的空洞和细小的间隙。
膨胀操作可以使图像中的物体变得更大,边缘变得更粗。
开运算是先进行腐蚀操作,再进行膨胀操作,它可以去除图像中的小噪声和细小的边缘,并保持图像的整体形状不变。
闭运算则是先进行膨胀操作,再进行腐蚀操作,它可以填充图像中的空洞和细小的间隙,并保持图像的整体形状不变。
开运算和闭运算是形态学中常用的操作,它们可以用于图像增强、边缘检测和形状分析等应用。
图像分割是将图像划分为若干个子区域的过程,每个子区域具有相似的特征或属性。
图像分割算法可以通过颜色、纹理、边缘和区域生长等特征来实现。
其中,边缘检测是一种常用的图像分割方法,它可以通过检测图像中的边缘来将图像分割为不同的区域。
边缘检测算法主要包括Sobel算子、Canny算子和Laplacian算子等。
除了边缘检测,区域生长也是一种常用的图像分割方法。
区域生长算法通过选择种子点和定义生长准则来将图像分割为不同的区域。
种子点是指具有代表性的像素点,生长准则是指像素点之间的相似性度量。
区域生长算法可以根据不同的生长准则来实现不同的图像分割效果。
形态学和图像分割算法在数字图像处理中具有广泛的应用。
形态学操作可以用于图像增强、噪声去除和形状分析等任务。
图像分割算法可以用于图像识别、目标跟踪和医学图像分析等领域。
像的形态学处理方法包括形态学处理是数字图像处理领域的重要技术之一,主要用于图像的形状、大小和结构的分析与变换。
以下是几种常见的形态学处理方法:1. 膨胀(Dilation):膨胀操作可以扩大图像中明亮区域的像素值,从而增大目标物体的尺寸。
膨胀操作使用一个结构元素(strel)对图像进行滑动,当结构元素中的像素点与源图像中的像素点匹配时,将目标图像中对应位置设置为白色。
多次膨胀操作会导致目标物体变得更大。
2. 腐蚀(Erosion):腐蚀操作与膨胀操作相反,它可以缩小图像中明亮区域的像素值,从而减小目标物体的尺寸。
腐蚀操作使用同样的结构元素(strel)对图像进行滑动,当结构元素中的所有像素点与源图像中的所有像素点匹配时,将目标图像中对应位置设置为白色。
多次腐蚀操作会导致目标物体变得更小。
3. 开运算(Opening):开运算是先进行腐蚀操作,然后再进行膨胀操作。
开运算可以去除噪点、平滑图像边界,并保持图像中明亮区域的形态特征。
4. 闭运算(Closing):闭运算是先进行膨胀操作,然后再进行腐蚀操作。
闭运算可以填充图像中的空洞、连接断裂的物体,并保持图像中较暗区域的形态特征。
5. 边缘检测:利用膨胀和腐蚀操作的差异来检测图像中的边缘。
常用的边缘检测算法有Sobel算法、Prewitt算法和Canny算法等。
6. 骨架化(Skeletonization):骨架化是通过连续的腐蚀操作将物体细化到只有一个像素宽度的过程。
骨架化操作可以提取图像中物体的形状特征,并用于形状匹配、特征提取等应用。
7. 捕获区域(Region Filling):捕获区域操作是通过连续的膨胀操作填充图像中的空洞,以便更好地分析和处理图像。
捕获区域操作可以应用于图像分割、目标识别等应用中。
除了上述方法,形态学处理还可以结合其他图像处理技术,如阈值化、滤波和边缘检测等,来进行更为复杂的操作和分析。
形态学处理方法在图像分析、目标识别、医学图像处理等领域有着广泛的应用和研究。
形态学运算中腐蚀,膨胀,开运算和闭运算(针对二值图而言)6.1腐蚀腐蚀是一种消除边界点,使边界向内部收缩的过程。
可以用来消除小且无意义的物体。
腐蚀的算法:用3x3的结构元素,扫描图像的每一个像素用结构元素与其覆盖的二值图像做“与”操作如果都为1,结果图像的该像素为1。
否则为0。
结果:使二值图像减小一圈把结构元素B平移a后得到Ba,若Ba包含于X,我们记下这个a点,所有满足上述条件的a点组成的集合称做X被B腐蚀(Erosion)的结果。
用公式表示为:E(X)={alBa C X}=X©B,如图6.8所示。
图6.8腐蚀的示意图图6.8中X是被处理的对象,B是结构元素。
不难知道,对于任意一个在阴影部分的点a,Ba包含于X,所以X被B腐蚀的结果就是那个阴影部分。
阴影部分在X的范围之内,且比X小,就象X被剥掉了一层似的,这就是为什么叫腐蚀的原因。
值得注意的是,上面的B是对称的,即B的对称集Bv=B,所以X被B腐蚀的结果和X被Bv腐蚀的结果是一样的。
如果B不是对称的,让我们看看图6.9,就会发现X被B腐蚀的结果和X被Bv腐蚀的结果不同。
y图6.9结构元素非对称时,腐蚀的结果不同图6.8和图6.9都是示意图,让我们来看看实际上是怎样进行腐蚀运算的。
在图6.10中,左边是被处理的图象X (二值图象,我们针对的是黑点),中间是结构元素B ,那个标有origin 的点是中心点,即当前处理元素的位置,我们在介绍模板操作时也有过类似的概念。
腐蚀的方法是,拿B 的中心点和X 上的点一个一个地对比,如果B 上的所有点都在X 的范围内,则该点保留,否则将该点去掉;右边是腐蚀后的结果。
可以看出,它仍在原来X 的范围内,且比X 包含的点要少,就象X 被腐蚀掉了一层。
o Q Q Q o & QO Qo Q o O oooo o o o o o 0- 0 O 0 o o •• • ■ Oo o oo o o 0 o o o o o 0 0 o o o ••o o o oo o o o ■ ■ o o 0 0 o o o ••o 0 0 oo o o 0 ■ • ♦ o QQ Q ■0 0 & o Q Q Q 0 0 * * 0 0 0 O 0 0 • ♦ ♦■ 0 Q Q ◎ 00o o ■ •0 0 o O ■ ■ ■ ■ *« O Q Qo o■ ■ ■ ■ Q Q c- O■ * ■ o GO O O O o o •o o ■ •• ■ o o o o O oO ■ ■ ■o 0o O O o O ♦<Q 0■••■ o a o o O o O o o 0 0 o 0oO o oooo\>o0 00o o o o 0 0 0'originFEX e 6图6.10腐蚀运算 图6.11为原图,图6.12为腐蚀后的结果图,能够很明显地看出腐蚀的效果。
【数字图像处理】图像开运算与闭运算
图像开启与闭合
图像开运算与闭运算与膨胀和腐蚀运算有关,由膨胀和腐蚀两个运算的复合与集合操作(并、交、补等)组合成的所以运算构成。
开运算与闭运算依据腐蚀和膨胀的不可逆性,演变⽽来。
开运算:先对图像腐蚀后膨胀
闭运算:先对图像膨胀后腐蚀
注意:使⽤同⼀个结构元素。
图像开运算
开运算:能够去除孤⽴的⼩点、⽑刺和⼩桥(即连通两块区域的⼩点),消除⼩物体、平滑较⼤物体的边界,同时并不明显改变其⾯积。
不过这⼀恢复不是信息⽆损的,即它们通常不等于原始图像。
开运算的效果图如下图所⽰:
开运算总结:
(1)开运算能够除去孤⽴的⼩点,⽑刺和⼩桥,⽽总的位置和形状不便。
(2)开运算是⼀个基于⼏何运算的滤波器。
(3)结构元素⼤⼩的不同将导致滤波效果的不同。
(4)不同的结构元素的选择导致了不同的分割,即提取出不同的特征。
图像闭运算
闭运算:先膨胀运算,再腐蚀运算(看上去将两个细微连接的图块封闭在⼀起)
闭运算的效果图如下图所⽰:
闭运算总结:
(1)闭运算能够填平⼩湖(即⼩孔),弥合⼩裂缝,⽽总的位置和形状不变。
(2)闭运算是通过填充图像的凹⾓来滤波图像的。
(3)结构元素⼤⼩的不同将导致滤波效果的不同。
(4)不同结构元素的选择导致了不同的分割。
refer:。
【二值形态学膨胀、腐蚀、开、闭运算opencv的深度解析】一、概念介绍1. 二值形态学在图像处理中,二值形态学是一种针对二值图像进行的形态学操作,主要包括膨胀、腐蚀、开、闭运算等。
2. 膨胀膨胀是二值形态学中的一种基本操作,它能够使目标区域扩张并填充内部的空洞,从而使目标变大。
3. 腐蚀腐蚀是二值形态学中的另一种基本操作,它能够使目标区域收缩并去除边缘细节,从而使目标变小。
4. 开运算开运算是先腐蚀后膨胀的组合操作,可以用来去除图像中的噪声和小的干扰目标。
5. 闭运算闭运算是先膨胀后腐蚀的组合操作,可以用来填补图像中的小孔和裂缝。
二、深入探讨1. 膨胀的原理和作用膨胀通过结构元素的滑动来扩张目标区域,可以使目标变大,填充空洞,连接断裂的目标,是图像处理中常用的操作之一。
2. 腐蚀的原理和作用腐蚀通过结构元素的滑动来收缩目标区域,可以使目标变小,去除边缘细节,分离接触的目标,也是图像处理中常用的操作之一。
3. 开闭运算的应用场景开运算通常用于去除图像中的小噪声和杂点,可以平滑目标轮廓,提高目标边缘的连通性;闭运算通常用于填补图像中的小孔和断裂,可以使目标更加完整,减少断裂和裂缝。
4. opencv中的二值形态学函数opencv提供了丰富的二值形态学函数,可以方便地进行膨胀、腐蚀、开、闭运算,如cv2.dilate()、cv2.erode()、cv2.morphologyEx()等,可以通过设置结构元素的形状和大小来调整操作效果。
5. 个人观点和理解对于二值形态学操作,我认为膨胀和腐蚀是其基础,而开闭运算则是在这两者基础上的进一步应用,能够更加精细地处理目标区域,去除干扰和噪声,提取有效信息。
在实际应用中,需要根据具体情况选择不同的操作和参数,以达到最佳的处理效果。
三、总结回顾通过本文的介绍和分析,我们深入理解了二值形态学中的膨胀、腐蚀、开、闭运算的原理和作用,以及在opencv中的应用方式。
我们也从个人观点出发,探讨了这些操作的实际意义和效果。
形态学常用的算法
形态学是一种基于形状和结构的图像处理方法,常用于图像分割、边缘检测和物体识别等领域。
以下是形态学常用的算法:
- 腐蚀:该算法操作类似于中值平滑,也有一个核,但不进行卷积运算,而是取核中像素值的最小值代替锚点位置的像素值,这样就会使图像中较暗的区域面积增大,较亮的区域面积减小。
- 膨胀:该算法通过用结构元素扩展图像中的对象来增加其大小,是形态学图像处理中最基本的操作之一。
- 开运算:先腐蚀后膨胀的操作,可以消除图像中的小物体、在图像中分离出独立的物体、在纤细点处分离出物体的边界。
- 闭运算:先膨胀后腐蚀的操作,可以填充图像中的小孔、连接邻近的物体、平滑其边界。
- 形态学梯度:可以检测图像中的边缘。
- 顶帽运算:该算法可以提取出图像中目标物体的边界。
- 底帽运算:该算法可以填充图像中目标物体内部的孔洞。
这些形态学算法可以单独使用,也可以结合使用,以实现不同的图像处理目标。
形态学图像处理的方法与应用随着计算机技术的不断发展,图像处理变得越来越普遍而重要。
图像处理技术可以在很多领域得到广泛地应用,如医学、遥感、自动化等。
对于这些领域中的许多应用而言,形态学图像处理是一种非常重要的领域。
本文将介绍形态学图像处理的基本方法和当前实际应用。
形态学图像处理的基本方法形态学图像处理是应用形态学运算来进行图像处理的一种方法。
形态学运算是一种计算机算法,在二值图像中应用形状的变换,主要包括腐蚀、膨胀、开运算和闭运算等操作。
下面分别介绍这些操作的原理。
1. 腐蚀:腐蚀操作是基于形态学上的“腐蚀”概念而设计的。
在图像中,腐蚀的效果是去除对象边缘的一层像素。
这使得图像对象变得更加瘦高。
腐蚀操作通常用于去除噪声和调整图像的形状。
在腐蚀运算中,有一个结构元素,定义了腐蚀的形状。
2. 膨胀:与腐蚀相反,膨胀是增加图像对象的边缘像素。
它通过在对象周围添加像素来实现,让对象变得更加宽胖。
通常可以将膨胀应用于平滑和填充图像的空隙,使得图像看起来更加完整。
3. 开运算:开运算是指将腐蚀、然后再用相同的结构元素进行膨胀操作,以消除小的孔洞并分离相邻对象。
对于平滑边缘、去除小的对象以及恢复对象中间的空隙等形态学处理来说,开运算运算是一个好的选择。
4. 闭运算:闭运算则是相反的,先膨胀,再腐蚀。
通过闭运算,我们可以填补噪点和小孔洞,连接相邻的对象并以这种方式消除对象边缘的小断点。
闭运算对于平滑边缘、填充对象的孔洞以及消除中间的小物体来说是很有用的。
当前实际应用形态学图像处理在医学成像、计算机视觉、自动化等领域有着广泛的应用。
下面将举几个例子介绍实际应用的情况。
1. 医学成像:医学成像是指利用不同的成像技术来对人体进行诊断和治疗。
这些技术主要包括X-光成像、CT、MRI等。
对于某些疾病的诊断,形态学处理可以成为一种有效的方法,如癌症检测、血管分割等。
通过形态学处理,可以帮助医生更容易地诊断和治疗这些疾病。
2. 计算机视觉:计算机视觉是指模仿人眼对物体和场景的理解,让计算机自己“看到”和理解图像。
形态学滤波(2):开运算、闭运算、形态学梯度、顶帽、⿊帽⼀、开运算开运算,就是先腐蚀后膨胀的过程数学表达式: dst = open(src,element) = dilate(erode(src, element))开运算可以⽤来消除⼩物体,在纤细点处分离物体,并且在平滑较⼤物体的边界的同时不明显改变其⾯积。
⼆、闭运算闭运算,就是先膨胀后腐蚀的过程数学表达式: dst = open(src,element) = erode(dilate(src, element))闭运算可以⽤来排除⼩型⿊洞(⿊⾊区域)三、形态学梯度形态学梯度,就是膨胀图与腐蚀图之差数学表达式: dst = morph-grad(src,element) = dilate(src, element) - erode(src, element)对⼆值图进⾏这⼀操作可以将团块的边缘突出出来,我们可以⽤形态学梯度来保留物体的边缘轮廓四、顶帽顶帽(礼帽)运算,就是原图像与“开运算”的结果图之差数学表达式: dst = tophat(src,element) = src - open(src,element)因为开运算带来的结果是放⼤了裂缝或者局部低亮度的区域。
因此从原图中减去开运算后的图,得到的效果图突出了⽐原图轮廓周围的区域更明亮的区域,且这⼀操作与选择的核的的⼤⼩相关。
顶帽运算往往⽤来分离⽐临近点亮⼀些的斑块,在⼀幅图像具有⼤幅的背景,⽽微⼩物品⽐较有规律的情况下,可以使⽤顶帽运算进⾏背景提取五、⿊帽⿊帽运算,就是“闭运算”的结果图与原图像之差数学表达式: dst = blackhat(src,element) = close(src,element) - src⿊帽运算后的效果图突出了⽐原图轮廓周围的区域更暗的区域,且这⼀操作和选择的核的⼤⼩相关⿊帽运算⽤来分离⽐临近点暗⼀些的斑块,效果图有着⾮常完美的轮廓六、核⼼函数:morphologyEx()1void morphologyEx( InputArray src, OutputArray dst,2int op, InputArray kernel,3 Point anchor = Point(-1,-1), int iterations = 1,4int borderType = BORDER_CONSTANT,5const Scalar& borderValue = morphologyDefaultBorderValue() );1 #include<opencv2/opencv.hpp>2 #include<iostream>34using namespace std;5using namespace cv;67 Mat g_srcImage, g_dstImage;8int g_nElementShap = MORPH_RECT; //元素结构的形状910//变量接收的TrackBar位置参数11int g_nMaxIterationNum = 10;12int g_nOpenCloseNum = 0;13int g_nErodeDilateNum = 0;14int g_nTopBlackHatNum = 0;1516static void on_OpenClose(int, void *); //回调函数17static void on_ErodeDilate(int, void *);18static void on_TopBlackHat(int, void *);192021int main()22 {23//载⼊原图24 g_srcImage = imread("C:\\Users\\Administrator\\Pictures\\Camera Roll\\05.jpg");25if (!g_srcImage.data) {26 cout << "图⽚载⼊失败!" << endl;27return false;28 }2930//显⽰原始图31 namedWindow("【原始图】");32 imshow("【原始图】", g_srcImage);3334//创建三个窗⼝35 namedWindow("【开运算/闭运算】", 1);36 namedWindow("【腐蚀/膨胀】", 1);37 namedWindow("【顶帽/⿊帽】", 1);3839//分别为三个窗⼝创建滚动条40 createTrackbar("迭代值", "【开运算/闭运算】", &g_nOpenCloseNum, g_nMaxIterationNum * 2 + 1, on_OpenClose);41 createTrackbar("迭代值", "【腐蚀/膨胀】", &g_nErodeDilateNum, g_nMaxIterationNum * 2 + 1, on_ErodeDilate);42 createTrackbar("迭代值", "【顶帽/⿊帽】", &g_nTopBlackHatNum, g_nMaxIterationNum * 2 + 1, on_TopBlackHat); 4344//轮询获取按键信息45while (1)46 {47int c;4849//执⾏回调函数50 on_OpenClose(g_nOpenCloseNum, 0);51 on_ErodeDilate(g_nErodeDilateNum, 0);52 on_TopBlackHat(g_nTopBlackHatNum, 0);5354//获取按键55 c = waitKey(0);5657//按下键盘Q或者ESC,程序退出58if (c == 'q' || c == 27)59break;60//按下键盘按键1,使⽤椭圆(Elliptic)结构元素MORPH_ELLIPSE61if (c == 'a')62 g_nElementShap = MORPH_ELLIPSE;63//按下键盘按键2,使⽤矩形(Rectangle)结构元素MORPH_RECT64if (c == 'b')65 g_nElementShap = MORPH_RECT;66//按下键盘按键3,使⽤⼗字形(Cross-shaped)结构元素MORPH_CROSS67if (c == 'c')68 g_nElementShap = MORPH_CROSS;69//按下键盘按键space,在矩形、椭圆、⼗字形结构元素中循环70if (c == '')71 g_nElementShap = (g_nElementShap + 1) % 3;72 }73return0;74 }75static void on_OpenClose(int, void *) {76//偏移量的定义77int offset = g_nOpenCloseNum - g_nMaxIterationNum; //偏移量78int Absolute_offset = offset > 0 ? offset : -offset; //偏移量的绝对值79//⾃定义核80 Mat element = getStructuringElement(g_nElementShap, Size(Absolute_offset * 2 + 1, Absolute_offset * 2 + 1), Point(Absolute_offset, Absolute_offset)); 8182//进⾏操作83if (offset < 0)84 morphologyEx(g_srcImage, g_dstImage, MORPH_OPEN, element);85else86 morphologyEx(g_srcImage, g_dstImage, MORPH_CLOSE, element);8788//显⽰图像89 imshow("【开运算/闭运算】", g_dstImage);90 }9192static void on_ErodeDilate(int, void *) {93int offset = g_nOpenCloseNum - g_nMaxIterationNum; //偏移量94int Absolute_offset = offset > 0 ? offset : -offset; //偏移量的绝对值95//⾃定义核96 Mat element = getStructuringElement(g_nElementShap, Size(Absolute_offset * 2 + 1, Absolute_offset * 2 + 1), Point(Absolute_offset, Absolute_offset)); 9798//进⾏操作99if (offset < 0)100 erode(g_srcImage, g_dstImage, element);101else102 dilate(g_srcImage, g_dstImage, element);103104//显⽰图像105 imshow("【腐蚀/膨胀】", g_dstImage);106 }107108static void on_TopBlackHat(int, void *) {109int offset = g_nOpenCloseNum - g_nMaxIterationNum; //偏移量110int Absolute_offset = offset > 0 ? offset : -offset; //偏移量的绝对值111//⾃定义核112 Mat element = getStructuringElement(g_nElementShap, Size(Absolute_offset * 2 + 1, Absolute_offset * 2 + 1), Point(Absolute_offset, Absolute_offset)); 113114//进⾏操作115if (offset < 0)116 morphologyEx(g_srcImage, g_dstImage, MORPH_TOPHAT, element);117else118 morphologyEx(g_srcImage, g_dstImage, MORPH_BLACKHAT, element);119120//显⽰图像121 imshow("【顶帽/⿊帽】", g_dstImage);122 }123。
数学形态学运算的实际应用
数学形态学是一种图像处理技术,可以在数字图像上实现各种形态学运算,如膨胀、腐蚀、开运算、闭运算、击中、击不中等。
这些运算可以应用于许多领域,以下是数学形态学运算的一些实际应用:
1.图像分割:可以通过膨胀、腐蚀操作实现图像分割,将图像中的前景和背景分离开来。
2.物体检测:可以利用击中、击不中操作实现物体检测,即在图像中找到特定的形状或颜色。
3.边缘检测:可以通过膨胀、腐蚀操作实现边缘检测,通过比较原图像和形态学处理后的图像,可以得到图像的边缘信息。
4.形态学重构:形态学重构是一种能够从形态学运算结果中提取有用信息的技术,常用于图像分割、边缘检测、形状提取等。
5.模式识别:可以利用形态学运算进行模式识别,即通过比较不同形态学处理后图像的差异,来实现对不同模式的识别和分类。
总之,数学形态学运算可以广泛应用于图像处理、计算机视觉、医学影像等领域,具有很强的实用性和应用前景。
1、实验目的
学习常见的数学形态学运算基本方法,了解腐蚀、膨胀、开运算、闭运算取得的效果,培养处理实际图像的能力,并为课堂教学提供配套的实践机会。
2、实验要求
利用MatLab工具箱中关于数学形态学运算的函数,计算本指导书中指定二值图像进行处理。
3、实验设备与软件
1.LC-PC计算机系统
2.MatLab软件/语言包括图像处理工具箱(Image Processing Toolbox)
3.实验所需要的图片
4.
4、实验内容与步骤
1.调入并显示图像Plane
2.jpg;
2.选取合适的阈值,得到二值化图像Plane2-2.jpg;
3.设置结构元素;
4.对得到的二值图像Plane2-2.jpg进行腐蚀运算;
5.对得到的二值图像Plane2-2.jpg进行膨胀运算;
6.对得到的二值图像Plane2-2.jpg进行开运算;
7.对得到的二值图像Plane2-2.jpg进行闭运算;
8.将两种处理方法的结果作比较;
5、实验过程及结果
程序代码:
I=imread('1.jpg');%读入图像
level = graythresh(I); %得到合适的阈值
bw = im2bw(I,level); %二值化
SE = strel('square',3); %设置膨胀结构元素
BW1 = imdilate(bw,SE); %膨胀
SE1 = strel('arbitrary',eye(5)); %设置腐蚀结构元素BW2 = imerode(bw,SE1); %腐蚀
BW3 = bwmorph(bw, 'open'); %开运算BW4 = bwmorph(bw, 'close'); %闭运算imshow(I)
figure,imshow(bw);title('原图');
figure,imshow(BW1);title('膨胀');
figure,imshow(BW2);title('腐蚀');
figure,imshow(BW3);title('开运算');
figure,imshow(BW4);title('闭运算');
6、思考题/问答题
1.结合实验内容,评价腐蚀运算与膨胀运算的效果。
答:腐蚀是一种消除边界点,它使边界向内部收缩,消除小且无意义的物体。
膨胀是将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。
可以用来填补物体中的空洞。
2.结合实验内容,评价开运算与闭运算的效果。
答:先腐蚀后膨胀的过程称为开运算。
实验中,开运算能够去除孤立的小点,毛刺和小桥(即连通两块区域的小点),而总的位置和形状不变。
先膨胀后腐蚀称为闭运算。
实验中,闭运算能够填平小湖(即小孔),弥合小裂缝,而总的位置和形状不变。
3.腐蚀、膨胀、开、闭运算的适用条件是什么?
答:由于噪声的影响,图象在阈值化后所得到边界往往是很不平滑的,物体区域具有一些噪声孔,背景区域上散布着一些小的噪声物体。
连续的开和闭运算可以有效地改善这种情况。
有时需要经过多次腐蚀之后再加上相同次数的膨胀,才可以产生比较好的效果。