1

我正在使用 MatLab 中的以下代码从文件夹中读取图像

[folder1] = uigetdir();
f=dir(folder1);

for k=1:size(f,1)-2
    new_file=f(k+2).name;
end
[idx,idx]=sort(cellfun(@(x) str2num(char(regexp(x,'\d*','match'))),new_file));
filename1=new_file(idx);

此代码适用于名称为“test_base1”、“test_base2”、...的文件夹中的图像。

我正面临这个表达式的不同输入的错误。

For file = {'test_30min1','test_30min10','test_30min2'};

它给出如下错误

??? Error using ==> cellfun
Non-scalar in Uniform output, at index 1, output 1.
Set 'UniformOutput' to false.

regexp(x,'\w*','match')我在这个表达式中尝试了给予和许多其他组合。我无法得到解决方案。我可以知道这是什么解决方案吗?

4

0 回答 0