第六章 图像分割
实例:使用边缘检测算子实现图像分割
clc;
clear;
%读入图像
A1 = imread('shape.jpg');
figure,
subplot(2,2,1),imshow(A1),title('原图像');
%使用Sobel算子进行边缘检测
%‘both’指定首选梯度方向为水平和竖直方向
%‘horizontal’指定首选梯度方向为水平方向
%‘vertical’指定首选梯度方为竖直方向
%不指定阈值时算法自动设定阈值,阈值使用t11获取
%g11中保存的是结果图像
%若要指定阈值,阈值写在'sobel'和'both'之间
[g11, t11] = edge(A1, 'sobel', 'both');
subplot(2,2,2),imshow(g11),title('Sobel边缘检测');
%使用Prewitt算子进行边缘检测
[g12, t12] = edge(A1, 'prewitt', 'both');
subplot(2,2,3),imshow(g12),title('Prewitt边缘检测');
%使用Canny算子进行边缘检测
[g13, t13] = edge(A1, 'canny', 'both');
subplot(2,2,4),imshow(g13),title('Canny边缘检测');
%处理图像lena.jpg
A2 = imread('l