【发布时间】:2014-08-06 07:43:24
【问题描述】:
我有一个包含一些对象的二进制图像,我想获取这些对象的一些特征。
I = imread('coins.png');
B = im2bw(I, 100/255); B = imfill(B, 'holes');
RP = regionprops(B, 'Area', 'Centroid');
RP变成结构体数组:
10x1 struct array with fields:
Area
Centroid
我需要从这个结构中创建两个数组,称为Areas 和Centroids。
如何做到没有循环?
使用循环我们可以这样:
N = numel(RP);
Areas = zeros(N, 1); Centroids = zeros(N, 2);
for idx=1:N,
Areas(idx) = RP(idx).Area;
Centroids(idx, :) = RP(idx).Centroid;
end
【问题讨论】:
标签: arrays matlab loops struct