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
https://matlabhelpers.com/questions/how-to-load-files-in-numerical-order-.php
Comments
Post a Comment