我试图生成一组关于一组图像的信息,所以我创建了一个结构数组,如下所示,
resultsInfo = struct('img_index',0,'correlated',cell(1,5),'correlationFactor',zeros(1,5),'ImgSum',zeros(640,480));
其中:img_index
是表示图像的整数,correlated
是包含相关图像名称的单元格,correlationFactor
是表示图像相似程度的数字,而imgSum
是相关图像的总和。
我想在for循环中以动态方式创建数组,但代码只生成每个元素的第五个imageSums
。
如何启动结构以使用零矩阵填充数组的所有元素?
答案 0 :(得分:0)
请定义以下方法:
function resultStruct = CreateEmptySruct ()
resultStruct.img_index = 0 ;
resultStruct.correlated = cell(1,5);
resultStruct.correlationFactor = zeros(1,5);
resultStruct.ImgSum = zeros(640,480) ;
end
然后在For循环中调用此方法,如下所示:
for i = 1 :5
structArray(i) = CreateEmptySruct () ;
end
但是,您也可以通过传递函数参数来单独为每个结构设置任何值。