Promblem video setup as RGB but show in axes but not show in RGB axes show grayscale instead

1 次查看(过去 30 天)
I want to show video as RGB but axes show grayscale color instead
RGB2GRAY only accepts a Mx3 matrix for MAP or a MxNx3 input for RGB.

回答(2 个)

Walter Roberson
Walter Roberson 2017-6-15
Change
data = rgb2gray (getdata(vid,2));
to
temp = getdata(vid,2);
data = cat(3, rgb2gray(temp(:,:,:,1)), rgb2gray(temp(:,:,:,2)));
  4 个评论
Walter Roberson
Walter Roberson 2017-6-15
Small correction:
data = cat(4, rgb2gray(temp(:,:,:,1)), rgb2gray(temp(:,:,:,2)));
getdata(vid,2) says to fetch 2 frames. That will give you MxNx3x2 . Assign that to a temporary variable. Now take each MxNx3 slice of it and convert each one through rgb2gray, producing something that is MxNx1 . Now splice them along the 4th dimension to get somehting MxNx1x2

请先登录,再进行评论。


Image Analyst
Image Analyst 2017-6-19
Make sure the output format of the camera is RGB and not monochrome/grayscale.

Community Treasure Hunt

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

Start Hunting!

Translated by