- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MATLAB函数处理图像实现膨胀腐蚀
MATLAB函数处理图像实现膨胀腐蚀
一、实验目的
1、了解二值形态学的基本运算
2、掌握二值图像膨胀、腐蚀的基本方法
3、编程实现膨胀、腐蚀
二、实验要求
1、使用imdilate函数进行图像膨胀使用imerode函数进行图像腐蚀
腐蚀:一种消除边界点,使边界向内部收缩的过程。利用它可以消除小而且无意义的物体。B对X腐蚀所产生的二值图像E是满足以下条件的点(x,y)的集合:如果B的原点平移到点(x,y),那么B将完全包含于X中。数学表达式:
膨胀处理:一种消除边界点,使边界点向内部收缩的过程。
腐蚀处理:将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。
四、实验步骤
1.图像膨胀的Matlab实现:
可以使用imdilate函数进行图像膨胀,imdilate函数需要两个基本输入参数,即待处理的输入图像和结构元素对象。结构元素对象可以是strel函数返回的对象,也可以是一个自己定义的表示结构元素邻域的二进制矩阵。此外,imdilate还可以接受两个可选参数:PADOPT(padopt) ——影响输出图片的大小、PACKOPT(packopt).——说明输入图像是否为打包的二值图像(二进制图像)。
步骤1,首先创建一个包含矩形对象的二值图像矩阵。
BW=zeros(9,10);
BW(4:6,4:7) =1
BW =
0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 00 0 0 1 1 1 1 0 0 00 0 0 1 1 1 1 0 0 00 0 0 1 1 1 1 0 0 00 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0
步骤2,使用一个3×3的正方形结构元素对象对创建的图像进行膨胀。
SE=strel(square,3)
SE =Flat STREL object containing 9 neighbors.
Neighborhood:1 1 11 1 11 1 1
步骤3,将图像BW和结构元素SE传递给imdilate函数。
BW2=imdilate(BW,SE)
BW2 =
0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 00 0 1 1 1 1 1 1 0 00 0 1 1 1 1 1 1 0 00 0 1 1 1 1 1 1 0 00 0 1 1 1 1 1 1 0 00 0 1 1 1 1 1 1 0 00 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0
步骤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);
se2=strel(‘line’,11,90);
bw2= imdilate(bw,se2);
bw1=imerode(bw,se1);
imshow(bw),title(‘原图’)
figure,imshow(bw2), title(‘膨胀后的图像’)
figure,imshow(bw1), title(‘腐蚀后的图像’)
结果:
原 图 膨胀后的图像
腐蚀后的图像
六、实验心得体会
通过本次的实验,我了解了二值形态学的基
原创力文档


文档评论(0)