image acquisition and imaqmontage

2 vues (au cours des 30 derniers jours)
Rafael Madrid
Rafael Madrid le 8 Sep 2014
Commenté : Image Analyst le 8 Sep 2014
Hi,
I've captured a number of frames using the image acquisition toolbox and exported them to the workplace, and want to save all of them as individual bmps. I can load all of them with imaqmontage, then save them individually with for example;
>> imaqmontage(hemi_0);
>> img = hemi_0(:,:,:,9);
>> imwrite(img,'imagename.bmp');
but that is a hassle since I will have several images. Help save them all automatically?
Raf

Réponse acceptée

Image Analyst
Image Analyst le 8 Sep 2014
Put in a loop and call getsnapshot() instead of imaqmontage().
snappedImage = getsnapshot(videoObject);
After each call to getsnapshot, call imwrite() with a different name.
  3 commentaires
Rafael Madrid
Rafael Madrid le 8 Sep 2014
Say if I only use
imwrite(4-Duint8array(:,:,:,1), 'im01.bmp', 'bmp');
How can I repeat this with the names increasing in number without having to type them all in?
Raf
Image Analyst
Image Analyst le 8 Sep 2014
If you have a 4D array of 3D color video frames, use a loop
for f = 1 : size(4-Duint8array, 4)
thisFrame = 4-Duint8array(:,:,:,f);
baseFileName = sprintf('frame #%d.bmp', f);
fullFileName = fullfile(folder, baseFileName);
imwrite(thisFrame, fullFileName);
end

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by