操作存储在元胞数组中的矩阵——Matlab

Posted

技术标签:

【中文标题】操作存储在元胞数组中的矩阵——Matlab【英文标题】:Manipulating a Matrix Stored Within Cell Array -- Matlab 【发布时间】:2017-08-24 18:17:17 【问题描述】:

我有一个名为“输出”的元胞数组(维度 = 3 x 6)。此元胞数组第一行中的每个元胞都有 1024 x 1024 矩阵(双精度类型)的条目。我想在每个矩阵中取给定 ROI 的平均值。例如,我希望 Matlab 为每个矩阵生成区域的平均值 ([100:200],[100:200]) 并保存到 excel 或 .txt。

我不确定如何进行编码。请帮忙!

谢谢:)

【问题讨论】:

【参考方案1】:

您可以使用cellfun 在第一行中的每个单元格的 ROI 上计算 mean,如下所示:

meanValues = cellfun(@(m) mean(mean(m(100:200, 100:200))), output(1, :));

然后您可以使用xlswrite(Excel 文件)、csvwrite(逗号分隔的文本文件)或dlmwrite(分隔符分隔的文本文件)将其保存到文件中。

【讨论】:

太棒了。感谢您的帮助! @itend 如果这对你有用,请接受答案,让其他人知道:) ***.com/help/someone-answers 会的。我是这个平台的新手 :)

以上是关于操作存储在元胞数组中的矩阵——Matlab的主要内容,如果未能解决你的问题,请参考以下文章

请问如何使用MATLAB进行元胞数组批量提取数据。

matlab中如何寻找字符串在元胞数组中的位置?

MATLAB的cell数组

如何使用MATLAB进行元胞数组批量提取数据?

Matlab 中的数据存储和导出

matlab中的矩阵怎么定义