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

1 Ansicht (letzte 30 Tage)
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?

Akzeptierte Antwort

Image Analyst
Image Analyst am 24 Mär. 2018
Bearbeitet: Image Analyst am 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 Kommentare
Meriem YOUss
Meriem YOUss am 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
Image Analyst am 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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu GPU Computing finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by