How to load files in numerical order?
Hello everyone,
I am loading multiple dicom files from the same folder using the following code:
imagesFolder = uigetdir('C:\','Select your folder with DICOM files');
filePattern = fullfile(imagesFolder, '*.dcm');
theFiles = dir(filePattern);
for k = 1 : length(theFiles)
baseFileName = theFiles(k).name;
fullFileName = fullfile(imagesFolder, baseFileName);
fprintf(1, 'Now reading %s\n', fullFileName);
imageArray = dicomread(fullFileName);
end
The problem is that I have my files numbered as follows: name1, name 2, …, name10, name11, …, name100, name101, etc. And when I load the files they are inserted in the 3D variable (in this case imageArray) with the following order: name1, name10, name100, name101, …, name109, name11, name110, name111, etc.
In my windows folder I see the files ordered. How can I load the files in order?
Answer:
It has plenty of examples and help, so you should not have any problems using it. E.g.:
P = uigetdir('C:\','Select your folder with DICOM files');
S = dir(fullfile(P,'*.dcm'));
S = natsortfiles(S); % sort filenames into alphanumeric order
for k = 1:numel(S)
baseFileName = S(k).name;
fullFileName = fullfile(P, baseFileName);
fprintf(1, 'Now reading %s\n', fullFileName);
imageArray = dicomread(fullFileName);
end
for other assignment help please visit this site:
SEE COMPLETE ANSWER CLICK THE LINK