资源简介
可以完成图像目标的边界自动跟踪,基于四邻域规则和八邻域的规则。有对应的实验图片,matlab代码
代码片段和文件信息
f=imread(‘circuit.tif‘);
subplot(221);imshow(f);title(‘原图像‘)
seedx=[307686];
seedy=[11028110];
%选择了3个种子点
hold on
plot(seedxseedy‘gs‘‘linewidth‘1);
title(‘原始图像及种子点位置‘);
f=double(f);
markerim=f==f(seedy(1)seedx(1));
for i=2:length(seedx)
markerim=markerim|(f==f(seedy(i)seedx(i)));
end
thresh=[12612];
%3个种子点的阈值
maskim=zeros(size(f));
for i=1:length(seedx)
g=abs(f-f(seedy(i)seedx(i)))<=thresh(i);
maskim=maskim|g;
end
[gnr]=bwlabel(imreconstruct(markerimmaskim)8);
g=mat2gray(g);
subplot(222);imshow(g);title(‘三个种子生长结果图像‘)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 617 2008-10-15 13:28 test1\areagrow.asv
文件 614 2008-10-15 13:35 test1\areagrow.m
文件 17464 2008-05-19 01:43 test1\Arrow.bmp
文件 17462 2008-08-15 17:39 test1\Arrowgaussian0.02.bmp
文件 17462 2008-08-15 17:33 test1\Arrowsalt0.02.bmp
文件 8382 2008-09-05 15:24 test1\border.bmp
文件 8522 2009-03-13 17:00 test1\border2.bmp
文件 1579 2008-09-05 15:26 test1\boundary_trace.asv
文件 1599 2008-09-05 15:27 test1\boundary_trace.m
文件 1652 2008-09-09 16:49 test1\boundary_trace2.asv
文件 1649 2008-09-09 17:21 test1\boundary_trace2.m
文件 62178 2008-09-09 16:31 test1\ellipse.bmp
文件 148 2008-09-05 14:56 test1\track1.asv
文件 171 2008-09-05 14:59 test1\track1.m
文件 374 2008-09-09 16:29 test1\track2.asv
文件 378 2008-09-09 16:32 test1\track2.m
..AD... 0 2009-03-13 16:57 test1
----------- --------- ---------- ----- ----
140251 17
- 上一篇:小波软阈值图像去噪
- 下一篇:UKF无迹卡尔曼滤波算法matlab代码
评论
共有 条评论