matlab 图像处理之边缘提取

一、 功能

适用:图像的边缘检测

二、 算法思路

对图像进行预处理,转成灰度图、灰度图转成二值图、然后进行膨胀操作,最后进行边缘检测。

三、 matlab代码

代码示例:


% 1 读取文件
I=imread('tu.jpg');
figure(1),imshow(I)
title('原图像');

% 2 rgb图转灰度图
if length(size(I))==3                        
    I=rgb2gray(I);
end     

 % 3 灰度图转二值图
I=im2bw(I,0.4);                             
figure(2),imshow(I)
title('二值图');

% 4 图像膨胀处理
B=[0 1 0;1 1 1;0 1 0];                      
I=imdilate(I,B);
figure(3),imshow(I);
title('膨胀');

% 5 边缘检测(亚像素点提取)
I=edge(I,'canny',0.9);             

版权声明:本文为weixin_43896283原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。