zl程序教程

您现在的位置是:首页 >  后端

当前栏目

MATLAB 制作GIF图像

MATLAB 图像 制作 gif
2023-09-14 09:00:35 时间

前提要求:图像集保存在某个文件夹中,且每个图像以数字形式顺序命名,如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