MATLAB: I am getting error in the following code

image processing

Code:
function resize()
prompt = 'What dataset u want to choose? - (enter corel10k OR corel5k OR wang) ';
str = input(prompt,'s');
FileList = dir(fullfile(str,'*.jpg'));
F = natsortfiles({FileList.name});
Result = cell(1, numel(F));
for iFile = 1:numel(F)
File = fullfile(str, F(iFile));
Img = imread(cell2mat(File));
J = imresize(Img, [256 256]);
filename2=sprintf('samesize/myimage%02d.jpg',iFile);
imwrite(J,filename2);
end
end
Error:
Cell contents indices must be greater than 0
Error in natsortfiles (line 135)
vec{numel(len)} = [];
Error in resize (line 5)
F = natsortfiles({FileList.name});

Best Answer

Suppose that there are no *.jpg files in the subdirectory of the current directory that the user names in response to input(). Then the dir() would return empty and {FileList.name} would be an empty cell, and natsortfiles does not expect that.