پیاده سازی الگوریتم لبه یابی Sobel edge detection

, , پیغام بگذارید

دراین روش برای لبه یابی بر روی تصویربدون استفاده از الگوریتم سوبل متلب از دو مشتق متوالی بر روی تصویر استفاده می شود در روش دوم که درپست های بعدی توضیح داده خواهد شد برای لبه یابی از فیتر های زیر استفاده خواهدشد  بصورت زیر است :

formul_subl_whithout toolbox

مقدار ماتریس(mask ) در خود کد نویسی تولباکس متلب استفاده می شود بصورت زیر است

 

 

در زیر عملیات هایی که بر روی پیکسل به پیکسل  تصویر بصورت سطری و ستونی

اعمال می شود (اعمال مسک برای مشتق گیری از تصویر بر حسب ایکس و ایگریگ)

بصورت است

toolbob matlab soblemaslfilter

عملیات هایی بر روی تصویر به صورت سطری و ستونی اعمال میشود تا لبه یایی انجام شود

sobel procedure whithout toolbox matlab

 

کد متلب برای پیاده سازی سوبل بدون تولباس متلب بصورت زیر است  :

A=imread(‘peppers.png’);
B=rgb2gray(A);

C=double(B);

for i=1:size(C,1)-2
for j=1:size(C,2)-2
%Sobel mask for x-direction:
Gx=((2*C(i+2,j+1)+C(i+2,j)+C(i+2,j+2))-(2*C(i,j+1)+C(i,j)+C(i,j+2)));
%Sobel mask for y-direction:
Gy=((2*C(i+1,j+2)+C(i,j+2)+C(i+2,j+2))-(2*C(i+1,j)+C(i,j)+C(i+2,j)));

%The gradient of the image
%B(i,j)=abs(Gx)+abs(Gy);
B(i,j)=sqrt(Gx.^2+Gy.^2);

end
end
figure,imshow(B); title(‘Sobel gradient’);

 

 

 

پاسخ دادن

anti spam *