数学形态学应用——腐蚀、膨胀、击中(一)

长方形目标物A,内部有噪声导致的空洞,周围有噪声块。处理效果,目标物本身除了四个角的直角变为圆角外没有变化。

在这里插入图片描述

1.结构元素

用来对图像做处理的元素。此处用B表示。

2.腐蚀

对于Z^2中的集合A和B,B对A的腐蚀定义为:
在这里插入图片描述
可知B对A的腐蚀是一个用z平移的B包含在A中的所有点z的集合。

3.膨胀

对于Z^2中的集合A和B,B对A的膨胀定义为:
在这里插入图片描述
可知以B关于其原点的映像,并且以z对映像进行平移为基础。

4.膨胀和腐蚀的对偶性

(1).用B来膨胀A得到的集合是B的位移与A至少有一个非零
元素相交时B的原点位置的集合。
(2).A用B来腐蚀的结果:B完全包含在A中时B的原点位置的集合。
(3).膨胀是将与物体接触的所有背景点合并到该物体中,使
(4).边界向外部扩张的过程。可以用来填补物体中的空洞。
(5).腐蚀是一种消除边界点,使边界向内部收缩的过程。可以用来消除小且无意义的物体。

5.代码

%write by 长安 Rjex 
I=imread('1.png'); %读取一幅图像
I = rgb2gray(I); %将读取的图像变为灰度图
[m n]=size(I);

%腐蚀
I2 = uint8(ones(m,n).*255);  %I2为变换后的图像
k = 41;    %确定腐蚀结构体
t = (k-1)/2;
D = zeros(k);
for i = t+1 : m-t
    for j = t+1 : n-t
        D =I(i-t:i+t,j-t:j+t);
        M = find(D == 255);
        if isempty(M) == 1
            I2(i,j) = I(i,j);
        end
    end
end
figure(1);
imshow(I2);


%膨胀
k2 = 41;
t2 = (k2-1)/2;
I3 = uint8(ones(m+2*t2,n+2*t2).*255);
for i = t2+1:m+t2
    for j = t2+1:n+t2
        if I2(i-t2,j-t2)~=255
            I3(i-t2:i+t2,j-t2:j+t2)=I2(i-t2,j-t2);
        end
    end
end
figure(2);
imshow(I3);


%膨胀
k2 = 41;
t2 = (k2-1)/2;
I4 = uint8(ones(m+2*t2,n+2*t2).*255);
for i = t2+1:m+t2
    for j = t2+1:n+t2
        if I3(i-t2,j-t2)~=255
            I4(i-t2:i+t2,j-t2:j+t2)=I3(i-t2,j-t2);
        end
    end
end
figure(3);
imshow(I4);


%再腐蚀
I5 = uint8(ones(m,n).*255);  %I2为变换后的图像
k = 41;    %确定腐蚀结构体
t3 = (k-1)/2;
D = zeros(k);
for i = t3+1 : m-t3
    for j = t3+1 : n-t3
        D =I4(i-t3:i+t3,j-t3:j+t3);
        M = find(D == 255);
        if isempty(M) == 1
            I5(i,j) = I4(i,j);
        end
    end
end
figure(4);
imshow(I5);

6.结果

B腐蚀A可得:
在这里插入图片描述
对上图膨胀可得:
在这里插入图片描述
对上图再一次膨胀可得:
在这里插入图片描述
再腐蚀即可:
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值