如何从 MAT 文件中的元胞数组检索图像?

发布于 2024-11-04 22:18:41 字数 387 浏览 0 评论 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 实验中使用。

任何帮助将不胜感激!

I have used the following code to get multiple (64) images into a MAT-file:

D = dir('*.wav');

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

for i = 1:numel(D)

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

end

However, I now can't retrieve the images from any of the matrices I have in this MAT-file. It contains a 64x1 structure array (D), a 1x64 cell array (imcell) and an array with one number in it (64) (i).

I need to be able to access individual images in the cell array for use in a psychtoolbox experiment.

Any help would be GRATEFULLY received!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

甜尕妞 2024-11-11 22:18:41

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

一旦您确定加载了正确类型的数据(即图像),您就可以通过 LOAD 命令:

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

The first problem I'm seeing: you're loading WAV files, which are audio files, not image files. You should first try to remedy this situation.

Once you're sure that you're loading the right type of data (i.e. images), you can get the data back out of the MAT-file you create in a number of ways with the LOAD command:

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

Now you will have a variable in the local workspace called imcell which will be a cell array of image data. To index the contents of the cell array, you would use curly braces {} like so:

image1 = imcell{1};  %# Place the contents of the first cell into image1
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文