• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Matlab 二值图像label regions - 疯子123

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

Matlab 二值图像label regions


本系列文章由 @yhl_leo 出品,转载请注明出处。
文章链接: http://blog.csdn.net/yhl_leo/article/details/52862719


Matlab提供了现成的函数,可以快速实现二值图像的闭合区域标记,这里介绍三种常见情形:

  • 连通区域(connected components):如下图所示的,包含几个联通的闭合区域

方法1:bwlabel

im = imread(\'label.png\');
im_bin = im2bw(im, 0.5);
lab = bwlabel(im_bin);
imagesc(wcodemat(lab));

方法2:bwboundaries

im = imread(\'label.png\');
im_bin = im2bw(im, 0.5);
[B,L] = bwboundaries(im_bin,\'holes\');
imshow(label2rgb(L, @jet, [.5 .5 .5]));


  • 边界闭合区域(holes):如下图所示的,包含几个边界闭合的区域或称孔洞

方法1:imfill + bwlabel

im = imread(\'label2.png\');
im_bin = im2bw(im, 0.5);
fill = imfill(im_bin, \'holes\');
lab = bwlabel(fill);
imagesc(wcodemat(lab));

方法2:bwboundaries

im = imread(\'label2.png\');
im_bin = im2bw(im, 0.5);
[B,L] = bwboundaries(im_bin,\'holes\');
imshow(label2rgb(L, @jet, [.5 .5 .5]))


  • 对于孔中有其他闭合区域的情形,分别使用以下四种方法,结果分别为:
[B,L] = bwboundaries(im_bin,\'holes\');
imshow(label2rgb(L, @jet, [.5 .5 .5]))

[B,L] = bwboundaries(im_bin,\'noholes\');
imshow(label2rgb(L, @jet, [.5 .5 .5]))

fill = imfill(im_bin, \'holes\');
imagesc(wcodemat(bwlabel(fill)));

imagesc(wcodemat(bwlabel(im_bin)));


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
MatLab计算图像圆度 - 新一发布时间:2022-07-18
下一篇:
基于MATLAB静态目标分割的药板胶囊检测发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap