Image Acquisition Toolbox: using the 'memory' part of 'disk&memory' logging to just record timestamps
5 次查看(过去 30 天)
显示 更早的评论
I need to record video frames and their associated timestamps over an extended period of time (5 mins plus) at up to 30 fps. I currently can't go over about one minutes worth of recording using 'disk&memory' logging before i run out of memory. The actual frames are already captured to disk in the 'disk' part of the logging. So, is it possible to disable the recording of the frame data in the 'memory' part, since all i require from that part is the metadata? I'm hoping then, that i'll be able to record for longer before any out-of-memory issues appear.
0 个评论
回答(1 个)
David Tarkowski
2012-3-14
You can't do what you want directly, i.e. there is no mode that says just log the time stamps. I would probably use the FramesAcquiredFcn to get the time stamp and then discard the image data. You can store the time stamp in the UserData property of the videoinput object for later use.
For example:
vid = videoinput(...);
vid.FramesAcquiredFcnCount = 1;
vid.FramesACquiredFcn = @myFunction;
start(vid)
Your myFunction callback would look something like:
function myFunction (vid, ~)
[~, ts] = getdata(vid, 1);
timestamps = vid.UserData;
timestamps(end+1) = ts;
vid.UserData = timestamps;
1 个评论
Evan Bates
2020-5-18
编辑:Evan Bates
2020-5-19
Is this still the valid answer? How can you also store the frames and metadata from the getdata function in this callback function?
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 National Instruments Frame Grabbers 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!