1. 将视频转换成图片
video = 'bolt';%视频名字
testvideo = strcat('I:\video\', video , '.avi'); %视频完整地址
savePath = strcat('I:\video\' , video , '\');%保存图片的路径
mov = mmreader(testvideo);
numFrames = get(mov, 'numberOfFrames');% 获得帧数
w=waitbar(0,'Reading the file now'); %进度条
for i=1:numFrames
frames=read(mov,i);
strtemp=strcat(savePath, int2str(i),'.','jpg');
imwrite(frames(:,:,:,1),strtemp); %保存图片
waitbar(i/numFrames,w,'Please wait...');
end
waitbar(1,w,'Finish');
pause(1);
2. 将图片组成视频
% 函数说明:将某文件夹下的所有的jpg图片,生成avi视频文件
% avi_file_name 不用带扩展名,最终生成的视频文件自动扩展名为.avi
% image_file_path=e:\testvideo\singer1_change\
% avi_save_path 结尾不带\
% 例如调用格式 image2avi_ok('skating002','e:\testvideo\skating2_change\','e:\testvideo\skating2_change\')
function image2avi_ok(avi_file_name,image_file_path,avi_save_path)
writerObj =VideoWriter(strcat(avi_save_path,'\',avi_file_name,'.avi'));
open(writerObj);
image_file_path_temp=strcat(image_file_path);
image_num=dir(strcat(image_file_path,'*.jpg'));
for n=1:length(image_num)
index_str=num2str(n);
image_name=[image_file_path_temp,index_str,'.jpg'];
frame=imread(image_name);
writeVideo(writerObj,frame);
end
close(writerObj);