逐帧读取视频,并使用Matlab显示每帧的图像

时间:2014-11-02 05:04:57

标签: matlab image-processing video-capture video-processing

我正在与Matlab合作。现在,我正在做一个关于图像处理的小项目。我想逐帧读取视频并找到每帧的强度。请帮帮我

Read video code : 

**它无法使用hasFrames ** 错误:未定义的函数'hasFrame'用于'VideoReader'类型的输入参数。

非常感谢。

1 个答案:

答案 0 :(得分:3)

在MATLAB中hasFrames类没有VideoReader这样的东西。

在MATLAB中有一个名为hasFrame的函数:http://www.mathworks.com/help/matlab/ref/videoreader.hasframe.html,但它只存在R2014bR2014b的文档刚刚在上周发布,我过早地说没有名为hasFrame的函数,因为我从未在VideoReader类中看到过我使用过的函数至。我目前使用R2013a。有关详细信息,请参阅MathWorks中的此主题:http://www.mathworks.com/matlabcentral/answers/157477-unable-to-read-and-playback-movie-file

可能会发生此错误,因为您没有最新版本的MATLAB。如果您想使用VideoReader类从视频文件中读取一个帧,请在从文件中读取视频后使用readFrame功能:http://www.mathworks.com/help/matlab/ref/videoreader.readframe.html。不要使用hasFrame。您始终可以检查readFrame返回的矩阵是否为空,这可能表示您的视频是否有可用的帧。

致电readFrame会为您提供一个视频框,供您进行分析。您每次都可以调用它来抓取视频中的下一帧。

祝你好运!