Arrays 在MATLAB中创建变长数组列表
我想用regionprops处理图像列表,并将结果保存到数组或某种列表中 我的问题是regionprops返回一个可变大小的结构。在我的例子中是这样的:Arrays 在MATLAB中创建变长数组列表,arrays,matlab,struct,cell-array,Arrays,Matlab,Struct,Cell Array,我想用regionprops处理图像列表,并将结果保存到数组或某种列表中 我的问题是regionprops返回一个可变大小的结构。在我的例子中是这样的: stats = regionprops(L,'Centroid'); 2x1 struct array with fields: Centroid 结构的大小取决于不同的图像 如何创建包含所有结构的对象?我需要使用单元阵列吗 我尝试了以下方法: mycell = struct2cell(stats); centers(i,:) =
stats = regionprops(L,'Centroid');
2x1 struct array with fields:
Centroid
结构的大小取决于不同的图像
如何创建包含所有结构的对象?我需要使用单元阵列吗
我尝试了以下方法:
mycell = struct2cell(stats);
centers(i,:) = mycell;
但它只在我的细胞阵列大小相同时才起作用。这里的情况并非如此,因为检测到的对象的数量随着帧的变化而变化
如何在容器中存储可变长度结构或单元格数组
我应该使用什么,单元格数组的结构?只需将每个结构数组的统计信息放在自己的单元格中即可。例如:
>> 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]
只需将每个结构数组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]
但是我如何通过循环中的算法来做[{stats1}{stats2}”?我想为I=1:sizeimages做一些类似的事情。。。。allstats{i}=stats或类似的东西?你明白了!祝项目顺利!但是我如何通过循环中的算法来做[{stats1}{stats2}”?我想为I=1:sizeimages做一些类似的事情。。。。allstats{i}=stats或类似的东西?你明白了!祝项目顺利!