matlab将图片转化视频文件格式,MATLAB与图像处理(四):将图片序列转化为视频文件,将视频文件转化为图片...

一,将图片序列转化为视频文件

function video=frames2Video(framesPath,videoName,quality,Compressed,fps,startFrame,endFrame)

%framesPath :图像序列所在路径,同时要保证图像大小相同

%videoName: 表示将要创建的视频文件的名字

%quality: 生成视频的质量 0-100

%Compressed: 压缩类型, ‘Indeo3‘(默认), ‘Indeo5‘, ‘Cinepak‘, ‘MSVC‘, ‘RLE‘ or ‘None‘

%fps: 帧率

%startFrame ,endFrame ;表示从哪一帧开始,哪一帧结束

if(exist(‘videoName‘,‘file‘))

delete videoName.avi

end

%生成视频的参数设定

aviobj=avifile(videoName); %创建一个avi视频文件对象,开始时其为空

aviobj.Quality=quality;

aviobj.Fps=fps;

aviobj.compression=Compressed;

%读入图片

for i=startFrame:endFrame

fileName=sprintf(‘%08d‘,i); %根据文件名而定 我这里文件名是00000001.jpg 00000002.jpg ....

frames=imread([framesPath,fileName,‘.jpg‘]);

aviobj=addframe(aviobj,uint8(frames));

end

aviobj=close(aviobj); % 关闭创建视频

end在command window里输入

path=‘你的文件路径‘;

frames2Video(path,‘dog‘,90,‘None‘,5,1,32);

二,视频文件转化为图片

function avi2Frames(path)

mov=aviread(path);

framesNum=size(mov,2);

for i=1:framesNum

frames=frame2im(mov(i));

str=strcat(‘a‘,int2str(i),‘.jpg‘);

imwrite(frames,str);

end

end

代码未做优化,可以先预分配空间。同时对于很多使用程序健壮的语句没有加进去

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值