【发布时间】:2014-04-17 18:55:00
【问题描述】:
我正在关注这个tutorial
目标是能够吐出: 一种。每个标记对象的中心 湾。与每个标记对象关联的所有像素
在某种程度上,我有一个“a”数组。对于每个对象,或“b”。每个对象
我真的不知道该怎么做。是否有 matlabl 工具来帮助提取这些像素或中心集 - 每个标签?
更新
我确实设法使用reigionprops 圈出了我想要的 80%,但是它不能精确捕捉标签,只是在捕捉背景的同时围绕它们设置一个圆圈,是吗真的无法避免吗?我只是不确定如何访问每个圆圈项目的像素集。
r=regionprops(L, 'All'); imshow(imagergb); areas={r.Area}; Bboxes={r.BoundingBox};
for k=2:numel(r)
if areas{k}>50 && areas{k} < 1100
rectangle('Position',Bboxes{k}, 'LineWidth',1, 'EdgeColor','b', 'Curvature', [1 1]);
end
end
所以我想要做的是例如。
我认为可能只是
r = regionprops(L, 'PixelIdxList')
然后
element1 = r(1).PixelIdxList
但不知道如何获取每个像素的位置
我也试过了
Z= bwlabel(L);
但是 imshow(Z==1) 吐出所有标签,而 imshow(Z==2) 吐出背景、所有标签和背景。无法测试 bwlabeln 因为我不确定为 r 和 c 参数输入什么。
【问题讨论】:
-
'这真的是不可避免的' 不,这段代码是为这个答案中的特定目的而编写的:stackoverflow.com/a/22813577/2777181 您可以使用
regionprops的输出做很多其他事情。