MATLAB中腐蚀、膨胀、开运算和闭运算

MATLAB中四种形态学基本运算


腐蚀


  腐蚀是一种消除边界点,使边界向内部收缩的过程。可以用来消除小且无意义的物体。
  用3X3的结构元素,扫描图像的每一个像素,用结构元素与其覆盖的二值图像做“与”操作,如果都为1,结果图像的该像素为1。否则为0。结果会使二值图像小一圈。
  简单讲,腐蚀把白区域变细。

MATLAB中腐蚀、膨胀、开运算和闭运算_第1张图片

原图
MATLAB中腐蚀、膨胀、开运算和闭运算_第2张图片
腐蚀图

腐蚀函数:erode

BW2= erode(BW1,SE)
BW2= erode(BW1,SE,…,n)



膨胀


  膨胀是将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程,可以用来填补物体中的空洞。
  用3X3的结构元素,扫描图像的每一个像素,用结构元素与其覆盖的二值图像做“与”操作,如果都为0,结果图像的该像素为0,。否则为1。结果使二值图像扩大一圈。
  简单讲,膨胀使白区域变粗。

MATLAB中腐蚀、膨胀、开运算和闭运算_第3张图片

膨胀图

膨胀函数:dilate

BW2=dilate(BW1,SE)
BW2=dilate(BW1,SE,…,n)



开运算


  先腐蚀后膨胀的过程称为开运算。
  用来消除小物体、在纤细点处分离物体、平滑较大物体的边界的同时并不明显的改变其面积。
  简单讲,开运算可去除白色噪点。
   
MATLAB中腐蚀、膨胀、开运算和闭运算_第4张图片

开运算图

开运算函数:imopen

IM2=imopen(IM,SE)
IM2=imopen(IM,NHOOD)



闭运算


  先膨胀后腐蚀的过程称为比运算。
  用来填充物体内细小空间、连接邻近物体、平滑其边界的同时并不明显改变其面积。
  简单讲,闭运算可去除黑色噪点。
MATLAB中腐蚀、膨胀、开运算和闭运算_第5张图片

闭运算图

闭运算函数:imclose函数

IM2=imclose(IM,SE)
IM2=imclose(IM,NHOOD)



bwmorph函数

此函数可执行以上四种操作

BW2=bwmorph(BW1,operation)
BW2=bwmorph(BW1,operation,n)

其中,operation可为以下操作:

‘clean’:除去孤立的像素(被0包围的1)
‘close’:计算二值闭合
‘dilate’:用结构元素计算图像膨胀
‘erode’:用结构元素计算图像侵蚀

你可能感兴趣的:(形态学操作,图像处理技术)