matlab中如何将视频保存成图像

本文介绍了如何使用MATLAB将视频文件的每一帧保存为单独的图像,包括基本的读取视频和保存图像的代码示例,适用于进行计算机视觉预处理。
摘要由CSDN通过智能技术生成

利用MATLAB将视频的每一帧保存成一幅图像,并自动命名。本文方法简单,容易学习。

首先,读入视频。代码如下:

mov = VideoReader('xxxxxx.avi');    % 将xxxxxx.avi读入MATLAB中,并用名为mov的结构体保存
fnum = mov.NumberOfFrames;          % 获取视频帧数

接下来,我们要写一个循环来将视频的每一帧保存成.png格式的图片。代码如下:

% 将第i帧写入到xxx文件夹内"img_000x.png"图片中
imgOrder=0;    % 图片按顺序编号
for i = 1:3:fnum            % i从1到fnum, step=3
    Img=read(mov,i);        % 读取第i帧;每次读取一帧可防止内存不足
    imwrite(Img,['xxx/img_',sprintf('%04d',imgOrder),'.png'])   % 将第i帧写入到xxx文件夹内"img_000j.png"图片, j=imgOrder
    imgOrder=imgOrder+1;
end

程序运行结束后,会在xxx文件夹中生成fnum/step张图片,每一张图片对应视频中相应的一帧。

如果需要做一些预处理,如选取感兴趣区域ROI、下采样等,可以通过修改倒数第二句话实现:

imwrite(Img,['xxx/img_',sprintf('%04d',imgOrder),'.png']); 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值