使用matlab间隔一定时间提取视频一帧的图片

1.编译环境

1.1matlab 2017a

1.2window 10

2.主要流程

找一个视频,matlab格式支持mp4,下面以mp4格式为例。(VideoReader supports these file formats:MPEG-1 (.mpg)
Windows Media® Video (.wmv.asf.asx))

具体操作如下:

%clc;
%clear all;
%close all;
VideoAd = VideoReader('F:\Video\Video001.mp4');%输入视频位置
numFrames = VideoAd.NumberOfFrames;% 帧的总数
videoF=VideoAd.FrameRate;%FrameRate 视频采集速率
videoD=VideoAd.Duration;  %Duration  时间
numname=6;%the length of image name
nz = strcat('%0',num2str(numname),'d');
T=1*videoF;%提取帧数间隔,这里设定每1秒提取一一帧
i=1;
 for k = 1 :T: numFrames%     
     numframe = read(VideoAd,k);%读取第几帧
     num=sprintf(nz,i);   %i为保存图片的序号
     i=i+1;
     imwrite(numframe,strcat('F:\VideoDivided_image\001\',num,'.png'),'png');  
     % 保存帧,
     %位置:F:\PeopleTrainingTest_2018.7.25\Test_divide\
 end

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值