Video frames not displaying properly

I am trying to display video frames, but they're showing up incorrectly.
I'm using MATLAB R2019b, a Point Grey Flea3 camera, the "Image Acquisition Toolbox Support Package for Point Grey Hardware," Point Grey FlyCap2, and the following code:
vid = videoinput('winvideo', 1, 'RGB32_1600x1200');
set(vid,'FramesPerTrigger',Inf);
set(vid,'ReturnedColorSpace','rgb');
vid.FrameGrabInterval = 5;
start(vid);
while(vid.FramesAcquired <= 100)
data = getsnapshot(vid);
imshow(data);
end
stop(vid);
flushdata(vid);
clear all;
Previously, the video would display as expected, but for some reason I now get results like the attached image. The video looks fine in FlyCap.

5 Comments

It sort of looks like the internal YUV was in "packed" format and was converted incorrectly to RGB
That's exactly what was wrong, thank you! For anyone else having the same problem, changing the video mode to RGB in FlyCap is what fixed it.
I would have expected set(vid,'ReturnedColorSpace','rgb'); to do that for you...
Oh, I'll try that, thanks!
You already did that; I am surprised it did not work. But anyhow, setting RGB in FlyCap got you working, and that's the important part for now.

Sign in to comment.

Answers (0)

Products

Release

R2019b

Asked:

on 8 Oct 2021

Commented:

on 9 Oct 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!