【发布时间】:2020-04-26 09:31:06
【问题描述】:
有一个2550*720维度的矩阵。这个矩阵的每一行通过小波变换变成一个图像。问题是matlab中的“保存”命令,将所有2550张图像一起存储在一张图像中。问题是如何索引“保存”命令以分别存储这些图像? 谢谢你
clc;
clear;
close all;
load P300
load nP300
t = 1:100;
waveletname = 'db1';
P300_cwavelet=[];
ext = '.txt';
for i = 1 : size(P300,1)
y = cwt(P300(i,:),t,waveletname);
P300_cwavelet = [P300_cwavelet;y];
save('P300_cwavelet','P300_cwavelet');
end
【问题讨论】:
-
你想保存
y,对吧? -
如果你想将 y 的每个切片保存在单独的文件中,你可以使用
save(sprintf('y%d',i),'y')。这会将每个 y 保存到一个名为y1.mat、y2.mat... 的文件中。您可以将save('P300_cwavelet','P300_cwavelet')行移到 for 循环之外,这会将连接的P300_cwavelet保存到单个文件中. -
事先对变量进行切片(将其分配给新名称)。 MATLAB 使用 延迟复制,即它只指向新变量而不使用额外的内存,直到您实际更改新变量的值
标签: matlab indexing save wavelet