• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-14
  • 语言: Matlab
  • 标签: 边缘检测  matlab  

资源简介

用matlab实现边缘检测算法,包括sobel ,prewitt等等

资源截图

代码片段和文件信息

%% Read image
clear
f = im2double(imread(‘G:\ant\ant_6.bmp‘));

%% Display image
imshow(f[]);title(‘Original image‘);
pause

%% Edge Detection
% [g t] = edge(f ‘method‘ parameters);

%% Sobel Edge Detection 
%   automatic threshold
[v t] = edge(f ‘sobel‘  ‘vertical‘);
imshow(v);title(sprintf(‘Sobel Edge Dectection [auto vertical t = %0.2f]‘t));
pause

%   manual threshold
t = 0.15;
v = edge(f ‘sobel‘ t ‘vertical‘);
imshow(v);title(sprintf(‘Sobel Edge Dectection [manual vertical t = %0.2f]‘t));
pause

%   Sobel edge +45 degree
w = [-2 -1 0; -1 0 1; 0 1 2];
v = imfilter(f w ‘replicate‘);
t = 0.3*max(abs(v(:)));
v = v >= t;
imshow(v);title(sprintf(‘Sobel Edge Dectection [manual +45 t = %0.2f]‘t));
pause

%   Sobel edge -45 degree
w = [0 1 2; -1 0 1; -2 -1 0];
v = imfilter(f w ‘replicate‘);
t = 0.3*max(abs(v(:)));
v = v >= t;
imshow(v);title(sprintf(‘Sobel Edge Dectection [manual -45 t = %0.2f]‘t));
pause

%% Other methods

评论

共有 条评论