How does Imaq.VideoDevide step() function work?
2 ビュー (過去 30 日間)
古いコメントを表示
I am developing a stream processing gui. If the step function is put in a loop will it grab the frame at the time it is called or will take the next frame since the function was last called? It is important for the processing that there are no "skipped" frames.
0 件のコメント
回答 (1 件)
Shankar Subramanian
2013 年 6 月 13 日
編集済み: Shankar Subramanian
2013 年 6 月 13 日
Hi Jacob,
The imaq.VideoDevice System object returns a frame at the time the step() is called. There is no buffering of frames that happen in this scenario and it returns the latest frame. In essence, frames can be skipped depending on the speed of execution.
You can use the videoinput() object to perform your task:
vi = videoinput(....);
set(vi, 'FramesPerTrigger', 100)
frame = getdata(vi, N) % where N is number of frames to receive.
The frames received are stored in a buffer and hence call to the next getdata returns the oldest frames (no frames being skipped).
Thanks
Shankar
0 件のコメント
参考
カテゴリ
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!