如何列出具有特定前缀名称的mat文件?

时间:2017-07-19 11:31:09

标签: matlab image-processing matlab-guide

我有一个图像文件夹保存为.mat文件文件,其名称如下:

image-001-001.mat,image-001-002.mat,......., image-001-102.mat, image-002-001.mat,image-002-002.mat, ....,image-002-090.mat, etc.

我想为每个前缀分组文件名。例如,列出以image-001-前缀开头的所有文件,并列出文件夹中所有文件的image-002-等所有图像。我需要分别对每组的图像进行处理。

有人可以提供一些提示我该怎么做? 提前致谢

2 个答案:

答案 0 :(得分:1)

请参阅documentation for dir,特别是提及通配符

您可以使用

获取以.mat开头的image-001个文件列表
files_001 = dir('C:\myfolder\image-001*.mat');
% or if it's in the current directory then simply
% files_001 = dir('image-001*.mat'); 

要循环遍历多个前缀,您可以使用

prefixes = {'image-001', 'image-002', 'image-003'};
files = cell(numel(prefixes), 1);
for p = 1:numel(prefixes)
    files{p} = dir([prefixes{p}, '*.mat']);
end

除了:

如果您的前缀确实类似/有序,那么有很多方法(例如使用strcat)来快速制作前缀单元格数组。

答案 1 :(得分:-1)

你可以选择以image-001-xxx.mat开头的所有图像,如下所示:

files1 = dir('image-001*') ;