speeding up tiff writing
Show older comments
I'm trying to write a large (~18,000) frame image stack to a tiff file. See code below :
imgname=[SubDataFolder,...
'/_BG_',num2str(0),'_BGstd_',num2str(0),'_kappa',num2str(kappa),'_run_',num2str(runNum),'.tiff']; % 0 just sets the image name
imwrite(uint16(BgIm160(:, :,1)),imgname); % - writes the first image
disp(['Starting Image Writing Loop for ',imgname]) % - for trouble shooting
for(k=2:num_images) % - writes the rest of the images
imwrite(uint16(BgIm160(:, :, k)),imgname,'WriteMode','append');
fracdone=round((k./num_images)*100) % - shows hoe much is done
%
end
This is taking a REALLY long time, is it just becuase 18k slices is a lot to write in a file (each slice is 200x500), and I just need to be patient, or is there a better/faster way to write this to a .tif file (for later analysis in ImageJ)
thanks
5 Comments
Walter Roberson
on 30 Jul 2019
Did you experiment with using Tiff() class?
Jan
on 31 Jul 2019
With some test data I need 10 seconds to write 900 frames with 200x500 pixels on a SSD, and 26 for 1800 frames.
Jeff Spector
on 31 Jul 2019
Jeff Spector
on 31 Jul 2019
Walter Roberson
on 31 Jul 2019
https://www.mathworks.com/help/matlab/ref/tiff.writedirectory.html
Answers (0)
Categories
Find more on Convert Image Type 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!