⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dne.asv

📁 数字图像处理
💻 ASV
字号:
clc;
clear;
hold off;
I = imread('A.bmp');
figure(1);
imshow(I);
title('原图');
%-----------------------初始化----------------------
for i = 1:256
    for j = 1:256
        J(i,j) = 255;
    end
end
%-----------------------腐蚀------------------------ 
for i = 2:255
    for j = 2:255
        if I(i-1,j-1) == 0
            J(i,j) = 0;
        end
        if I(i,j-1) == 0
            J(i,j) = 0;
        end
        if I(i+1,j-1) == 0
            J(i,j) = 0;
        end
        if I(i-1,j) == 0
            J(i,j) = 0;
        end
        if I(i+1,j) == 0
            J(i,j) = 0;
        end
        if I(i-1,j+1) == 0
            J(i,j) = 0;
        end
        if I(i,j+1) == 0
            J(i,j) = 0;
        end
        if I(i+1,j+1) == 0
            J(i,j) = 0;
        end
    end
end
%-----------------------填充------------------------
    for i = 1:256
        J(1,i) = 0;
        J(256,i) = 0;
    end
    for j = 1:256
        J(j,1) = 0;
        J(j,256) = 0;
    end 
figure(2);
imshow(J);
title('腐蚀处理后');
%-----------------------初始化----------------------
for i = 1:256
    for j = 1:256
        K(i,j) = 0;
    end
end
%-----------------------膨胀------------------------ 

for i = 2:255
    for j = 2:255
        if J(i-1,j-1) == 255
            K(i,j) = 255;
        end
        if J(i,j-1) == 255
            K(i,j) = 255;
        end
        if J(i+1,j-1) == 255
            K(i,j) = 255;
        end
        if J(i-1,j) == 255
            K(i,j) = 255;
        end
        if J(i+1,j) == 255
            K(i,j) = 255;
        end
        if J(i-1,j+1) == 255
            K(i,j) = 255;
        end
        if J(i,j+1) == 255
            K(i,j) = 255;
        end
        if J(i+1,j+1) == 255
            K(i,j) = 255;
        end
    end
end
figure(3);
imshow(K);
title('膨胀处理后');
%--------------------------------end of 开运算--------------------------------------

%-----------------------初始化----------------------
for i = 1:256
    for j = 1:256
        L(i,j) = 0;
    end
end
%-----------------------膨胀------------------------ 

for i = 2:255
    for j = 2:255
        if K(i-1,j-1) == 255
            L(i,j) = 255;
        end
        if K(i,j-1) == 255
            L(i,j) = 255;
        end
        if K(i+1,j-1) == 255
            L(i,j) = 255;
        end
        if K(i-1,j) == 255
            L(i,j) = 255;
        end
        if K(i+1,j) == 255
            L(i,j) = 255;
        end
        if K(i-1,j+1) == 255
            L(i,j) = 255;
        end
        if K(i,j+1) == 255
            L(i,j) = 255;
        end
        if K(i+1,j+1) == 255
            L(i,j) = 255;
        end
    end
end
figure(4);
imshow(L);
%-----------------------初始化----------------------
for i = 1:256
    for j = 1:256
        M(i,j) = 255;
    end
end
%-----------------------腐蚀------------------------ 
for i = 2:255
    for j = 2:255
        if L(i-1,j-1) == 0
            M(i,j) = 0;
        end
        if L(i,j-1) == 0
            M(i,j) = 0;
        end
        if L(i+1,j-1) == 0
            M(i,j) = 0;
        end
        if L(i-1,j) == 0
            M(i,j) = 0;
        end
        if L(i+1,j) == 0
            M(i,j) = 0;
        end
        if L(i-1,j+1) == 0
            M(i,j) = 0;
        end
        if L(i,j+1) == 0
            M(i,j) = 0;
        end
        if L(i+1,j+1) == 0
            M(i,j) = 0;
        end
    end
end
%-----------------------填充------------------------
    for i = 1:256
        M(1,i) = 0;
        M(256,i) = 0;
    end
    for j = 1:256
        M(j,1) = 0;
        M(j,256) = 0;
    end 
figure(5);
imshow(M);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -