精华内容
下载资源
问答
  • matlab 制作gif

    2017-04-10 21:47:21
    matlab可以制作gif,例子 for i=1:num  str = strcat(num2str(i-1), '.jpg');  A=imread(str);  [I,map]=rgb2ind(A,256);  if(i==1)  imwrite(I,map,'movefig.gif','De
    matlab可以制作gif,例子


    1. for i=1:num
    2.     str = strcat(num2str(i-1), '.jpg');
    3.     A=imread(str);
    4.     [I,map]=rgb2ind(A,256);
    5.     if(i==1)
    6.         imwrite(I,map,'movefig.gif','DelayTime',0.1,'LoopCount',Inf)
    7.     else
    8.         imwrite(I,map,'movefig.gif','WriteMode','append','DelayTime',0.1)    
    9.     end
    10. end

    复制代码
    展开全文
  • MATLAB制作GIF,PHOTOSHOP制作GIFgif动画易于制作,相对于视频更小,更易于传播。作为一个程序猿,在使用程序绘图过程中想生成gif动画,可以使用MATLAB生成。当然,MATLAB生成gif动画存在局限性,专业的PhotoShop...

    1c24c2beb58e5b50ce48992c7c816db7.gif

    MATLAB制作GIF,PHOTOSHOP制作GIF

    gif动画易于制作,相对于视频更小,更易于传播。作为一个程序猿,在使用程序绘图过程中想生成gif动画,可以使用MATLAB生成。当然,MATLAB生成gif动画存在局限性,专业的PhotoShop可以满足你的需要,这篇博客将专门介绍gif动画的制作。

    • 一、MATLAB生成GIF动画
    • 二、PhotoShop制作GIF动画
      • 1. 打开PhotoShop
      • 2. 批量导入文件
      • 3. 打开时间轴,创建帧动画
      • 4. 从图层创建帧动画
      • 5. 帧反序
      • 6. 调节显示帧率、循环次数
      • 7. 生成动画

    一、MATLAB生成GIF动画

            代码比较简单,简单解释一下,如果详细了解matlab的gif生成控制,可以 doc imwrite 就可以找到gif的文档了。

            首先,第一帧,创建一个gif文件,Loopcount表示循环次数,DelayTime表示该帧的显示时间,单位是秒s;

            然后,后续帧使用‘WriteMode’ ‘Append’的方式,添加在gif后面,并设置该帧的显示时间,然后gif动画就创建完成了;

            还有一个参数,就是rgb2ind中设置的色彩级别,因为gif是压缩图像格式,这个地方设置的颜色级别就是调色板(颜色表)的大小,动画中所有的颜色都会用这张表中的颜色来近似。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    for ii = 1:numel(img_files),

        I = imread([img_path img_files{ii}]);

        [Ig, map] = rgb2ind(I,256); % 彩色级别

        gif_file = [output_path video '.gif'];

        if ii==1%~exist(gif_file, 'file')

            imwrite(Ig, map, gif_file, 'gif', 'Loopcount', inf, 'DelayTime', 0.02);

        else

            imwrite(Ig, map, gif_file, 'gif', 'WriteMode', 'append', 'DelayTime', 0.02);

        end

    end

             Matlab生成小gif还可以,如果是大量,或者需要控制文件大小,压缩比,失真度之类的功能,那么Matlab必然不能满足你的要求,那么你就需要PhotoShop了。

    680f5acb24e97145082c10eada1cd41e.gif

    二、PhotoShop制作GIF动画

    我们使用的photoshop CC2017,如果你使用的是其它版本,那么整个流程只有一个区别,那就是,在PhotoShop CS6之前,该功能在窗口-动画里打开,而在该版本之后,该功能在窗口-时间轴中打开。我们来讲批量处理模式:

    1. 打开PhotoShop

    51d249e0aa2a834a087511d4575649a2.png

    2. 批量导入文件

    1b585599397e412551523ffca2e5c464.png

            在这里,我们可以批量导入一个文件夹中的所有图片,我们事先按名称排好序,后面直接创建出按照该序列显示的动画。

    04013ab49cbee76e768eeb4b28b148ae.png

    3. 打开时间轴,创建帧动画

    1202e3bf76fa21de4b9c6a336bb51573.png

            在时间轴窗口,选择创建帧动画e9e2c8155127c5ef46de00c7d57aa8c6.png

    4. 从图层创建帧动画

            在时间轴窗口上方有一个三角,会点开下图所示的小菜单,点击从图层创建帧就可以批量将图层中的帧导入成动画帧了。

    4a9e0d98a788cb24be30fbc151fb9ceb.png

    5. 帧反序

            Shift加鼠标选择所有帧,还是在刚那么位置选择反向帧,因为添加过来是倒序的。

    6. 调节显示帧率、循环次数

            在时间轴窗口最显眼的位置,当然你还可以通过图层来修改每个镇的动画内容,在右侧可以选择该帧中哪些图层是可见的,哪些图层是不可见的。

    7. 生成动画

    b3f107d27aada6f2019ee8f4e38e3f58.png

            这是最后一步,这里介绍下几个选项:

            透明度,gif是由透明度的四通道图像,如果不想要该通道,可以去掉

            颜色,就是颜色表的个数,颜色表越大,颜色越鲜艳,质量越好

            损耗,损耗可以用来调节文件的大小,允许的损耗越大,就越容忍图像的失真,生成的动画也就越小

            品质,缩放过程中,使用的插值方法,不直接影响文件大小,一般默认即可

            循环,这里是和之前的循环次数对应的,我们可以选择播放的次数

    189d335f4f9e1c588ba9b5335aae11c4.png

            最后,点击存储,就可以导出gif动画了

    关注本公众号

    可查阅更多图像知识信息,合作共享!

    2218d333da1a63238ad6d57e115d9820.png

    声明:

    此资料部分转载自网络,仅供学习参考。

    54efd0098aa1e007dbb44ee17c4f5ad5.gif0fbb76bda426e8a7290c55ec8d034ec3.png

    展开全文
  • MATLAB制作GIF

    万次阅读 2015-11-02 12:49:23
    MATLAB制作GIF

    有一個波Psi=cos(0.5*beta*x/w_mn+w_mn*t)*sin(m*pi*x/L_x)*sin(n*pi*y/L_y)

    這時候想畫出Psi隨時間的變化,並保存成GIF格式

    MATLAB代碼:

    function []=CalPsi()
        Omega=2*pi/(24*60*60);
        theta0=90/180*pi;
        f0=2*Omega*sin(theta0);
        g=9.8;
        H0=4000;
        c0=sqrt(g*H0);
        a=6370*1000;
        beta=2*Omega*cos(theta0)/a;
        LD=c0/f0;
        %assumption Lx=Ly=LD
        m=3;
        n=3;
        xmax=3*10^6;
        x=0:xmax/100:xmax;
        y=0:xmax/100:xmax;
        [X,Y]=meshgrid(x,y);
        i=0;
        %for t=0:5*10^20:10^22%mn=11
        %for t=0:5*10^21:10^23%mn=31
        %for t=0:10^21:2*10^22%mn=13
        for t=0:10^21:2*10^22%mn=33
           figure();
           mesh(X,Y,cos((-(4*m^2+n^2)*pi*pi+1)*X/(4*m*pi*LD)-2*m*pi*beta*LD*t/((4*m*m+n*n)*pi*pi+1)).*sin(m*pi*X/LD).*sin(n*pi*Y/LD));
           title(sprintf('m=%d\nn=%d\ntime = %f s',m,n,t));
           i=i+1;
           print(1,sprintf('112233/%d',i),'-dbmp')
           close;
        end
        for j=1:i
            im=imread(sprintf('112233/%d.bmp',j));
            [I,map]=rgb2ind(im,20); 
            if j==1
               imwrite(I,map,'112233/GIF/meow5.gif','gif', 'Loopcount',inf,'DelayTime',0.2);%FIRST
           else
               imwrite(I,map,'112233/GIF/meow5.gif','gif','WriteMode','append','DelayTime',0.2);
           end
        end
        close all;
    end

    就這樣吧,也沒有甚麼需要解釋的。當作筆記方便以後查看喵>_<



    展开全文
  • MATLAB 制作gif动画

    2019-10-04 07:42:05
    1、已有一系列时序图片的基础上,可借助matlab制作gif图片,虽然比不上专业绘图制作的精良,好在比较方便。 2、假定时序图片的命名为:dens000000.tiff,dens000500,dens0010000,…… 3、效果展示 4、代码呈现 ...

    1、已有一系列时序图片的基础上,可借助matlab制作gif图片,虽然比不上专业绘图制作的精良,好在比较方便。

    2、假定时序图片的命名为:dens000000.tiff,dens000500,dens0010000,……

    3、效果展示

    4、代码呈现

    % make gif
    clc;clear;
    close all;
    
    % fileneme for gif
    prefix = 'dens';
    targetname = [ prefix '.gif' ];
    
    % get information of the source file
    file_info = dir( strcat( prefix, '*.tiff' ) );
    file_num = length( file_info );
    nameindex = zeros( 1, file_num );
    
    for i = 1:file_num
        temp = strsplit( file_info(i).name, '.' );
        strformat = strcat( prefix, '%d' );
        temp = sscanf( temp{1,1}, strformat );
        nameindex(i) = temp;
    end
    nameindex = sort( nameindex );
    
    % get the size of screen
    set( 0, 'units', 'pixels' );
    scnsize = get( 0, 'MonitorPosition' );
    
    % get the size of figure
    img = imread( file_info(1).name );
    
    % creat figure
    figure( 'units', 'pixels', 'WindowStyle', 'modal', 'color', 'w' )
    
    % set the figure position at the center of screen
    startx = floor( 0.5 * ( scnsize(3) - size(img,2) ) );
    starty = floor( 0.5 * ( scnsize(4) - size(img,1) ) );
    width = size( img, 2 );
    high = size( img, 1 );
    set( gcf, 'position', [ startx, starty, width, high ] );
    
    % deal with the source file one by one
    for i = 1:file_num  
        % read data
        strformat = strcat( prefix, '%06d.tiff');
        str = sprintf( strformat, nameindex(i) );
        img = imread( str );
        
        % open picture
        imshow( img, 'border', 'tight', 'initialmagnification', 'fit' )
        
        frame = getframe( gcf ); 
        im = frame2im( frame );
        [ I, map ] = rgb2ind( im, 1024 );
        
        % close current figure
        cla;
        
        % write file
        if i == 1
            imwrite( I, map, targetname, 'gif', 'Loopcount', inf, 'DelayTime', 0.05 );
        else
            imwrite( I, map, targetname, 'gif', 'WriteMode', 'append', 'DelayTime', 0.05 );
        end
    end
    
    % close figure
    close all;
    

     

    转载于:https://www.cnblogs.com/kljfdsa/p/10598672.html

    展开全文
  • 今天来分享一个非常实用的程序,用matlab制作gif图片。主要用于ppt答辩,这个程序可以实现整体快进、分段快进、每一帧的播放时间、截取图片序列的局部和图片大小压缩等功能。我根据制作gif图片所需的图片序列的来源...
  • Matlab制作gif动图以及生产avi视频

    千次阅读 2017-08-31 20:20:12
    Matlab制作gif动图
  • 今天来分享一个非常实用的程序,用matlab制作gif图片。主要用于ppt答辩,这个程序可以实现整体快进、分段快进、每一帧的播放时间、截取图片序列的局部和图片大小压缩等功能。我根据制作gif图片所需的图片序列的来源...
  • matlab制作gif图片

    千次阅读 2020-11-14 19:59:25
    今天来分享一个非常实用的程序,用matlab制作gif图片。主要用于ppt答辩,这个程序可以实现整体快进、分段快进、每一帧的播放时间、截取图片序列的局部和图片大小压缩等功能。我根据制作gif图片所需的图片序列的来源...
  • Matlab制作GIF动态图

    万次阅读 2018-05-24 14:22:33
    GIF动态图制作制作 clc clear close all filename='D:\\matlab_program\\Mycode\\fish1.gif'; % 输出路径+保存的文件名.gif for i=3374:3379 str = sprintf('D:\\matlab_program\\Mycode\\%d.png',i); %图片绝对...
  • 主要内容概述:预备知识MATLAB 代码实现GIF使用imageio 生成GIF使用animation 交互式方式生成GIF总结0,预备知识首先了解下什么是GIF 图片,以及常用的图片格式。GIF的全称是Graphics Interchange Format,可译为...
  • 使用matlab制作一个n帧的gif动画 示意程序for i = 1:nFrames% draw stuffframe = getframe(gcf);img = frame2im(frame);[img,cmap] = rgb2ind(img,256);if i == 1imwrite(img,cmap,'animation.gif','gif','LoopCount...
  • MATLAB 制作gif动态图

    万次阅读 多人点赞 2017-12-20 22:26:25
    MATLAB 绘制gif动态图的基本思想就是,将一张张的静态图组合成一张能动的gif图片,并保存到相应的位置。 那么,要想制作一张动态图,首先要有若干个静态图,并且他们的索引值是连续的。下面先说一下matlab关于静态...
  • matlab制作gif表情

    2020-04-29 12:31:27
    先看效果 ...matlab实现 clear all; clc; close all; img = imread('orig_img.bmp'); img = imresize(img, [124 124]); center = [64,50]; count = 1; for p = 1:-0.1:0.6 x_low = 50*(1-p)+1; x_...
  • clear;clc;clff = ['hello world'];step = length(f);%figureaxis([0 step+2 0 2])axis off;for i=1:steptext(i,1,f(i),'fontsize',40,'color','red');hold onframe = getframe(gcf);... %制作gif文件...
  • 主要内容概述:预备知识MATLAB 代码实现GIF使用imageio 生成GIF使用animation 交互式方式生成GIF总结0,预备知识首先了解下什么是GIF 图片,以及常用的图片格式。GIF的全称是Graphics Interchange Format,可译为...
  • matlab制作gif和avi

    2018-05-18 16:18:50
    GIF:gifname='example.gif'; frame=getframe(gcf); im=frame2im(frame); [I,map]=rgb2ind(im,20); Ngif=1; if Ngif==1 imwrite(I,map,gifname,'gif', 'Loopcount',inf,'DelayTime',1);%第一次必须创建! else ...
  • MATLAB 制作GIF图像

    2015-12-18 09:34:00
    前提要求:图像集保存在某个文件夹中,且每个图像以数字形式顺序命名,如001.jpg,002.jpg等。 代码1: 这个代码生成的效果有点问题,... file=imread(['GIF\',sprintf('%03d.jpg',idx)]); if ndims(file)==2 ...
  • 有一個波Psi=cos(0.5*beta*x/w_mn+w_mn*t)*sin(m*pi*x/L_x)*sin(n*pi*y/L_y)這時候想畫出Psi隨時間的變化,並保存成GIF格式MATLAB代碼:function []=CalPsi()Omega=2*pi/(24*60*60);theta0=90/180*pi;f0=2*Omega*sin...
  • 动图一般有两种格式.gif以及.avi,都能拥有更好的展示效果 %% avi close all; clear all; aviobj = VideoWriter('test.avi','Uncompressed AVI'); open(aviobj) t = linspace(0,2.5*pi,40); fact = 10*sin(t); ...

空空如也

空空如也

1 2 3 4 5 6
收藏数 117
精华内容 46
关键字:

matlab制作gif

matlab 订阅