数字图像处理实验6 形态学图像处理

  • 格式:doc
  • 大小:28.00 KB
  • 文档页数:2

实验6 形态学图像处理

一.实验目的:

1.掌握形态学图像处理的基本算法:膨胀、腐蚀。

2.掌握MATLAB函数中用于构建结构元的标准函数。

3.掌握开运算、闭运算。

二.实验内容:

1.利用MATLAB标准函数构建结构元。

2.运用MATLAB标准函数进行膨胀、腐蚀运算,以及开运算、闭运算

三.实验原理:

1.构建结构元

MATLAB标准函数strel运用各种形状和大小构造结构元素,其基本语法为:

se = strel(shape, parameters)

其中,shape是指定的希望形状的字符串,而parameters是指定形状信息(如其大小)的一系列参数。

语句形式 描述

se = strel(‘diamond’, R) 创建一个菱形结构元,其中R是从结构原点到菱形最远点的距离

se = strel(‘disk’, R) 创建一个圆盘形结构元,其半径为R

se = strel(‘square’, R) 创建一个方形结构元,其边长为R

例:>> se = strel(‘diamond’, 5) //返回一个沿水平和垂直轴扩展5个像素的菱形结构元

2. 膨胀、腐蚀运算,开运算、闭运算

膨胀:MATLAB标准函数imdilate(f, se),f是输入的二值图像,se是用于膨胀的结构元,函数的输出即为膨胀后的二值图像。

腐蚀:MATLAB标准函数imerode(f, se),f是输入的二值图像,se是用于腐蚀的结构元,函数的输出即为腐蚀后的二值图像。

开运算(先腐蚀再膨胀):MATLAB标准函数imopen(f, se),f是输入的二值图像,se是结构元,函数的输出即为开运算后的二值图像。

闭运算(先膨胀再腐蚀):MATLAB标准函数imclose(f, se),f是输入的二值图像,se是结构元,函数的输出即为闭运算后的二值图像。

例:

>> f = imread('E:\医学图像处理实验讲义\实验六\mask.bmp')

>> se = strel('diamond', 5)

>> fd = imdilate(f, se) //膨胀运算

>> imshow(f)

>> figure, imshow(fd) >> se = strel('diamond', 25)

>> fd = imdilate(f, se)

>> figure, imshow(fd)

四.实验报告:

1.创建一个parameters = 1的菱形结构元,在报告中画出该结构元的形状及元素值,并用该结构元对图像text.bmp进行膨胀运算。

2.分别创建parameters = 5、parameters = 10、parameters = 20的三个圆形结构元,并用这三个结构元分别对图像wirebond.bmp进行腐蚀运算。

3.创建一个parameters = 20的方形结构元,用该结构元对图像shapes.bmp分别进行开运算、闭运算,比较两者输出图像的不同之处。

4.创建一个parameters = 3的方形结构元,用该结构元对图像fingerprint.bmp进行依次进行开运算、闭运算,观察最后的输出图像是否很好地去除了噪声。