i have 186 brain mri 2d slices (256*215) i want to stack them into 3d array (256*215*186) ?

4 views (last 30 days)
my code has an error at this line image(:,:,slice) = thisSlice; dimension mismatch help me to solve this problem
numberOfSlices=186;
image = zeros(256,215, numberOfSlices);
for slice = 1 : numberOfSlices
files = dir('C:\Users\MuhammadFaisal\Desktop\finalimage(117-1) output/*.png');
dir_name='finalimage(117-1) output/output_slice_';
fullFileName = fullfile('C:\Users\MuhammadFaisal\Desktop\finalimage(117-1) output',num2str(slice),'.png');
thisSlice = double(imread(strcat(dir_name,num2str(slice),'.png')))/255;
image(:,:,slice) = thisSlice;
end
  3 Comments
neenu prakash
neenu prakash on 24 Jan 2017
I do have the same error. I am doing my thesis as 3D reconstruction of MRI images. Can you help me? Thank you.

Sign in to comment.

Answers (1)

James Tursa
James Tursa on 22 Nov 2016
Type the following at the command line:
dbstop if error
Then run your code. When the error is encountered the code will pause in the debugger with all current workspace variable values intact. Then do this to see what you really have:
size(thisSlice)

Community Treasure Hunt

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

Start Hunting!