Video frame selection
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
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 Kommentare
Akzeptierte Antwort
David Tarkowski
am 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 Kommentare
Image Analyst
am 23 Nov. 2011
You need to cast as single() or double() because uint8 doesn't allow any values outside 0-255.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu GigE Vision Hardware 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!