数字图像处理(七):形态学图像处理

预备知识

由集合论运算到图像处理

Z为整数集合,每个网格的中心坐标是来自笛卡尔乘积Z2中的一对元素。
f(x,y)数字图像 f是为每对不同坐标(x,y)分配亮度值(实数集R)的映射
若R中元素也是整数,则该数字图像为一个二维函数,坐标与振幅(亮度)值均为整数。

令A为Z2中的一个集合,其中的元素是像素坐标(x,y)。若w=(x,y)是A的一个元素,则我们可以写为在这里插入图片描述
同理,若w不是A的元素,则可以写为
在这里插入图片描述
满足特殊条件的像素坐标集合B
在这里插入图片描述
某集合中像素坐标不属于集合A,A的补集
在这里插入图片描述
并集、交集、差集(略)
基本集合运算
在这里插入图片描述

B的映像在这里插入图片描述
点z对集合A的平移在这里插入图片描述
在这里插入图片描述

二值图像,二值集合和逻辑运算符

在这里插入图片描述

膨胀和腐蚀

膨胀

膨胀在数学上定义为
在这里插入图片描述
满足交换律,但令第一个操作数为图像,第二个操作数为结构元素。
在这里插入图片描述
膨胀结果
在这里插入图片描述

结构元素的分解

膨胀满足结合律
在这里插入图片描述
一个结构元素B可以表示为两个结构元素B1和B2的膨胀
在这里插入图片描述
称B能够分解为B1和B2两个结构元素。

计算膨胀所需要的时间正比于结构元素中的非零像素的个数

函数strel

se = strel(shape, parameters)

shape 指定形状,parameters 指定大小
函数strel以分解的形式产生结构元素。

腐蚀

在这里插入图片描述
A被B腐蚀是所有结构元素的原点位置(值为1)的集合,其中平移的B和A的背景并不叠加。
在这里插入图片描述

膨胀和腐蚀的组合

最常用:开运算、闭运算、击中或击不中变换

开运算和闭运算

开运算:先腐蚀,再膨胀;B在A内完全匹配的平移的并集。【作用】平滑对象的轮廓,断开狭窄的连接

C = imopen(A, B)

闭运算:先膨胀,再腐蚀;所有不与A重叠的B的平移的并集。【作用】平滑对象的轮廓,狭窄的缺口连接为细长的弯口,并填充比结构元素小的洞

C = imclose(A, B)

在这里插入图片描述

在这里插入图片描述

击中或击不中变换

A被B击中或击不中变换
在这里插入图片描述

C = bwhitmiss(A, B1, B2)

例如:
在这里插入图片描述
在这里插入图片描述
用B1腐蚀可以决定东西南北领域像素的前景像素位置,用B2腐蚀原图的补集可决定所有东北、东南、西南、西北领域像素的像素位置。

查找表

函数makelut

函数applylut

函数bwmorph

g = bwmorph(f, operation, n)

operation 指定期望操作,n 操作重复次数
在这里插入图片描述
细化:得到单个像素宽的线
在这里插入图片描述

函数endpoints

【作用】识别并删除端点
在这里插入图片描述

标注连接分量

连接分量又称为对象,单个前景像素和所有前景像素集合之间的重要部分。
定义:对于任意前景像素p,与其相连的所有前景像素的集合称为包含p的连接分量。

函数bwlabel

[L, num] = bwlabel(f, conn)

f 二值图像,conn 制定期望的连接。输出L 标记矩阵,num给出所找到的连接分量的总数。
在这里插入图片描述
4邻接:q属于N4§
8邻接:q属于N8§
在这里插入图片描述
p与q之间存在一条完全有前景像素组成的4连接路径,则这两个前景像素称为4连接。
若它们之间存在一条8连接路径,则称为8连接。
在这里插入图片描述

计算质心(略)

形态学重构

重构涉及到两幅图像和一个结构元素的形态学变换,即标记(marker),是变换的开始点。另一幅图像是掩膜(mask),用来约束变换过程。结构元素用于定义连接性。
在这里插入图片描述
在这里插入图片描述

由重构作开运算(用重构代替膨胀来做开运算)

使用结构元素B对f由重构做开运算的定义为
在这里插入图片描述

fe = imerode(f, one(51,1));
fobr = imreconstruct(fe, f); %IM = imreconstruct(MARKER,MASK)

填充孔洞

g = imfill(f, 'holes');

图像平移形式(结构元素)的并集(或交集)

清除边界对象

g = imclearborder(f, conn);

形态学概念扩展到灰度图像

开运算和闭运算

开运算去除比结构元素更小的明亮细节,闭运算去除比结构元素更小的暗色细节。
开-闭滤波、闭-开滤波:组合二者以平滑图像并去除噪声。
交替顺序滤波:用一系列不断增大的结构元素来执行开-闭滤波。
在这里插入图片描述
开运算可用于补偿不均匀的背景亮度

顶帽变换(top-hat)

从原图像中减去开运算后的图像称为顶帽变换。

g = imtophat(f, NHOOD)

底帽变换(bottom-hat)

从原图像中减去闭运算后的图像称为底帽变换。

g = imbothat(f, NHOOD)

重构:抑制小峰值

开运算重构(opening-by-reconstruction)

闭运算重构(closing-by-reconstruction)

例 使用重构删除复杂图像的背景

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

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值