腐蚀和膨胀
膨胀
膨胀是在二值图像中“加长”或“变粗”的操作。
IPT中函数imdilate执行膨胀运算,语法为
A2 = imdilate(A,B)
其中A2和A都是二值图像,B是指定结构元素的由0和1构成的矩阵。
结构元素的分解
膨胀满足交换律和结合律。假设一个结构元素B可以表示为B1和B2的膨胀,则A被B膨胀也可以表示为A被B1膨胀后再被B2膨胀。
我们称B能够分解成B1和B2两个结构元素。
计算膨胀所需要的时间正比于结构元素中的非零像素的个数。
利用性质,将结构元素分解为小块,可以大大节省时间
函数strel
IPT中strel函数可以构建各种形状和大小的结构元素。
se = strel(shape, parameters)
strel函数的另一个重要属性是,它能以分解的形式来产生结构元素,而函数imdilate则自动地使用分解信息来加快膨胀处理。
腐蚀
腐蚀“收缩”或“细化”二值图像中的对象。腐蚀的过程也由结构元素控制。
结构元素与像素完全匹配输出1
A被B腐蚀是所有结构元素的原点位置的集合
腐蚀使用IPT中的imerode函数实现,用法同膨胀函数imdilate。
腐蚀与膨胀的组合
开运算和闭运算
这种运算是A先被B腐蚀后再被B膨胀。
简单集合解释为:B在A内完全匹配的平移的并集。
形态学开运算完全删除了不能包含结构元素的对象区域,平滑了对象的轮廓,去掉了细小的突出部分。
形态学闭运算是先膨胀再腐蚀。几何学解释为:所有不与A重叠的B的平移的并集。与开运算不同的是,闭运算一般会将狭窄的缺口连接起来形成细长的弯口,并填充比结构元素小的洞
开运算