试图读取多图像在matlab中循环,所以错误的阵列指数必须是正整数或逻辑值出现
for i=1:12 % we have 16 images we have in or folder
clc;clear;
images ='/home/mohamed/Downloads/Lab6-20200415/Lab6-20200421/Lab6/Lab6/';
jpgfiles=dir(fullfile(images,'\*.jpg*'));
n=numel(jpgfiles(i));
im=jpgfiles(i).name;
im1=imread(fullfile(images,im));
d1 = rg2gray(iml);
imshow(im1);
end
这里有一个最小的例子来证明你的问题。
for i=1:10
clear
jpgfiles=rand(10,1); %some dummy data to replace your actual code
jpgfiles(i);
end
清除删除变量 i
也就是说 i
是虚单位,不是有效的索引。避免使用变量名 i
这导致了难以调试的问题。如果使用其他的变量名,更清晰的错误信息应该是。
Unrecognized function or variable 'ix'.
Error in foo (line 4)
jpgfiles(ix);