我在我的电脑上的图像文件夹中有bmp图像。我将它从1.bmp
命名为100.bmp
。从MATLAB中的文件读取图像
我想读这些图像是这样的:
for i=1:100
s='C:\images'+i+'.bmp';
A=imread(s);
end
但Matlab的给了一个错误。我怎样才能实现这个?
我在我的电脑上的图像文件夹中有bmp图像。我将它从1.bmp
命名为100.bmp
。从MATLAB中的文件读取图像
我想读这些图像是这样的:
for i=1:100
s='C:\images'+i+'.bmp';
A=imread(s);
end
但Matlab的给了一个错误。我怎样才能实现这个?
让我猜。您没有名为C:\images1.bmp
的文件。哦,那不是你得到的错误,但是一旦你按照ypnos's advice,它将成为下一个错误。
: - ) – 2009-07-21 13:24:39
对额外错误的好评,但ypnos的答案实际上不起作用。 ;) – gnovice 2009-07-21 14:03:22
@gnovice:错误消息将是相同的;) – SilentGhost 2009-07-21 14:07:11
通过以下方式创建s
:
s = ['C:\images\' int2str(i) '.bmp'];
此外,你的循环会简单保持覆盖A
,所以你将不得不使它成为cell array来存储全部100个ima水电站。这样做你的外循环:
A = cell(1,100);
,然后加载图片的循环,像这样:
A{i} = imread(s);
imgfiles=dir('c:\images\*.*');
for k=1:length(imgfiles)
...
end
您的文件夹添加到MATLAB的目录路径和运行下面的命令。
files=dir('*.bmp') for k=1:numel(files) I=imread(files(k).name); end
我使用这些命令来读取图像文件。
> for i=1:100
> s=strcat('C:\images',num2str(i),'.bmp');
> try
> A=imread(s);
> catch
> end
> end
这里我使用的是用于数字的数据类型转换为字符串num2str,我使用拉升aviod错误,因为如果文件不存在那么它将aviod这个错误。
yalcin,停止它。这是一个初学者的问题,应该相应标记。在提问或回答初学者的问题上毫不羞愧。 – SilentGhost 2009-07-21 14:48:13