MATLAB函数处理图像实现膨胀腐蚀_第1页
MATLAB函数处理图像实现膨胀腐蚀_第2页
MATLAB函数处理图像实现膨胀腐蚀_第3页
MATLAB函数处理图像实现膨胀腐蚀_第4页
MATLAB函数处理图像实现膨胀腐蚀_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文格式为Word版,下载可任意编辑——MATLAB函数处理图像实现膨胀腐蚀

MATLAB函数处理图像实现膨胀腐蚀

MATLAB函数处理图像实现膨胀腐蚀

一、试验目的

1、了解二值形态学的基本运算

2、把握二值图像膨胀、腐蚀的基本方法

3、编程实现膨胀、腐蚀

二、试验要求

1、使用imdilate函数进行图像膨胀,并观测膨胀后图像的变化。

2、使用imerode函数进行图像腐蚀,观测腐蚀后的图像变化状况。

三、试验原理

膨胀:将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。利用它可以填补物体中的空洞。B对X膨胀所产生的二值图像D是满足以下条件的点(x,y)的集合:假使B的原点平移到点(x,y),那么它与X的交集非空。数学表达式:CAB

腐蚀:一种消除边界点,使边界向内部收缩的过程。利用它可以消除小而且无意义的物体。B对X腐蚀所产生的二值图像E是满足以下条件的点(x,y)的集合:假使B的原点平移到点(x,y),那么B将完全包含于X中。数学表达式:CAB

膨胀处理:一种消除边界点,使边界点向内部收缩的过程。

腐蚀处理:将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。

四、试验步骤

1.图像膨胀的Matlab实现:

可以使用imdilate函数进行图像膨胀,imdilate函数需要两个基本输入参数,即待处理的输入图像和结构元素对象。结构元素对象可以是strel函数返回的对象,也可以是一个自己定义的表示结构元素邻域的二进制矩阵。此外,

MATLAB函数处理图像实现膨胀腐蚀

imdilate还可以接受两个可选参数:PADOPT(padopt)——影响输出图片的大小、PACKOPT(packopt).——说明输入图像是否为打包的二值图像(二进制图像)。步骤1,首先创立一个包含矩形对象的二值图像矩阵。

BW=zeros(9,10);

BW(4:6,4:7)=1

BW=

0000000000

0000000000

0000000000

0001111000

0001111000

0001111000

0000000000

0000000000

0000000000

步骤2,使用一个33的正方形结构元素对象对创立的图像进行膨胀。SE=strel('square',3)

SE=

FlatSTRELobjectcontaining9neighbors.

Neighborhood:

111

111

111

步骤3,将图像BW和结构元素SE传递给imdilate函数。

BW2=imdilate(BW,SE)

BW2=

0000000000

0000000000

0011111100

0011111100

MATLAB函数处理图像实现膨胀腐蚀

0011111100

0011111100

0011111100

0000000000

0000000000

步骤4,显示结果。

imshow(BW,'notruesize')

imshow(BW2,'notruesize')

2.图像腐蚀的Matlab实现:

可以使用imerode函数进行图像腐蚀。imerode函数需要两个基本输入参数:待处理的输入图像以及结构元素对象。此外,imerode函数还可以接受3个可选参数:PADOPT(padopt)——影响输出图片的大小、PACKOPT(packopt).——说明输入图像是否为打包的二值图像(二进制图像)。M——指定原始图像的行数。以下程序例如说明白如何对某一副具体图像进行腐蚀操作,腐蚀前后的效果对比如图末。

步骤1,读取图像cameraman.tif(该图像是Matlab当前目录下自带的图片)BW1=imread('cameraman.tif');

步骤2,创立一个任意形状的结构元素对象

SE=strel('arbitrary',eye(5));

步骤3,以图像BW1和结构元素SE为参数调用imerode函数进行腐蚀操作。BW2=imerode(BW1,SE);

步骤4,显示操作结果

imshow(BW1)

figure,imshow(BW2)

五、试验代码及结果

代码:

imerode函数,该函数能够实现二值图像的腐蚀操作;

imdilate函数,该函数能够实现二值图像的膨胀操作;

bw=imread(‘d:\image1’)

bw=rgb2gray(bw)

se1=strel(‘disk’,11);

MATLAB函数处理图像实现膨胀腐蚀

se2=strel(‘line’,11,90);

bw2=imdilate(bw,se2);

bw1=imerode(bw,se1);

imshow(bw),title(‘原图’)

figure,imshow(bw2),title(‘膨胀后的图像’)

figure,imshow(bw1),title(‘腐蚀后的图像’)

结果:

原图膨胀后的图像

腐蚀后的图像

六、试验心得体会

通过本次的试验,我了解了二值形态学的基本运算,把握了二值图像膨胀、腐蚀的基本方法,并且会运用编

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论