如何保存双循环的输出?

1次查看(最近30天)
努尔Bano
努尔Bano 2021年9月17日
评论道: 努尔Bano2021年9月17日
如果我有
i = 1: n
....
j = 1: m
一个= myfunction(…);
结束
结束
结果的A是图像,我想把所有的A保存在文件夹中
我试过以下,但它只存储A,只存储j
i = 1: n
....
j = 1: m
一个= myfunction(…);
结束
imwrite(A,strcat('我想存储的文件夹',num2str{j},'.png'));
结束
如何存储双循环的输出A ?

接受的答案

默罕默德·萨米
默罕默德·萨米 2021年9月17日
编辑:默罕默德·萨米 2021年9月17日
您应该使用fullfile函数来创建文件路径。你对imwrite函数的调用在外层的for循环中,因此它只会在每个外层循环中保存一次。你应该在内部循环中调用它来保存所有。另外,为了避免覆盖文件,文件名中需要同时包含i和j值。
dirtosave =“C: \ mydir \”
i = 1: n
...
j = 1: m
一个= myfunction (...);
帧= sprintf (“A_i_ % i_j_ % i.png”,我,j);
imwrite (A, fullfile (dirtosave、帧));
结束
结束

答案(1)

KSSV
KSSV 2021年9月17日
A = 0 (n,m)
i = 1: n
j = 1: m
一个= myfunction (...);%假设函数的输出是1x1
结束
结束
imwrite (A, strcat ("我想存放的文件夹", num2str {j},“使用”));

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!