在使用matlab处理很多图片的时候,将路径和名称分开来写,运行的过程中会有问题,如下:
Error using imread (line 347)
Cannot open file "F:\ARNavi video data\frames\raw\" for reading. You might not have read permission.
说是权限问题,这个问题主要是因为将路径和名称分开写了,因为名称需要用来做循环,必须是一个变量才是,所以导致出错了,原来错误代码为:
clear;
directory = 'F:\video data\frames\raw\';
for i = 1:1000
first = imread(directory, int2str(i), '.bmp');
imshow(first);
end
使用dir命令可以完美解决这个问题,代码如下:
clear;
srcFiles = dir('F:\video data\frames\raw\*.bmp');
for i = 1:length(srcFiles)
fileName_1 = strcat('F:\video data\frames\raw\', srcFiles(i).name);
first = imread(fileName_1);
imshow(first);
end
具体为什么会出现这个原因,不清楚,可能是matlab自身的缺陷,自身并不支持这样去做。