what does . and .. refer to

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 Kommentar

Walter Roberson
Walter Roberson am 26 Jan. 2020
User completely changed the question. However, the revised question is valid in itself.

Melden Sie sich an, um zu kommentieren.

Antworten (2)

Image Analyst
Image Analyst am 26 Jan. 2020

0 Stimmen

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 Kommentare

Image Analyst
Image Analyst am 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}
I would use
allFileNames = fullfile(yourImageFolder, {fileStructure.name});
Image Analyst
Image Analyst am 27 Jan. 2020
Yes. Or you could even use imDatastore().

Melden Sie sich an, um zu kommentieren.

Steven Lord
Steven Lord am 26 Jan. 2020

0 Stimmen

For the operating systems on which MATLAB is supported, . refers to the current directory and .. the parent directory, as stated on this Wikipedia page.

Kategorien

Tags

Gefragt:

am 26 Jan. 2020

Kommentiert:

am 27 Jan. 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by