Настройка свойств коллбэка

Этот пример объясняет, как работают функции обратного вызова, и показывает, как их использовать.

Функции обратного вызова выполняются, когда происходит связанное событие. Чтобы сконфигурировать коллбэк для выполнения определенного события, сконфигурируйте одно из свойств коллбэка объекта видео входа:

  • ErrorFcn

  • FramesAcquiredFcn

  • StartFcn

  • StopFcn

  • TimerFcn

  • TriggerFcn

Это руководство использует функцию обратного вызова, найденную в

  • MATLABROOT\toolbox\imaq\imaqdemos\helper

Директория, который отображает N '-й система координат, где N предоставляется как входной параметр функции обратного вызова.

Выберите устройство для сбора и сконфигурируйте его для сбора данных после выполнения ручного триггера.

% Access an image acquisition device.
vidobj = videoinput('winvideo', 1);

% Acquire an infinite number of frames when manually triggered.
triggerconfig(vidobj, 'manual');
vidobj.FramesPerTrigger = inf;

Сконфигурируйте объект входа видео, чтобы выполнить функцию обратного вызова, когда сбор остановлен.

% Specify the N'th frame the callback function will display.
frameNumber = 3;

% Have the callback function executed when the acquisition ends.
vidobj.StopFcn = {'util_showframe', frameNumber};

% Initiate the acquisition.
start(vidobj)

При срабатывании устройства для сбора изображений теннисный мяч падает в пределах вида камеры.

% Trigger the object for logging and acquire data for a few seconds.
trigger(vidobj)
pause(5);

Когда обнаружение остановлено, это заставит функцию обратного вызова выполнить и отобразить N '-й система координат.

% Stop the acquisition.
stop(vidobj)

Как только объект входа видео больше не нужен, удалите его и очистите из рабочей области.

delete(vidobj)
clear vidobj

Для просмотра документации необходимо авторизоваться на сайте