我有一些包含某些对象的二进制图像,我希望得到这些对象的一些特征。
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
我需要从这个结构中创建2个名为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
答案 0 :(得分:4)
你可以简单地连接
Areas = [RP.Area];
Centroids = vertcat( RP.Centroid );