matlab中边界跟踪法,MATLAB中的边界跟踪实现

具体来介绍一下关于边界跟踪的实现方法:

在识别图象中的目标时,往往需要对目标边缘作跟踪处理,也叫轮廓跟踪。顾名思义,轮廓跟踪就是通过顺序找出边缘点来跟踪边界的。若图象是二值图象或图象中不同区域具有不同的象素值,但每个区域内的象素值是相同的,则如下算法可完成基于4连通或8连通区域的轮廓跟踪。

1、首先打开MATLAB软件,在其主界面中写入下列代码:

I=imread('G:\MATLAB\bm.bmp');    %读取当前路径下的图片

figure

imshow(I);

title('原始图像');

I1=rgb2gray(I);                %将彩色图像转化灰度图像

threshold=graythresh(I1);        %计算将灰度图像转化为二值图像所需的门限

BW=im2bw(I1, threshold);       %将灰度图像转化为二值图像

figure

imshow(BW);

title('二值图像');

dim=size(BW);

col=round(dim(2)/2)-90;         %计算起始点列坐标

row=find(BW(:,col),1);          %计算起始点行坐标

connectivity=8;

num_points=180;

contour=bwtraceboundary(BW,[row,col],'N',connectivity,num_points);

%提取边界

figure

imshow(I1);

hold on;

plot(contour(:,2),contour(:,1), 'g','LineWidth' ,2);

title('边界跟踪图像');

2、命名保存好,直接运行得出下列结果:

a8e2e4c836b427abf06ded4e8141dd74.png

18c736506a1a370217bd098d80a618ce.png

020d5bd42d7dd821ca5d24025f9a6a0c.png

到此为止,边界跟踪的介绍基本完毕,请大家继续关注!!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值