我正在与Matlab合作。现在,我正在做一个关于图像处理的小项目。我想逐帧读取视频并找到每帧的强度。请帮帮我
Read video code :
**它无法使用hasFrames ** 错误:未定义的函数'hasFrame'用于'VideoReader'类型的输入参数。
非常感谢。
答案 0 :(得分:3)
在MATLAB中 hasFrames
类没有VideoReader
这样的东西。
在MATLAB中有一个名为hasFrame
的函数:http://www.mathworks.com/help/matlab/ref/videoreader.hasframe.html,但它只存在R2014b
。 R2014b
的文档刚刚在上周发布,我过早地说没有名为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
会为您提供一个视频框,供您进行分析。您每次都可以调用它来抓取视频中的下一帧。