--- a +++ b/Code/sobel55.m @@ -0,0 +1,25 @@ + + + function img=sobel55(i); + +i=imresize(i,[256 256]); +[r c]=size(i); +e=zeros(r+4,c+4); +for m=3:r+2 + for n=3:c+2 + e(m,n)=i(m-2,n-2); + + end +end +% figure, imshow(e,[]) +gx=zeros(r,c); +gy=zeros(r,c); + +for m=3:r+2 + for n=3:c+2 + 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); + + 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); + end +end +img=double((gx.^2 + gy.^2).^(0.5));