matlab中可用于进行轮廓提取的函数

本文介绍了在MATLAB中进行轮廓提取的两种方法,包括使用bwperim()函数和edge()函数。bwperim用于获取二值图像的轮廓,而edge则支持多种算子如Canny进行边界检测。
摘要由CSDN通过智能技术生成

本文主要总结一下在matlab中可用于进行轮廓提取的函数。

1 bwperim

    根据参考资料[2]的提示,可以使用bwperim()函数进行轮廓提取,具体代码如下:

%读取原图
im = imread( filepath );
imshow(im);
title('原图');

% 转二值图像
bw = im2bw( im );

%轮廓提取
contour = bwperim(bw);
figure
imshow(contour);
title('轮廓')
    原图和所提取的轮廓分别如图1和图2所示。


                   图1 原图


                    图2 轮廓

2 edge

    可以借助edge()函数进行边界检测,算子可以选择canny,soble等等。具体代码如下:

%读取原图
im = imread( filepath );
imshow(im);
title('原图');

% 转二值图像
bw = im2bw( im );
% 边界检测
contour = edge(bw ,'canny');
figure
imshow(contour);
title('边界')
    对图1的检测效果如图3所示:

                       图3 edge检测结果

 

参考资料<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值