How to write each slices from volume in MATLAB into jpg format?
    4 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
Categories
				Find more on Image Processing Toolbox 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!