这是我的代码
for k = 1 : 5
im = imread(sprintf('C:\1\%d.BMP',k));
%blablalba...
end
“C:\ 1 \”
中有5个BMP文件文件分别命名为1.BMP,2.BMP,3.BMP,4.BMP和5.BMP
使用sprintf将1.BMP,2.BMP ... 5.BMP的文件分别导入imread
但是有一个错误。
错误:demo_SR(第5行)
im = imread(sprintf('C:\ 1 \%d.BMP',k));
当我从1到5得到k并写“%d”时,为什么会出现错误?
谢谢你
答案 0 :(得分:2)
尝试:
im = imread(sprintf('C:/1/%d.BMP',k));
MATLAB可能会将\
解释为转义字符的命令。
答案 1 :(得分:1)
出于@Ander Biguri的回答中提到的原因,你应该使用双反斜杠,
filename = sprintf('C:\\1\\%d.BMP',k);
或者,更强大的是让MATLAB使用fullfile插入适当的路径分隔符,
filename = fullfile('C:','1',sprintf('%d.BMP',1));