2

我想处理图像列表regionprops并将结果保存到数组或某种列表中。

我的问题是regionprops返回一个可变大小的结构。在我的情况下看起来像这样:

stats = regionprops(L,'Centroid');

2x1 struct array with fields:
    Centroid

结构的大小取决于图像。

如何创建一个包含所有结构的对象?我需要使用元胞数组吗?

我尝试了以下方法:

mycell = struct2cell(stats);
centers(i,:) = mycell;

但它只适用于我的单元阵列具有相同的大小。这里不是这种情况,因为检测到的对象的数量会随着帧的变化而变化

如何在容器中存储可变长度结构或元胞数组?

我应该使用什么,单元数组的结构?

4

1 回答 1

0

只需将每个结构数组stats放在自己的单元格中即可。例如:

>> stats1(3).test = 1

stats1 = 

1x3 struct array with fields:
    test

>> stats2(2).test = 1

stats2 = 

1x2 struct array with fields:
    test

>> [{stats1} {stats2}]

ans = 

    [1x3 struct]    [1x2 struct]
于 2011-11-02T15:59:36.367 回答