gpt4 book ai didi

windows - Matlab中从一个文件夹中读取多个图像的问题

转载 作者:可可西里 更新时间:2023-11-01 09:33:29 24 4
gpt4 key购买 nike

我在一个文件夹中有一组图像,我正在尝试读取这些图像并将它们的名称存储在文本文件中。图片的顺序非常重要。

我的代码如下:

imagefiles = dir('*jpg');
nfiles = length(imagefiles); % Number of files found
%*******************
for ii=1:nfiles
currentfilename = imagefiles(ii).name;
% write the name in txt file
end

图像按以下顺序存储在文件夹中:{1,2,3,4,100,110}

Matlab读写图像序列为{1,100,110,2,3,4}的问题。这不是正确的顺序。

如何克服这个问题?

最佳答案

我建议使用scanf 来查找文件的编号。为此,您必须创建一个格式规范来显示您的文件名是如何构建的。如果它是一个数字,后跟 .jpg,则为:'%d.jpg'。您可以调用sscanf使用 cellfun 在文件的 name 上(扫描字符串):

imagefiles = dir('*jpg');
fileNo = cellfun(@(x)sscanf(x,'%d.jpg'),{imagefiles(:).name});

然后对 fileNo 进行排序,保存排序数组的索引并在 for 循环中遍历这些索引:

[~,ind] = sort(fileNo);
for ii=ind
currentfilename = imagefiles(ii).name;
% write the name in txt file
end

关于windows - Matlab中从一个文件夹中读取多个图像的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30479446/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com