今天心情不怎么样,外面有雪。
这个代码思路处理的不错。http://www.cnblogs.com/tornadomeet/archive/2012/03/20/2408086.html
转自这个链接。作者写的很详细。
%% 开运算和闭运算
clc
clear
f=imread('d.png');
%se=strel('square',5');%方型结构元素
se=strel('disk',5');%圆盘型结构元素
%imshow(f);%原图像
title('开闭运算原始图像')
%开运算数学上是先腐蚀后膨胀的结果
%开运算的物理结果为完全删除了不能包含结构元素的对象区域,平滑
%了对象的轮廓,断开了狭窄的连接,去掉了细小的突出部分
fo=imopen(f,se);%直接开运算
figure,subplot(221),imshow(fo);
% imwrite(fo,'0c.png');
title('直接开运算');
%闭运算在数学上是先膨胀再腐蚀的结果
%闭运算的物理结果也是会平滑对象的轮廓,但是与开运算不同的是,闭运算
%一般会将狭窄的缺口连接起来形成细长的弯口,并填充比结构元素小的洞
fc=imclose(f,se);%直接闭运算
subplot(222),imshow(fc);
%imwrite(fc,'0b.png');
title('直接闭运算');
foc=imclose(fo,se);%先开后闭运算
subplot(223),imshow(foc);
imwrite(foc,'0d.png');
title('先开后闭运算');
fco=imopen(fc,se);%先闭后开运算
subplot(224),imshow(fco);
title('先闭后开运算');
希望大家可以提提意见。