what does . and .. refer to
Show older comments
for i = 1:size(TrainFiles,1)
if not(strcmp(TrainFiles(i).name,'.')|strcmp(TrainFiles(i).name,'..')|strcmp(TrainFiles(i).name,'Thumbs.db'))
Train_Number = Train_Number + 1; % Number of all images in the training database
name{Train_Number}=TrainFiles(i).name;
end
1 Comment
Walter Roberson
on 26 Jan 2020
User completely changed the question. However, the revised question is valid in itself.
Answers (2)
Image Analyst
on 26 Jan 2020
0 votes
It's checking to make sure that the file is not the current folder (dot) or a link to the parent folder (dot dot).
3 Comments
Image Analyst
on 26 Jan 2020
Actually, since it's just building up a cell array of image files, you'd be better off doing this:
% Get a list of all PNG image files in the specified folder.
filePattern = fullfile(yourImageFolder, '*.png') % Or whatever your image extension is
fileStructure = dir(filePattern) % Get info from all PNG files into a strcuture array.
% Now extract all the names from the file structure fields into a single cell array:
allFileNames = {fileStructure.name}
Walter Roberson
on 26 Jan 2020
I would use
allFileNames = fullfile(yourImageFolder, {fileStructure.name});
Image Analyst
on 27 Jan 2020
Yes. Or you could even use imDatastore().
Steven Lord
on 26 Jan 2020
0 votes
For the operating systems on which MATLAB is supported, . refers to the current directory and .. the parent directory, as stated on this Wikipedia page.
Categories
Find more on File Operations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!