使用通配符 MatLab 读取单个图像文件

Nag*_*S N 2 matlab wildcard filepath imread

我在一个文件夹中有一堆图像,它们被编入索引。例如:

01_Cat.jpg 
02_Dog.jpg 
Run Code Online (Sandbox Code Playgroud)

等等。现在,我想读取图像,但不想给出完整的图像名称。是否可以使用如下所示的通配符读取图像

A = imread('01_*.jpg');
B = imread('02_*.jpg');
Run Code Online (Sandbox Code Playgroud)

这是行不通的。MatLab*从字面上理解。

Unb*_*ess 6

我相信 中不支持使用通配符imread,但是您可以使用以下dir函数解决它:

A = imread(getfield(dir('01_*.jpg'),'name'));
B = imread(getfield(dir('02_*.jpg'),'name'));
Run Code Online (Sandbox Code Playgroud)

  • 是的,这是另一种选择,尽管它应该是`dir('*.jpg')`而不是`dir('.jpg')`。我只是想向 OP 展示他如何使用他的语法来实现所需的输出。 (2认同)