Video frame selection
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I'm sure this has an easy answer but if I set a trigger to capture 2 frames how can I independently assign '[vid,1]' and '[vid,2]' as variables? My reason for doing this is to subtract one image from another (and then divide the qualitative noise. 2 to the power of 0.5, Dark current calculations).
vid = videoinput('gige', 1, 'Mono16');
src = getselectedsource(vid);
vid.FramesPerTrigger = 2;
start(vid);
Thanks
0 commentaires
Réponse acceptée
David Tarkowski
le 16 Nov 2011
There are a number of ways to this that are roughly equivalent. By default the GETDATA command returns N frames where N is equal to the value of the FramesPerTrigger property when GETDATA is called. You could do something like:
data = getdata(vid);
diffFrame = data(:,:,:,2) - data(:,:,:,1);
You can also specify the number of frames that GETDATA should return:
image1 = getdata(vid, 1); % Here 1 is the number of frames to return
image2 = getdata(vid, 1);
diffFrame = image2 - image1;
Of course, you could also do:
data = getdata(vid); % Get both frames
image1 = data(:,:,:,1); % The first frame
image2 = data(:,:,:,2); % The second frame
diffFrame = image2 - image1;
3 commentaires
Image Analyst
le 23 Nov 2011
You need to cast as single() or double() because uint8 doesn't allow any values outside 0-255.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur GigE Vision Hardware dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!