一、视频的读取和显示
视频数据的读取要用到VideoReader这个函数,按照matlab软件中举的例子,基本流程是在用VideoReader建立一个obj后,采用read函数来读取一帧帧图像,最后用movie函数来放映视频。但是matlab自带的函数读取avi格式的视频时也只能读取那些原始格式的avi,比较局限性。其读取过程可以采用下面2种方法:
先读完,再显示。
即先将视频数据读取到内存的结构体中,然后直接从内存中拿数据来显示,这显示的视频看起来比较流畅,可是一开始把所有数据读入内存的过程所用时间也有点长。
在matlab指定目录下放入需要读取的视频,我这里放的是test.avi.其代码如下:
%% 先读取,后播放 mov = VideoReader( 'test.avi' );
movFrames = mov.NumberOfFrames;
movHeight = mov.Height;
movWidth = mov.Width;
src(1:200) = struct( 'cdata', zeros(movHeight, movWidth, 3,