二值图像腐蚀与膨胀操作样例 您所在的位置:网站首页 腐蚀膨胀计算方法 二值图像腐蚀与膨胀操作样例

二值图像腐蚀与膨胀操作样例

2023-09-20 03:44| 来源: 网络整理| 查看: 265

申明: 仅个人小记

前言: 我之前对腐蚀与膨胀的概念理解存在错误。我原来的概念解决不了结构的原点设置在结构外部的情况。故在这里记一下。

小注: 刚开始操作的时候是同时有三张图,分别为原图像,结构元素图像,输出结果空白图像 注意: 原图像只是提供位置信息,不参与输出图像的构成。

###一、操作方法简要说明

腐蚀操作内容

先不管原点设置的位置,在原图中找出第一个和结构元素完全匹配的部分想象着拿着结构元素往上面找到的位置上贴,这时得到结构元素中的原点(就是打上“+”的那个方块)对应着原图中一个方块我们根据这个方块位置,在空白的输出图像上(第一次输出图像为空白的)相应的位置涂黑。重复1~3,直至原图中所有能和结构元素完全匹配的情况用完这是得到的输出图像便是结构元素对原图像进行腐蚀的结果

膨胀操作内容

原图像是结构元素原点的运行轨迹。直接关注原点,想象着拿着结构元素,把结构元素的原点放在原图像上的第一个有效元素(指的是黑方块)。这时,我们得到结构元素所有的黑色方块在原图像上位置。我们根据得到的位置,在的输出图像(第一次输出图像为空白的)上完全相同的位置涂黑。重复1~3,得到输出结果图像,输出结果图像就是结构元素对原图像膨胀操作的结果。 二、 二值图像的腐蚀操作

####1. 结构的原点设置在结构的内部情况举例

图中左侧(a)为原图像,右侧(b)为结构元素。

第一步 拿结构元素第一次完全匹配原图(右侧为输出图像)

        

第二步 然后我们根据原点在原图像中的位置,在输出图像上完全对应的位置上涂黑,即输出图像更变为

第三步 在原图中寻找下一个完全和结构元素匹配部分,即

第四步 根据此刻结构元素的原点在原图像上的位置,在输出图像相同的位置上涂黑,即

第五步 寻找完毕,操作完毕。 ####2. 结构的原点设置在结构的外部情况举例

左侧为原图,右侧为结构元素,注意,这里的结构元素的原点不在结构元素内部。

第一步 拿结构元素第一次完全匹配原图(右侧为输出图像)

第二步 根据结构元素的原点在原图中的位置,我们再输出图像相应的位置涂黑,即

第三步 在原图中寻找下一个完全和结构元素匹配部分,即

第四步 根据此刻结构元素的原点在原图像上的位置,在输出图像相同的位置上涂黑,即

第五步 寻找完毕,操作完毕。

###三、 二值图像的膨胀操作

####1. 结构的原点设置在结构的内部情况举例

图中左侧(a)为原图像,右侧(b)为结构元素

操作规则,拿结构元素的原点在原图像上的黑色方块上一次一次移动。

第一步 将结构元素的原点,放置在原图向上的第一个黑色方块上,即 (左侧为原图像,右侧为输出图像)

第二步 根据此时结构元素在原图上霸占的所有位置,我们在输出图的相应所有位置涂黑,即

第三步 将结构元素的原点移动到下一个原图上的黑色方块,即

第四步 根据此时结构元素在原图上霸占的所有位置,我们在输出图的相应所有位置涂黑,即

第五步 重复第三步和第四步,直到遍历完毕原图像中所有的黑色方块,我们得到最终输出结果

####2. 结构的原点设置在结构的外部情况举例

左侧为原图,右侧为结构元素,注意,这里的结构元素的原点不在结构元素内部。

第一步 将结构元素的原点,放置在原图向上的第一个黑色方块上,即 由于位置不够,我在上边界上拓展了一行。

第二步 根据此时结构元素在原图上霸占的所有位置,我们在输出图的相应所有位置涂黑,即

第三步 将结构元素的原点移动到下一个原图上的黑色方块,即

第四步 根据此时结构元素在原图上霸占的所有位置,我们在输出图的相应所有位置涂黑,即

第五步 重复第三步和第四步,直到遍历完毕原图像中所有的黑色方块,我们得到最终输出结果

By Jack Lu 2017-6-26 23:57:35

四、其他的一些概念 平移不变性(shift-nonvariant): 指的就是不论平行移动到哪里执行的操作都是一样。和执行的动作和操作是无关系的。腐蚀和膨胀操作还可以对灰度图进行操作,具体方式:

灰度图腐蚀 用原图减去结构,选用结果中的最小值(如果有负值,则以0为最小值)作为本次输出值放置在空白图像相应的输出位置(即结构的原点位置在原图上相应的位置)。

灰度图膨胀 用原图加上结构,选用结果中的最大值 (如果有负值,则以0为最小值)作为本次输出值放置在空白图像相应的输出位置(即结构的原点位置在原图上相应的位置)。

3 开闭运算

开运算为: 先腐蚀再膨胀

闭运算为: 先膨胀再腐蚀

开闭运算具有幂等性。即做n次开运算和做一次开运算的结果相同,闭运算同样如此。

个人方便记忆开闭运算的操作顺序,这样理解,开运算是打开的意思,即可以理解为将图像中靠近但不相连的地方索性打开。做一次开运算,使得原来的缝隙变大。 闭运算可以理解为闭合的意思,能合并在一起的地方尽量合并。即可以理解为把图像中缝隙填满。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有