0

我使用以下代码将多个 (64) 图像放入 MAT 文件中:

D = dir('*.wav');

wavcell = cell(1,numel(D));

for i = 1:numel(D)

  wavcell{i} = wavread(D(i).name);

end

但是,我现在无法从这个 MAT 文件中的任何矩阵中检索图像。它包含一个 64x1 结构数组 ( D)、一个 1x64 元胞数组 ( imcell) 和一个包含一个数字的数组 (64) ( i)。

我需要能够访问单元阵列中的单个图像以用于 psychtoolbox 实验。

任何帮助将不胜感激!

4

1 回答 1

0

我看到的第一个问题:您正在加载 WAV 文件,它们是音频文件,而不是图像文件。您应该首先尝试纠正这种情况。

一旦您确定您正在加载正确类型的数据(即图像),您可以使用LOAD命令以多种方式从您创建的 MAT 文件中取回数据:

load('your_file.mat');           %# Loads all the variables in the file
%# OR
load('your_file.mat','imcell');  %# Loads just the variable imcell

现在,您将在本地工作空间中有一个名为的变量,该变量imcell将是图像数据的元胞数组。要索引元胞数组的内容,您可以使用大括号{},如下所示:

image1 = imcell{1};  %# Place the contents of the first cell into image1
于 2011-05-05T16:12:21.427 回答