Skip to Main Content Skip to Search
Home |   Select Country  Choose Country  |  Contact Us  |  Cart Store 
Create Account | Log In
Products & Services Solutions Academia Support User Community Company
spacer spacer spacer spacer spacer spacer

 

Image Acquisition Toolbox 3.4

Configuring Callback Properties

Callback functions are executed when an associated event occurs. To configure a callback to execute for a particular event, configure one of the video input object's callback properties:

  • ErrorFcn
  • FramesAcquiredFcn
  • StartFcn
  • StopFcn
  • TimerFcn
  • TriggerFcn

This tutorial uses a callback function, found in the

  • MATLABROOT\toolbox\imaq\imaqdemos\helper

directory, that displays the N'th frame, where N is provided as an input argument to the callback function.

% Add the callback function directory to the MATLAB® path.
utilpath = fullfile(matlabroot, 'toolbox', 'imaq', 'imaqdemos', 'helper');
addpath(utilpath);

Select a device to use for acquisition and configure it to acquire data upon executing a manual trigger.

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

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

Configure the video input object to execute a callback function when the acquisition is stopped.

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

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

% Initiate the acquisition.
start(vidobj)

Upon triggering the image acquisition device, a tennis ball is dropped within the camera's view.

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

When the acquisition is stopped, it will cause the callback function to execute and display the N'th frame.

% Stop the acquisition.
stop(vidobj)

Once the video input object is no longer needed, delete it and clear it from the workspace.

delete(vidobj)
clear vidobj

% Remove the callback function directory from the MATLAB path.
rmpath(utilpath);
Contact sales
Free technical kit
Trial software
E-mail this page

Get Pricing and
Licensing Options