2

我正在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

我的文件夹中的所有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,...

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

4

1 回答 1

5

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

保存时考虑使用填充。

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

如果您无法更改文件名,则必须编写自己的排序函数。

于 2013-06-20T08:11:45.503 回答