Matlab 将计算结果制作成 gif 动画

引言

求解包含时间的偏微分方程 (组) 将得到随着时间变化的数值结果, 把这样的数据制作成 gif 动画并结合到幻灯片中, 在毕业答辩、小组讨论、课堂教学等场合有着广泛的应用。生动的彩色 gif 动画具有很强的表现力, 令人刮目相看, 大大提高了报告人所讲述理论结果的直观性、生动性、观赏性。

函数介绍

生成 gif 动画主要用到 444 个函数: getframeframe2imrgb2indimwrite

  1. getframe 函数的一般调用形式为: F=getframe(h), 其作用是截取句柄为 h 的窗口内的一帧图像。

  2. frame2im 函数的作用是把一帧截图转为图像数据。

  3. rgb2ind 函数的作用是将 RGB 图像转换为索引图像, 一般调用形式为: [X, map]= rgb2ind(RGB,n) 。其中, Xmap 分别为转换后的图像数据和颜色表数据, RGB 为转换前的图像数据, n 指定 map 中的颜色数。

  4. imwrite 函数的作用是将图像数据写入图像文件, 一般调用形式为: imwrite(X,map,filename,fmt,Param1,Val1,Param2,Val2...)。其中, Xmap 意义同上, filename 为文件名, fmt 为文件格式,Param1,Val1,Param2,Val2... 为若干可选参数及其取值。如:参数 LoopCount 为动画的循环播放次数, 这里设为 inf, 即无穷大。参数 DelayTime 为每帧间隔时间, 单位秒。参数 WriteMode 为写入文件的模式, 有覆盖 overwrite (默认) 和追加 append 两种选择。

Matlab源代码

生成 gif 动画的示例代码如下:


clear
clc
close
x=-1:0.02:1;y=x;
[X,Y]=meshgrid(x,y);
filename='test.gif';
for a=1:10u=a*exp(-10*(X.^2+Y.^2));mesh(x,y,u),axis([-1 1 -1 1 0 10]),drawnowim=frame2im(getframe(gcf));[A,map]=rgb2ind(im,256);if a==1%先以覆盖模式写入指定的gif文件imwrite(A,map,filename,'gif','LoopCount',Inf,'DelayTime',0.1);else%再以追加模式将每一帧写入gif文件imwrite(A,map,filename,'gif','WriteMode','append','DelayTime',0.1);end
end

运行代码之后在当前目录下生成 gif 文件, 该动画显示了一个三维高斯函数的峰值逐渐增大的过程。

参考文献

张晓.《Matlab 微分方程高效解法:谱方法原理与实现》.机械工业出版社.


本人水平有限, 若有不妥之处, 恳请批评指正.

作者邮箱: turingscat@126.com

Matlab 将计算结果制作成 gif 动画相关推荐

  1. 如何把视频制作成gif动画?仅需两招在线截取gif动画

    Gif动画表情包作为日常常用的图片,相信大家都很好奇这种图片是怎么制作的吧!很简单,教大家两招在线制作GIF动画工具-[GIF中文网],上传一段视频轻松一键就能在线完成视频转gif(https://w ...

  2. php生成gif1009php生成gif,怎样将几张图片做成会动的GIF的动态图像?GIF动画制作软件,将图片制作成GIF动图...

    打开软件找到上方菜单栏的"help"然后点击"registration",打开注册页面,我们回到刚刚程序包的位置,找到一个名为"Keymaker.ex ...

  3. 【MAYA】如何用MAYA将mixamo中导出的动画制作成RootMotion根骨骼动画

    如何用MAYA将mixamo中导出的动画制作成RootMotion动画 文章目录 一.关于模型 1.mixamo快速绑骨 二.关于动画 1.为绑定好骨骼的模型\动画添加根骨骼 2.Rootmotion ...

  4. c语言静态图片做成动态效果,怎样把图片做成动态图 两张静态图片加过渡效果制作成gif动图...

    近日有朋友问小编说:有两张带文字的图片文件,想要制作成gif格式的动图,并且这两张图片要加上自然的过渡效果,这样怎么制作呢?其实咱们狸窝家园也是有挺多图片制作成gif动图的方法的,只是要添加自然的过渡 ...

  5. 如何将图片序列化_PS如何将图片制作成gif动态图 ps制作gif动态图教程

    想要制作gif动态图片,为何不试试万能的PS呢!使用PS可以帮助用户快速轻松的制作gif动图,操作简单又方便.那么如何利用PS快速将图片做成gif动态图,其实方法是很简单,制作这种gif动图其实就是把 ...

  6. 怎样把视频中的一小段制作成 GIF动图

    平常生活中大家聊天肯定会发现有很多斗图高手,不管是家人群.同学群还是好友群,从不缺乏这样的人,大多数用来斗图的图片都是GIF动图,GIF动图即有趣又形象,像小视频一样,只不过它是图片格式.大家对GIF ...

  7. 怎么把视频制作成GIF动态图?这几种制作方法很简单

    怎么把视频制作成GIF动态图呢?相信大家在日常的聊天中喜欢使用各种表情包,一旦网络上出现一些有趣的热梗视频时,就会出现很多相关的表情包.我们也想将自己的视频或者是一些有趣的视频制作成GIF动态图应该怎 ...

  8. 如何将mp4视频制作成gif表情包

    如何将mp4视频制作成gif表情包,我们需要先在手机上安装应用程序"王者剪辑app",打开应用并进入"gif表情包"功能中, 然后导入视频, 选择需要转为gif ...

  9. 基于MATLAB的多进制数字调制信号的矢量星座图分析

    1 前言 通信即传输信息,进行信息的时空转移.通信系统的作用就是将信息从信源发送到一个或多个目的地.实现通信的方式和手段很多,如手势.语言.旌旗.烽火台和击鼓传令,以及现代社会的电报.电话.广播.电视 ...

最新文章

  1. CSS中background-position的使用
  2. 1.4 获取字符串长度(length())
  3. Go go-metrics
  4. 167. Two Sum II - Input array is sorted 两数之和 II - 输入有序数组
  5. maven学习(上)- 基本入门用法
  6. 基础知识回顾——异常处理
  7. python俄罗斯方块课程设计报告_用python实现俄罗斯方块
  8. .NET Core开发实战(第5课:依赖注入:良好架构的起点)--学习笔记(下)
  9. eclipse没有日志_强化公共DHT以抵抗eclipse攻击,ipfs官方还说了什么?
  10. --4、实验室设备管理(表)
  11. 目标检测发展路程(一)——Two stage
  12. C语言实现单链表面试题汇总
  13. 中国国家高速公路网详细布局
  14. 10款炫酷的HTML5动画特效
  15. 乐橙等待登录返回超时_等待登录返回超时什么意思
  16. 更改主机文件引发思考 防火墙URL过滤无奈(转)
  17. Atitit it理论不可能三角“:“安全-方便-廉价 目录 1. 不可能三角 1 2. 三元悖论 1 2.1. 培恩洛兹三角形 2 2.2. 彭罗斯三角(Penrose triangle) 2 2.
  18. Scrapy保存中文字符到json文件时编码设置
  19. 内部排序的方法实验报告_十大经典排序算法Python版实现(附动图演示)
  20. VASP、Lammps快速上手神器——MedeA软件

热门文章

  1. Java使用iText生成word文 表格、图片、表格里插图片、页眉、页脚、图片页脚、(学习帖)
  2. 学习笔记——【python】GetGeoTransform()使用,gdal截取图像,使用GDAL进行影像投影坐标、地理坐标、图上坐标的转换
  3. 微信真的在后台频繁读取用户相册吗?
  4. c语言用键盘弹钢琴,【游戏】用键盘弹钢琴(大家都来试试吧)
  5. cocos2d-x公开课视频 (感谢 无脑码农和龙灵修)
  6. Android 列表视图制作古诗词
  7. 如何配置系统数据库服务器地址,如何配置系统数据库服务器地址
  8. java实现信用卡免息_Java信用卡分期手续费算法
  9. 扫地机器人黑色耐脏吗_扫地机买什么 篇七:中秋送礼 我最后选择了黑色的石头:石头扫地机近一年使用心得 与 S55黑色版开箱...
  10. [转] 好玩的电子琴(附琴谱)