文档介绍:

实验二形态算子

一、实验目的与要求

二、实验设备:

三、实验内容:

利用VC++/C或MatLab工具箱中关于数学形态学运算的函数,对二值图像进行膨胀、腐蚀和开运算、闭运算处理。

四、实验原理:

五、实验报告内容

(1)描述实验的基本步骤,用数据和图片给出各个步骤中取得的实验结果,并进行必要的讨论,必须包括原始图像及其计算/处理后的图像。结合实验内容,评价腐蚀、膨胀以及开运算、闭运算的效果,并说明它们各自适用条件。

%对二值图像做腐蚀、膨胀以及开运算和闭运算

close all;

clc;

clear;

I=imread

I2=im2bw(I); %对读入图像做二值化处理

[m,n]=size(I2);

subplot(2,3,1),imshow(I)

title('原始图像');

subplot(2,3,2),imshow(I2)

title('二值图像');

s=[1 1;1 0]; %腐蚀膨胀算子

%腐蚀运算

for i=1:m-1

for j=1:n-1

if (I2(i,j)==1)&&(I2(i+1,j)==1)&&(I2(i,j+1)==1)

I3(i,j)=1;

end

end

end

subplot(2,3,3),imshow(I3)

title('图像腐蚀1次');

%膨胀运算

for i=1:m-1

for j=1:n-1

if (I2(i,j)==1)||(I2(i+1,j)==1)||(I2(i,j+1)==1)

I4(i,j)=1;

end

end

end

subplot(2,3,4),imshow(I4)

title('图像膨胀1次');

%开运算

for i=1:m-2

for j=1:n-2

if (I3(i,j)==1)||(I3(i+1,j)==1)||(I3(i,j+1)==1)

I5(i,j)=1;

end

end

end

subplot(2,3,5),imshow(I5)

title('开运算');

%闭运算

for i=1:m-2

for j=1:n-2

if (I4(i,j)==1)&&(I4(i+1,j)==1)&&(I4(i,j+1)==1)

I6(i,j)=1;

end

end

end

subplot(2,3,6),imshow(I6)

title('闭运算');

原图像经开运算(先腐蚀后膨胀),图像原先那些不完全连续部分,边缘孤点等被去掉,主体部分得以加强,因而图

内容来自淘豆网www.taodocs.com转载请标明出处.

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐