MATLAB Answers

0

i am getting an error "Matrix index is out of range for deletion"

Asked by Shan Sha on 28 Feb 2019
Latest activity Commented on by KSSV
on 28 Feb 2019
Accepted Answer by KSSV
I am getting an error
Matrix index is out of range for deletion.
Error in dir_bo (line 6)
imname(1:2) = [];
Error in get_im_label (line 6)
subdir = dir_bo(imdir);
Error in curet (line 18)
imageDatasetLabel = get_im_label(imdir);
my code is
addpath('./helpfun');
imdir = './CURET/';
savedir = ['./_features/CURET']; % save features
mkdir_bo(savedir);
datadir = 'results'; % save classification accuracy
mkdir_bo(datadir);
%% feature extraction
sigmaSet = [1 2 4];
F = makeGDfilters(sigmaSet);
snr = 0; % here "0" only denotes "No noise"
K = 2;
C = 1;
Ls = 3;
Lr = 5;
imageDatasetLabel = get_im_label(imdir);
imageDatasetFeatPath = get_feature_path(savedir);
Help me to solve this error. Thanks in advance

  0 Comments

Sign in to comment.

Tags

1 Answer

Answer by KSSV
on 28 Feb 2019
Edited by KSSV
on 28 Feb 2019
 Accepted Answer

Check the dimensions of imname.....it doesnt have the elements which you expect to delete. So the error.
A = rand(10,1) ;
A(1) = [] % no error
A(11) = [] % error, because A has no 11th element

  4 Comments

Show 1 older comment
Run the code in debug mode....learn about how to debug the code.
the dimension of imname is 0x1 struct
Yes....that's why error.......as the struct is empty and you are trying to delete (1:2), you get error. Check the paths which you have given....are the paths correct.

Sign in to comment.