【初学者必看】图像处理入门,二值图像形态学(binary morphology)^_^

二值图像形态学(binary morphology)

二值图像形态学算子是简单有效的分析改进二值图像的工具,尤其是那些由前景和背景的分割(例如:基于颜色、运动估计、联和部署、多图像特征)
二值形态学算子操控一个离散图像的子集达到改善图像的目的
A :the foreground pixels
Ac the comprising background pixels
B: structuring element
下图为结构元素的样例
在这里插入图片描述

膨胀(Dilation)

用来纠正以前景像素的分割错误,例如联通对象的部件或填充孔。找出前景背景的外轮廓
在这里插入图片描述

膨胀属性properties of dilation

在这里d述

A⊕B={c ∈E2:c=a+b,a∈A,b∈B};
Structuring element 结构元素

  •  与卷积类似,结合律允许一个大的结构化元素的扩张被分解成一个小元素的操作,以加速执行时间例如,扩张的(2 n + 1)×(2 n +1)方阵可以方便地通过n连续3×3方阵。
  •  典型的结构元素包含原点,并且围绕原点对称,因此膨胀扩展了各向同性的前景区域。
  •  这样的膨联通胀操作符可以用来纠正以前景像素的分割错误,例如联通对象的部件或填充孔。找出前景和背景的外轮廓。
  •  结构元素的形状决定了膨胀前景对象的形状。

举个栗子

在下面的例子中,圆形结构元素的扩张导致外部轮廓的圆角而不是尖角。为了求出膨胀的形状,**可以想象将结构单元滑动,以遍历原始物体的所有轮廓点。**作用可以连接前景的联通块
在这里插入图片描述
下面的这个例子之中,我们使用了一个半径为11的圆膨胀算子,得到了一个更小的圆(黑色为前景,白色为背景)
在这里插入图片描述
关于可以提取前景的外轮廓的例子
在这里插入图片描述

腐蚀(Erosion)

纠正处理错误分类为前景的背景像素的分割错误,例如分割连接错误的对象提取背景的外轮廓
在这里插入图片描述

腐蚀的属性(properties of erosion)

腐蚀操作是
不可交换的;
符合结合律
在这里插入图片描述

  •  结合性允许大型结构化元素的侵蚀被小元素分解为操作链,从而加快执行时间。例如,侵蚀了(2 n + 1)×2(n + 1)可以方便地通过连续n侵蚀广场一个3×3的正方形。
  •  典型的结构元素包含原点,并且围绕原点对称,因此侵蚀缩小了各向同性的前景区域。
  •  可以部署这样的运算符来纠正处理错误分类为前景的背景像素的分割错误,例如分割连接错误的对象

举个栗子

下面的例子可以对前景的图像进行腐蚀可以将错误连接块断开连接,笔者分析:要选择合适大小的阈值,这样刚好不会将某一圆块整个腐蚀掉

在这里插入图片描述

轮廓提取

侵蚀面积为3x3平方,然后减去(subtraction)原始图像中被侵蚀的图像,
得到前景区域的内部轮廓,内部轮廓意味着前景像素与背景像素相邻。

可以将背景的轮廓绘制出来,通过腐蚀
在这里插入图片描述

膨胀和腐蚀的对偶原理(duality)

如果B是对称的:对前景膨胀和对背景腐蚀的效果相同,反之亦然

在这里插入图片描述

开运算和闭运算

使用同一结构单元的腐蚀和膨胀可以链接起来,从而有选择地从前景或背景中移除与结构单元不完全匹配的部分,而不会对其他部分造成任何失真。

Erosion and dilation by the same structuring element can be chained to remove selectively from either foreground or background the parts that do not match exactly the structuring element without causing any distortion to the other parts.

在这里插入图片描述

性质(properties)

  • 开运算和闭运算都是幂等的
  • 都是不可交换的
  • 开运算是缩小的;闭运算是扩大的

在这里插入图片描述
开运算也可以写成集合的运算形式如下
在这里插入图片描述

The final shape is the union of the translation of the elementary foreground parts that exactly match the structuring element
A OPEN TO B EQUEL TO=A EROSION BY
Open the foreground equel to close the background
膨胀和腐蚀的对偶性质可以拓展到开运算和闭运算上
在这里插入图片描述
Complement 补集
A——前景 Ac——背景
B——结构元素 B^——结构元素的
因为二元性质,开运算可以看做将结构元素和前景做比较,结果是去掉不同的部分,保持相同的部分不变
因为二元性质,闭运算可以看做将结构元素和背景做比较,结果是去掉不同的部分,保持相同的部分不变

举个栗子

我们可以选择合适的结构元素来进行筛选合适的图像;

  • 是结构元素的形状
  • 是结构元素的额大小
  • 输入二进制图像,开运算可以进行筛选出合适大小的物体
  • 可以用来计算脑细胞里面适合大小的细胞个数

hello

在这里插入图片描述
在这里插入图片描述

命中和未命中的变换Hit-and-Miss Transform

二值形态学算子,用于检测二值图像中的特定模式。由此产生的图像突出了所追求的模式的位置。
•更准确地说,在二进制图像与结构化元素完全相同的位置触发 命中和未命中的变换。
•给定一个结构元素,B包含前景(B1)点和背景(B0)点,命中-未命中变换定义如下:

在这里插入图片描述

在这里插入图片描述

基于碰撞与脱靶的直角凸角检测器对简单二值图像的影响。注意,“检测器”相当敏感

在这里插入图片描述

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
图像形态学处理可以用MATLAB中的函数进行实现,常用的形态学处理函数包括: 1. imerode:图像的腐蚀操作,用于缩小目标物体。 2. imdilate:图像的膨胀操作,用于扩大目标物体。 3. imopen:图像的开运算操作,先进行腐蚀操作再进行膨胀操作,用于去除小物体和平滑边界。 4. imclose:图像的闭运算操作,先进行膨胀操作再进行腐蚀操作,用于填补物体内的小孔和平滑边界。 5. bwmorph:图像形态学变换,包括腐蚀、膨胀、开运算、闭运算、骨架化等操作。 下面是一个简单的示例,展示如何使用MATLAB中的形态学处理函数对二图像进行处理: ```matlab % 读入二图像 img = imread('binary_image.png'); % 腐蚀操作 se = strel('disk', 3); % 创建一个半径为3的圆形结构元素 img_erode = imerode(img, se); % 膨胀操作 se = strel('rectangle', [5 5]); % 创建一个5x5的矩形结构元素 img_dilate = imdilate(img, se); % 开运算操作 se = strel('line', 11, 90); % 创建一条长度为11,角度为90度的直线结构元素 img_open = imopen(img, se); % 闭运算操作 se = strel('square', 7); % 创建一个7x7的正方形结构元素 img_close = imclose(img, se); % 骨架化操作 img_skeleton = bwmorph(img, 'skel', Inf); % 显示结果 subplot(2, 3, 1), imshow(img), title('原图像'); subplot(2, 3, 2), imshow(img_erode), title('腐蚀操作'); subplot(2, 3, 3), imshow(img_dilate), title('膨胀操作'); subplot(2, 3, 4), imshow(img_open), title('开运算操作'); subplot(2, 3, 5), imshow(img_close), title('闭运算操作'); subplot(2, 3, 6), imshow(img_skeleton), title('骨架化操作'); ``` 以上代码中,我们先读入了一个二图像,然后分别进行了腐蚀、膨胀、开运算、闭运算和骨架化操作,并将结果显示在一个2x3的子图中。可以根据实际需求选择不同的形态学处理函数和结构元素,对二图像进行处理和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

和你在一起^_^

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值