您的位置:首页 > 编程语言 > MATLAB

matlab制作视频,还待完善

2016-06-22 12:32 405 查看



1.
1. 读取多幅图到cell,15幅图,15个单元

I = cell(1,15);
for b = 1:15
imageName = strcat('image', int2str(b),'.jpg');
I{b} = imread(imageName);
end
2. 制作视频

%读取视频
clc;clear all;
srcDir=uigetdir('Choose source directory.');%选择源文件路径
cd(srcDir);  %变更路径
allnames=struct2cell(dir('*.jpg'));
[k,len]=size(allnames); %获得jpg文件的个数

aviobj = avifile('MagicCube1.avi','compression','none');
%%%%%%%%%%%%%%
for i=1:len
%逐次取出文件
name=allnames{1,i};
I=imread(name); %读取文件
%     I1(:,:,1)=I;
%     I1(:,:,2)=I;
%     I1(:,:,3)=I;
aviobj = addframe(aviobj,I);
end
aviobj = close(aviobj);% 必须关闭后,AVI文件才生成
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%当图像为灰度图像时,只需稍作修改:
I1(:,:,1)=I;
I1(:,:,2)=I;
I1(:,:,3)=I;
%    aviobj = addframe(aviobj,I);
aviobj = close(aviobj); % 必须关闭后,AVI文件才生成
%运行时,选择保存的图像的文件夹即可……


cell 和 struct2cell获取的结果不同
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: