我使用以下代码将多个(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
)。
我需要能够访问单元数组中的单个图像,以便在心理工具箱实验中使用。
任何帮助都将感激不尽!!
我看到的第一个问题:你正在加载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