Increase frame grabbing speed with a Matrox Grabber Card
Show older comments
I use a Vieworks VC-2MC-M340E0 high-speed camera attached via CameraLink to a Matrox Solios eV-CL frame grabber and want to continuously acquire video frames in Matlab.
The matrox IntelliCam software can acquire pictures from this camera with approx. 600 to 700 fps. In Matlab I use matroxcam() to create an object from which I then read frames using snapshot(). This works fine, in principle; the framerate, however, is much lower than in IntelliCam, around 60 to 70 fps, which is insufficient for my purpose. Unfortunately, the Matrox frame grabber does not allow the use of videoinput(). I have used videoinput() in the past with other cameras and it allows setting the FramesAcquiredFcn for the video input object, which is much faster than acquiring each individual frame with a call to snapshot() (or getsnapshot(), in that case).
At the moment snapshot() seems to be the only way to acquire video frames from Matrox frame grabbers. Is there a way that I am not aware of or is there another approach to increase the grabbing speed in my setup somehow?
Accepted Answer
More Answers (1)
Ian Nauhaus
on 24 Jul 2015
1 vote
See the response to my question via e-mail. Perhaps some of this overlaps with the (sparse) on-line documentation of matroxcam, but definitely some additional information that I found helpful:
"matroxcam does not have functionality to set the number of frames per trigger. matroxcam is a much simpler interface than "videoinput"(using 'matrox' adaptor) and it only acquires a single image at a time by using the "snapshot" function. Currently, to acquire multiple frames, multiple "snapshot" commands are required. Because of this, frames-per-second performance is dictated by the general MATLAB code execution speed and what else is executed in the MATLAB code while acquisition is taking place (for example data processing or saving an image to a file).
For comparison, "videoinput" uses an image acquisition engine with buffered acquisition that runs concurrently with the execution of MATLAB code, and would be better suited for acquiring an image stream.
matroxcam does not currently providing a programmatic way of configuring hardware triggering, but it might be possible to achieve hardware-triggered acquisition if this is configured in the specified camera file."
Categories
Find more on Matrox Hardware in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!