Why some of my colored videos load as gray-scale in MATLAB
2 次查看(过去 30 天)
显示 更早的评论
Hi, I downloaded a bunch of videos from youtube. I then load them to matlab to extract/process 10 randomly selected clips. Most of my videos load perfectly fine, however, a lot of them load as a weird gray-scale version of the video. I load the videos using:
vidObj = VideoReader(filename);
duration = vidObj.Duration ;
clips_indx = duration * rand(10,1);
for i = 1 : 10
vidObj.CurrentTime = clips_indx(i);
im = readFrame(vidObj);
end
This is how the clips look like, tilted and gray!
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/164447/image.png)
While the video looks normal like:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/164448/image.png)
I would appreciate any input.
Thanks a lot.
0 个评论
回答(2 个)
Walter Roberson
2016-5-16
1) It is possible for videos to be pseudocolor; in such a case when you retrieve the frame, the map field will be non-empty and the data field will be 2D.
2) With a shear like that, it is plausible that the video is in YCrCb 4:2:2 or 4:2:0 and needs to be converted to RGB.
7 个评论
Walter Roberson
2016-5-21
I don't know at the moment. Some technical notes on the codecs Youtube uses: http://video.stackexchange.com/questions/5318/how-does-youtube-encode-my-uploads-and-what-codec-should-i-use-to-upload
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!