【Matlab】将avi视频提取出帧序列图片并保存

想要用Matlab提取avi视频中的帧图像,并保存成jpg格式


%read video and save every frame as .jpg %obj = VideoReader('D:\data\test_video_3\test_video_3.avi'); obj = VideoReader('test_video_3.avi'); vid = read(obj); fnum = obj.NumberOfFrames; for i = 1:fnum imwrite(vid(:,:,:,i),strcat('frame-',num2str(i),'.jpg')); end


说明:

1、第二行和第三行代码的区别在于视频存放的地址

如果输入视频就在当前文件夹中,则可使用第三行代码

如果输入视频在其他文件夹中,则可用第二行代码,并写明视频存放的地址。

2、读取视频也可以调用mmreader,但是Matlab会提示Warning: MMREADER will be removed in a future release. Use VIDEOREADER instead.

3、imwrite中strcat函数可以定义文件名以及后缀,也可以设置为.png .bmp等后缀形式,以保存为其他图片格式。

你可能感兴趣的:(【Matlab练习】)