这个例子解释了回调函数是如何工作的,并展示了如何使用它们。
回调函数在关联事件发生时执行。要配置一个回调来执行一个特定的事件,配置一个视频输入对象的回调属性:
ErrorFcn
FramesAcquiredFcn
StartFcn
StopFcn
TimerFcn
TriggerFcn
本教程使用回调函数,可以在
MATLABROOT \工具箱\ imaq \ imaqdemos \帮手
目录,它显示第N帧,其中N作为回调函数的输入参数提供。
选择用于采集的设备,并将其配置为在执行手动触发器时采集数据。
%访问图像采集设备。vidobj = videoinput (“winvideo”1);%在手动触发时获得无限帧。triggerconfig (vidobj“手动”);vidobj。FramesPerTrigger =正;
将视频输入对象配置为在采集停止时执行回调函数。
%指定回调函数将显示的第N帧。frameNumber = 3;%在获取结束时执行回调函数。vidobj。StopFcn = {“util_showframe”frameNumber};发起收购。开始(vidobj)
当触发图像采集设备时,一个网球在相机的视野内下落。
%触发对象进行日志记录并获取几秒钟的数据。触发(vidobj)暂停(5);
当采集停止时,它将导致回调函数执行并显示第N帧。
%停止收购。停止(vidobj)
一旦视频输入对象不再需要,删除它并将其从工作区中清除。
删除(vidobj)清晰vidobj