MATLAB 图像序列合成视频

 1 for i=1:40
 2         fname=strcat('C:Users	cDesktop	est1 (',int2str(i),').bmp');
 3         im(:,:,i)=imread(fname); 
 4         imshow(im(:,:,i)) 
 5         M(i) = getframe; 
 6 end 
 7 
 8 movie2avi(M,'out.avi','FPS',8)%输出视频
 9 
10 注:一下是2012.12.28增加:
11 上面的程序虽然也能够输出视频,不过效果不好,用到的getframe是截屏用的,而且帧数自己设置的也不可能达到最理想状态,所以就有了以下的一段程序,功能和上面的是一样的,不过效果更好。
12 
13 clear all;
14 close all;
15 clc;
16 
17 aviobj = avifile('out.avi','compression','None'); %初始化一个avi文件
18 for i=1:30
19 fname=strcat(num2str(i),'.bmp');
20   im(:,:,1)=imread(fname); %avi需要彩色数据
21   im(:,:,2)=im(:,:,1);
22   im(:,:,3)=im(:,:,1);
23   %以下两步可要可不要
24   figure(1);
25   imshow(im)
26   aviobj=addframe(aviobj,im); %一帧一帧的写入avi
27 end
28 aviobj=close(aviobj); %将缓存数据写入avi
原文地址:https://www.cnblogs.com/ybqjymy/p/13645994.html