How to write each slices from volume in MATLAB into jpg format?

2 views (last 30 days)
Hello dear may you please help for solving a problem: I have 3D Volume dataset in .niit format I read this data in MATLAB and also can show each slice from this volume....but I'm unable to write each slice in jpg /2D form How we can write each slice from volume by using imwrite in MATLAB?

Accepted Answer

Image Analyst
Image Analyst on 24 Mar 2018
Edited: Image Analyst on 22 Jun 2020
You probably don't want to do that anyway, unless you use lossless jpeg2000 format. Use PNG for lossless compression
for sliceIndex = 1 : size(image3d, 3)
thisSlice = image3d(:,:,sliceIndex);
filename = sprintf('Slice #%d.png', sliceIndex);
imwrite(thisSlice, filename);
end
image3d is your 3-D image array.
  5 Comments
Meriem YOUss
Meriem YOUss on 10 Jun 2021
how to do the same code with a set of images with a loop, and save only the first slice of each image?

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!