Immediately return single image frame
frame = getsnapshot(obj)
[frame, metadata] = getsnapshot(obj)
frame = getsnapshot(obj) immediately returns one single image frame, frame, from the video input object obj. The frame of data returned is independent of the video input object FramesPerTrigger property and has no effect on the value of the FramesAvailable or FramesAcquired property.
The object obj must be a 1-by-1 video input object.
frame is returned as an H-by-W-by-B matrix where
Image height, as specified in the ROIPosition property
Image width, as specified in the ROIPosition property
Number of bands associated with obj, as specified in the NumberOfBands property
frame is returned to the MATLAB® workspace in its native data type using the color space specified by the ReturnedColorSpace property.
You can use the MATLAB image or imagesc function to view the returned data.
[frame, metadata] = getsnapshot(obj) returns metadata, a 1-by-1 array of structures. This structure contains information about the corresponding frame. The metadata structure contains the field AbsTime, which is the absolute time the frame was acquired, expressed as a time vector. In addition to that field, some adaptors may choose to add other adaptor-specific metadata as well.
Note If obj is running but not logging, and has been configured with a hardware trigger, a timeout error will occur.
To interrupt the getsnapshot function and return control to the MATLAB command line, issue the ^C (Ctrl+C) command.
Create a video input object.
obj = videoinput('matrox', 1);
Acquire and display a single frame of data.
frame = getsnapshot(obj); image(frame);
Remove the video input object from memory.
For an example of using getsnapshot, see the Image Acquisition Toolbox™ example Acquiring a Single Image in a Loop in the Examples list at the top of the Image Acquisition Toolbox main Documentation Center page, or open the file demoimaq_GetSnapshot.m in the MATLAB Editor.