Diff of /Code/sobel55.m [000000] .. [c28c68]

Switch to unified view

a b/Code/sobel55.m
1
2
3
 function img=sobel55(i);
4
5
i=imresize(i,[256 256]);
6
[r c]=size(i);
7
e=zeros(r+4,c+4);
8
for m=3:r+2
9
    for n=3:c+2
10
        e(m,n)=i(m-2,n-2);
11
        
12
    end
13
end
14
% figure, imshow(e,[])
15
gx=zeros(r,c);
16
gy=zeros(r,c);
17
18
for m=3:r+2
19
    for n=3:c+2
20
        gx(m-2,n-2)=(e(m-1,n-1)*1)+(e(m-1,n)*2)+(e(m-1,n+1)*1)+(e(m,n-1)*0)+(e(m,n)*0)+(e(m,n+1)*0)+(e(m+1,n-1)*-1)+(e(m+1,n)*-2)+(e(m+1,n+1)*-1)+(e(m-2,n-2)*2)+(e(m-2,n-1)*2)+(e(m-2,n)*4)+(e(m-2,n+1)*2)+(e(m-2,n+2)*2)+(e(m-1,n-2)*1)+(e(m-1,n+2)*1)+(e(m,n-2)*0)+(e(m,n+2)*0)+(e(m+1,n-2)*-1)+(e(m+1,n+2)*-1)+(e(m+2,n-2)*-2)+(e(m+2,n-1)*-2)+(e(m+2,n)*-4)+(e(m+2,n+1)*-2)+(e(m+2,n+2)*-2);
21
                    
22
        gy(m-2,n-2)=(e(m-1,n-1)*-1)+(e(m-1,n)*0)+(e(m-1,n+1)*1)+(e(m,n-1)*-2)+(e(m,n)*0)+(e(m,n+1)*2)+(e(m+1,n-1)*-1)+(e(m+1,n)*0)+(e(m+1,n+1)*1)+(e(m-2,n-2)*-2)+(e(m-2,n-1)*-1)+(e(m-2,n)*0)+(e(m-2,n+1)*1)+(e(m-2,n+2)*2)+(e(m-1,n-2)*-2)+(e(m-1,n+2)*2)+(e(m,n-2)*-4)+(e(m,n+2)*4)+(e(m+1,n-2)*-2)+(e(m+1,n+2)*2)+(e(m+2,n-2)*-2)+(e(m+2,n-1)*-1)+(e(m+2,n)*0)+(e(m+2,n+1)*1)+(e(m+2,n+2)*2);
23
        end
24
end
25
img=double((gx.^2 + gy.^2).^(0.5));