1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > MATLAB实现将图片转化为gif格式的动画

MATLAB实现将图片转化为gif格式的动画

时间:2019-05-09 01:59:57

相关推荐

MATLAB实现将图片转化为gif格式的动画

MATLAB实现将图片转化为gif格式的动画

gif格式的动画实质上就是连续播放一系列的图片来实现的。所以将图片连接起来保存到gif格式的文件中即可实现。

通用格式:

%% 保存为GIF格式clear;clc;close all;t = 0:0.5:10; % 设置间隔filename = 'test.gif'; % 打开或者创建一个gif文件for i = 1:length(t)%%% 绘制图像或者读取图像%%% 写入gif过程CurrFrame = getframe; % 获取像素,否则无法显示动画im = frame2im(CurrFrame); [A,map] = rgb2ind(im,256); % 将RGB图像转换为索引图像if i == 1imwrite(A,map,filename,'gif','LoopCount',Inf,'DelayTime',0.1); % DelayTime表示写入的时间间隔elseimwrite(A,map,filename,'gif','WriteMode','append','DelayTime',0.1);endend

简单示例:将红心保存为gif格式的图像。

%% 将小红心保存为GIF格式clear;clc;close all;t = 0:0.5:10; % 设置间隔filename = 'test.gif'; % 打开或者创建一个gif文件for i = 1:length(t)% 动画效果c = (1+0.3*cos(2*t(i)));th=0: pi/50: pi;phi=0: pi/50:2* pi;[Th, Phi]=meshgrid(th, phi);X=0.9* abs(Th).* sin(Th).* cos(Phi)*c;Y=abs(Th).* sin(Th).* sin(Phi)*c;Z=abs(Th).* cos(Th)*c;surf(X,Y,Z)axis equalaxis([-3 3 -3 3 -4 1]);shading interpcolormap([1 0 0])light('Position',[2 1 2])% 写入gif过程CurrFrame = getframe; % 获取像素,否则无法显示动画im = frame2im(CurrFrame); % [A,map] = rgb2ind(im,256); % 将RGB图像转换为索引图像if i == 1imwrite(A,map,filename,'gif','LoopCount',Inf,'DelayTime',0.1); % DelayTime表示写入的时间间隔elseimwrite(A,map,filename,'gif','WriteMode','append','DelayTime',0.1);endend

效果演示:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。