Matlab:从文件夹中读取图像不会按顺序返回文件名

时间:2013-06-20 08:08:21

标签: image matlab io readfile

我正在从文件夹中读取jpg个文件。我的代码如下:

inputImg= dir('C:\Documents and Settings\Administrator\Desktop\TestImages\*.jpg');
inputDir = 'C:\Documents and Settings\Administrator\Desktop\TestImages\';
inputN = {inputImg.name};

for i = 1:numel(dstNFiles)

    dstFileName = dstImageFiles(i).name;
    dstName = strcat(dstDir,dstFileName);
    image = imread(dstName);
    %% do some work here
end

我的forlder中的所有jpg张图片都以"01.jpg, 02.jpg,...200.jpg"的方式有序命名。但我发现它不是按顺序读取这些文件。我试图打印dstFileName,它提供了完全随机的有序文件名,如:

01.jpg, 02.jpg, 03.jpg, 04.jpg,05.jpg,06.jpg,07.jpg,08.jpg,09.jpg,10.jpg,100.jpg,101.jpg,11.jpg, ... 199.jpg,200.jpg, 24.jpg,25.jpg,...

我怎么能解决这个问题?谢谢。

1 个答案:

答案 0 :(得分:5)

文件列表的字母顺序正确!

保存时考虑使用填充。

IE中。将10.jpg保存为0010.jpg

如果您无法更改文件名,则必须编写自己的订购功能。