各种边缘检测算法的比较

%各种边缘检测算法的比较
I=imread('lv.jpg');
I=rgb2gray(I);
I0=edge(I,'sobel');
I1=edge(I,'roberts');
I2=edge(I,'prewitt');
I3=edge(I,'log');
I4=edge(I,'canny');
I5=edge(I,'zerocross');
figure;
imshow(I0);
figure;
imshow(I1);
figure;
imshow(I2);
figure;
imshow(I3);
figure;
imshow(I4);
figure;

imshow(I5);


Robert:边缘定位精度较高,对于陡峭边缘且噪声低的图像效果较好,但没有进行平滑处理,没有抑制噪声的能力。

sobel和prewitt:进行了平滑处理,对噪声具有一定抑制能力,但容易出现多像素宽度。

Laplacian:对噪声较为敏感,使噪声能力成分得到加强,容易丢失部分边缘方向信息,造成一些不连续的检测边缘,同时抗噪声能力较差。

log:抗噪声能力较强,但会造成一些尖锐的边缘无法检测到。

canny:最优化思想的边缘检测算子,同时采用高斯函数对图像进行平滑处理,但会造成将高频边缘平滑掉,造成边缘丢失,采用双阈值算法检测和连接边缘。

你可能感兴趣的:(matlab图像学习入门)