Must be a string scalar or character vector.

3 views (last 30 days)
What's wrong with this?
for indx=1:15 %automatically crop them, and create new cropped dicom images.
A = dicomread(strcat( 'D:\stelios phd files\DesMoines\' , int2str(indx),'.dcm'));
A=double(A)
end
loaded = load(A);
Error at last line "loaded = load(A);"

Accepted Answer

Rik
Rik on 7 May 2018
You already read the dicom file to variable A, and then converted that to a double. Each loop iteration you are overwriting this result. After the loop you try to use this array as if it is a file name.
It is not clear what your goal is, but you probably want to index that variable A, and you need to read the doc for load and decide what you want to do.
  4 Comments
Rik
Rik on 7 May 2018
I can't debug code I can't see. As for your loop, what you need to write depends on your goal. The code below should work at least.
A=cell(1,15);
for indx=1:15 %automatically crop them, and create new cropped dicom images.
A{indx} = dicomread(strcat( 'D:\stelios phd files\DesMoines\' , int2str(indx),'.dcm'));
A{indx}=double(A{indx})
end
Stelios Fanourakis
Stelios Fanourakis on 7 May 2018
Edited: Stelios Fanourakis on 7 May 2018
Thanks for the help. It was a silly error I did. It was too obvious and I couldn't see it

Sign in to comment.

More Answers (0)

Categories

Find more on Convert Image Type 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!