将如下代码保存到m文件,不是函数文件,是script文件,
matlab 将视频保存为图片
可以根据需要自行修改
[filename,pathname,fileindex]=uigetfile('*.avi','请选择一个Avi文件');
dname=uigetdir('c:/','保存到');
dname=[dname '\'];
video_info=VideoReader([pathname filename]);
% info =
% Filename: 视频名称
% FileSize: 视频大小
% FileModDate: 视频创建日期
% NumFrames: 视频总帧数
% FramesPerSecond: 视频采集速率
% Width: 视频宽度
% Height: 视频高度
% ImageType: 'truecolor' 图像模式
% VideoCompression: 'DIV3' 视频图像压缩格式
% Quality: 0
% NumColormapEntries: 0
LEN=video_info.NumberOfFrames; %获得视频长度
nfmt=['%0.' num2str(length(num2str(LEN))) 'd'];
ffmt='jpg';%文件格式
for k=1:LEN
disp(['正在处理第' num2str(k) '帧,共' num2str(LEN) '帧']);
video_image=read(video_info,k);
imwrite(video_image,strcat(dname,num2str(k,nfmt),['.' ffmt]),ffmt);%把每帧图像存入硬盘
end
disp('处理完成!');