MATLAB 制作GIF图像
前提要求:图像集保存在某个文件夹中,且每个图像以数字形式顺序命名,如001.jpg,002.jpg等。
代码1:
这个代码生成的效果有点问题,建议采用代码2.
wm={'overwrite','append'}; for idx=1:8 file=imread(['GIF\',sprintf('%03d.jpg',idx)]); if ndims(file)==2 file=cat(3,file,file,file); end [m,n]=rgb2ind(file,256); imwrite(m,n,'bird.gif','DelayTime',0.5,'WriteMode',wm{1+(idx>1)}); end
代码2:
clc;clear all;close all; num_image = 8; dst_dir = 'GIF\'; filename= 'bird.gif'; %你的gif文件的名字 for i=1:num_image idx=sprintf('%03d',i); str=[dst_dir idx '.jpg']; Img=imread(str); figure(i) imshow(Img); frame=getframe(i); im=frame2im(frame);%制作gif文件,图像必须是index索引图像 [I,map]=rgb2ind(im,256); k=i-0; if k==1; imwrite(I,map,filename,'gif','Loopcount',inf,... 'DelayTime',0.1); else imwrite(I,map,filename,'gif','WriteMode','append',... 'DelayTime',0.1); end end
效果:
代码来源:
http://jingyan.baidu.com/article/e8cdb32b59138c37052baddf.html
http://blog.sina.com.cn/s/blog_4d633dc70100nslz.html