How to write each slices from volume in MATLAB into jpg format?
2 views (last 30 days)
Show older comments
Javaid Iqbal
on 24 Mar 2018
Commented: Image Analyst
on 10 Jun 2021
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?
0 Comments
Accepted Answer
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
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?
Image Analyst
on 10 Jun 2021
@Meriem YOUss, put the code above into a loop over all files, which you can get code for in the FAQ: https://matlab.fandom.com/wiki/FAQ#How_can_I_process_a_sequence_of_files.3F
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!