影像侵蝕與擴張的問題 |
尚未結案
|
roger-c
一般會員 發表:7 回覆:14 積分:4 註冊:2003-11-20 發送簡訊給我 |
雖然曉得這是BCB討論區,但還是覺得應該會有高手可以幫我解決這個問題的,所以對各位是瞞不好意思的,請見諒!
就是我用MATLAB寫的一小段程式如下:
clc
clear all
a=[0 0 0 0 0 0 0 0 0 0;
0 1 0 0 0 0 0 0 0 0;
0 0 0 1 0 0 0 0 0 0;
0 1 1 1 1 0 1 1 1 0;
0 1 1 1 0 1 1 1 1 0;
0 1 1 1 0 0 1 1 1 0;
0 0 0 0 0 0 0 0 0 0];
b=zeros(7,10);
for i=2:6;
for j=2:9;
if a(i-1,j-1)|a(i-1,j)|a(i-1,j 1)|a(i,j-1)|a(i,j 1)|a(i 1,j-1)|a(i 1,j)|a(i 1,j 1)==0;
a(i,j)=0;
else
a(i,j)=1;
end
b=a;
end
end
就是每次以3×3遮罩來決定中心點,若其周圍八點中任一點為0,則刪除該中心點,來達到侵蝕的效果,但我這一段程式寫得不正確,不曉得哪裡應該要改進的,謝謝各位大大的指導。
|
arisaka_matsuri
高階會員 發表:25 回覆:205 積分:231 註冊:2003-10-19 發送簡訊給我 |
roger-c 你好:
試試這個MATLAB code~
clc clear all a= [0 0 0 0 0 0 0 0 0 0; 0 1 0 0 0 0 0 0 0 0; 0 0 0 1 0 0 0 0 0 0; 0 1 1 1 1 0 1 1 1 0; 0 1 1 1 0 1 1 1 1 0; 0 1 1 1 0 0 1 1 1 0; 0 0 0 0 0 0 0 0 0 0]; b = a; for i=2:6; for j=2:9; if (a(i-1,j-1)&a(i-1,j)&a(i-1,j 1)&a(i,j-1)&a(i,j 1)&a(i 1,j-1)&a(i 1,j)&a(i 1,j 1))==0; b(i,j)=0; end end end |
roger-c
一般會員 發表:7 回覆:14 積分:4 註冊:2003-11-20 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |