%% 例10.3 edge 边缘检测 sobel
clc,close all
clear
f = imread('C:\Users\Administrator\Desktop\psb (2).jpg');
figure,imshow(f)
title('原始图像')
f=im2bw(f,0.45);
figure,imshow(f)
title('二值图像')
% d=imcomplement(f);
% figure,imshow(d);
% title('取反图像')
f=imclearborder(f,8);
figure,imshow(f);
title('清除边界图像')
[gv11,tvertical] = edge(f,'sobel','vertical');
figure,imshow(gv11)
tvertical
title('使用带有自动确定的阈值的一个垂直[sobel]掩模后,函数[edge]导致的结果')
[gv12,thorizontal] = edge(f,'sobel','horizontal');
figure,imshow(gv12)
thorizontal
title('使用带有自动确定的阈值的一个水平[sobel]掩模后,函数[edge]导致的结果')
[gboth,tboth] = edge(f,'sobel');
tboth
figure,imshow(gboth)
title('使用自动阈值的一个同时考虑水平垂直[sobel]掩模后,函数[edge]导致的结果')
w45 = [-2 -1 0; -1 0 1; 0 1 2];
g45 = imfilter(double(f),w45,'replicate');
T = 0.3*max(abs(g45(:)));
g45 = g45>=T;
figure,imshow(g45)
title('使用函数[imfilter](具有指定的掩模和阈值)计算[45度]边缘的结果')
w_45 = [0 1 2; -1 0 1; -2 -1 0];
g_45 = imfilter(double(f),w_45,'replicat
【matlab图像处理】图片生成手绘效果
最新推荐文章于 2024-03-19 16:22:20 发布