开运算的作用,什么是开运算和闭运算

形态学操作

形态学操作是根据图像形状进行的简单操作。一般情况下对二值化图像进行的操作。需要输入两个参数,一个是原始图像,第二个被称为结构化元素或核,它是用来决定操作的性质的。两个基本的形态学操作是腐蚀和膨胀。他们的变体构成了开运算,闭运算,梯度等。

结构元素

图像处理经常要用到形态学操作,其中首先要获取结构元素。包括结构元素的大小及形状。

我们使用 Numpy 构建了结构化元素,它是正方形的。但有时我们需要构建一个椭圆形/圆形的核。为了实现这种要求,提供了 OpenCV函数 cv2.getStructuringElement()。你只需要告诉他你需要的核的形状和大小。

腐蚀 (erode)

定义E为欧氏空间,在二值图像A上使用B进行腐蚀运算的定义为: 其中 为B平移向量z得到。

在深蓝色正方形上使用圆盘进行腐蚀运算,结果为浅蓝色正方形。

腐蚀作用:可以用来消除小且无意义的物体。

参数意义如下:

例子

膨胀 (dilate)

定义E为欧氏空间,在二值图像A上使用B进行膨胀运算的定义为: 其中 为A平移向量b得到。

在深蓝色正方形上使用圆盘进行膨胀运算,结果为浅蓝色正方形,带有圆角。

膨胀作用:可以用来填补物体中的空洞。

参数意义同腐蚀。

例子

开运算 在数学形态学中,开运算 被定义为先腐蚀后膨胀。 其中 和 分别表示腐蚀和膨胀。

在深蓝色正方形上使用圆盘进行开运算,结果为浅蓝色正方形,带有圆角。

开运算作用:它被用来去除噪声

参数意义如下:

例子

闭运算

在数学形态学中,闭运算 被定义为先膨胀后腐蚀。 其中 和 分别表示腐蚀和膨胀。

在深蓝色区域(两个相连的正方形)上使用圆盘进行闭运算,结果为深蓝色和浅蓝色的并集。

闭运算作用:经常被用来填充前景物体中的小洞,或者前景物体上的小黑点。

cv2.MORPH_CLOSE代表闭运算,其他参数意义同开运算。

例子

形态学梯度 其实就是一幅图像膨胀与腐蚀的之差。

形态学梯度作用:提取前景物体的轮廓。

cv2.MORPH_GRADIENT代表形态学梯度,其他参数意义同开运算。

例子

礼帽 原始图像与进行开运算之后得到的图像的差。

例子

黑帽 进行闭运算之后得到的图像与原始图像的差。

例子

参考资料: 网址: en.wikipedia.org/wiki/Mathematical_morphology 书籍:《数字图像处理》《OpenCV-Python-Toturial-中文版》

数字图像处理

数字图像处理主要再两个领域,这里介绍空间域的处理操作。 空间域:根据图像像元数据的空间表示 f(x,y)进行处理 变换域:对图像像元数据的空间表示f(x,y)先进行某种变换,然后正对变换数据进行处理。

变换域处理一定有正变换和反变换。

空间域的处理方法有:

单波段操作 , 点运算 邻域运算 多波段操作 , 代数运算 剖面运算

对单幅图像像元进行的逐个像元计算。 直方图扩展(拉伸) 一般用于图像的整体增强

为了突出图像中感兴趣的目标或者灰度区间,抑制那些不感兴趣的灰度区域。 一般用于图像局部的灰度增强 分段拉伸

有很多方法 比如指数变换 对数变换(增强暗的部分,压缩暗的部分) 一般用于图像局部灰度增强:高斯拉伸 两边和中间压缩 平方根拉伸 暗的地方被拉伸 亮的地方被压缩

空间操作 图像裁剪【规则裁剪 不规则裁剪】 图像镶嵌 波段操作 波段提取 波段叠加

图像裁剪 根据我们的需要保留感兴趣的部分,去除其他区域。 如果不是最终的操作,此时需要尽可能比实际的研究区域略微大一点。 图像镶嵌 最大的特点是要无缝镶嵌。把多景相邻遥感影像拼成一块。 注意事项: 1、待镶嵌对图像在重叠去应该具有相似的色调、纹理等特征。 2、拼接线尽量选择在差异明显的自然地物交界处,如河流、山脊、路。 3、对拼接线两边附近的图像作匀色处理。

图像镶嵌步骤:

波段提取 从一个多波段的图像文件中提取某一个特定波段作为一个独立文件。 波段叠加 把同一个地理范围不同波段的文件合并为一个多波段文件。

求反 与 或 异或运算

二值形态学 灰度形态学 腐蚀 膨胀 开运算 闭运算

腐蚀 :是一种消除边界点、使边界向内部收缩的过程,可以用来消除小且无意义的目标物。

开运算:使用同一个结构元素对图像先腐蚀再膨胀的运算。 闭运算:使用同一个结构元素对图像先膨胀再腐蚀的运算。

腐蚀:用结构元素b对输入图像f进行腐蚀。 膨胀 开运算:先腐蚀,后膨胀 闭运算:先膨胀,后腐蚀

形态学的开闭运算与字面上的“开”和“闭”的本来的意义有什么关系?

形态学分很多种呢,我也不知道你想要知道哪种?其实形态学的开闭运算并不能强加以字面的意义,很多人不能完全掌握形态学就是这样的原因。形态学中的开与闭其实是一种现象的逆反过程的代名词。与现实中的区别很大。学习的时候要忘记你现实的开与闭的意义。

图像开运算和闭运算

如果您觉得本文不错,帮忙点赞哦! 一. 图像形态学处理 —— 膨胀和腐蚀 二. 开运算与闭运算:     开运算:先腐蚀后膨胀,能够消除图像区域外的小白点(噪声)。     闭运算:先膨胀后腐蚀,能够消除图像区域内的小黑点(噪声)。     为什么有了膨胀、腐蚀还要开运算闭运算呢?其实开闭运算最重要的一点就是,可以保持物体原有大小。然后一个是消除物体外部噪声(开运算)的另一个是增强物体之间连接点(闭运算)的。 三. python实现开运算和闭运算: # Writer : wojianxinygcl@163 # Date   : 2023.3.21 import numpy as np # Morphology Dilate def Morphology_Dilate(img, Dil_time=1):     H, W = img.shape     # kernel     MF = np.array(((0, 1, 0),     (1, 0, 1),     (0, 1, 0)), dtype=np.int)     # each dilate time     out = img.copy()     for i in range(Dil_time):         tmp = np.pad(out, (1, 1), 'edge')         for y in range(1, H):             for x in range(1, W):                 if np.sum(MF * tmp[y-1:y+2, x-1:x+2]) >= 255:                     out[y, x] = 255     return out # Morphology Erode def Morphology_Erode(img, Erode_time=1):     H, W = img.shape     out = img.copy()     # kernel     MF = np.array(((0, 1, 0),     (1, 0, 1),     (0, 1, 0)), dtype=np.int)     # each erode     for i in range(Erode_time):         tmp = np.pad(out, (1, 1), 'edge')         # erode             for y in range(1, H):                 for x in range(1, W):                     if np.sum(MF * tmp[y-1:y+2, x-1:x+2]) < 255*4:                         out[y, x] = 0     return out # Morphology Closing def Morphology_Closing(img, time=1):     out = Morphology_Dilate(img, Dil_time=time)     out = Morphology_Erode(out, Erode_time=time)     return out # Opening morphology def Morphology_Opening(img, time=1):     out = Morphology_Erode(img, Erode_time=time)     out = Morphology_Dilate(out, Dil_time=time)     return out 四. 开闭运算的效果:     可以看到,图像开运算,消除了图像外部的噪声,图像闭运算,连通了更多的图像区域。 五. 参考内容:     ①  cnblogs/wojianxin/p/12542459.html     ②  blog.csdn/Ibelievesunshine/article/details/105018063 六. 版权声明:

什么叫做一个数的平方根,开平方运算和平方运算有什么关系?

如果一个数的的平方根等于a,那么这个数叫做a的平方或a的二次方求一个数的平方根的运算 叫做开平方。平方是一种运算,比如,a的平方表示a×a,简写成a²,也可写成a×a开平方是平方的逆运算

开根号是什么?可以干什么?有什么用?

开根号是求平方的逆运算。如5的平方是25,25开根号就是5。

返回顶部