ITPub博客

首页 > 大数据 > 数据分析 > Matlab中GIF和AVI文件生成技术及FRFT动画实例

Matlab中GIF和AVI文件生成技术及FRFT动画实例

数据分析 作者:tianyi0815 时间:2014-02-18 12:58:00 0 删除 编辑

  为了在项目PPT制作时突出仿真效果,小编就学习了GIF和AVI文件的maltab生成技术,并在FRFT从阶次0到阶次1的变化过程为例来进行仿真验证,与各位需要的朋友一起分享。

  1. MATLAB里要生成动态图像时关键技术

     MATLAB里要生成动态图像关键有两个:一个是图像数据,要准备多幅同样大小的图像或者将图像数据变化的过程保存下来;其二是正确调用imwrite函数,最主要有两个属性,1是DelayTime,控制图像切换的间隔,2是LoopCount,用于设置图像默认的循环次数,默认是无穷次,即不断循环,若要手动设置此值,0代表循环一次,1代表循环两次,以此类推。  

  2. 图像信息的不同表示 

      frame 包含RGB图像信息和颜色映射表 

      image 只是RGB图像

      indexed image 索引图像是一种把像素值直接作为RGB调色板下标的图像。索引图像可把像素值直接映射为调色板数值。

     调色板通常与索引图像存储在一起,装载图像时,调色板将和图像一同自动装载。

  3. 索引模式和灰度模式的比较

     索引模式和灰度模式比较类似,它的每个象素点也可以有256种颜色容量,但它可以负载彩色。索引模式的图像最多只能有256种颜色。当图像转换成索引模式时,系统会自动根据图像上的颜色归纳出能代表大多数的256种颜色,就象一张颜色表,然后用这256种来代替整个图像上所有的颜色信息。

  4. GIF和AVI文件生成所需的常用函数的功能介绍

     (1)getframe

      getframe函数可将当前图形窗口作为一个画面取下并保存,格式为:m=getframe。它将每一帧画面信息数据截取下来整理成列向量。该函数截取图形的点阵信息,图形窗口的大小,对数据向量的大小影响较大,窗口越大,所需存储容量越大。而图形的复杂性对数据容量要求没有直接的关系。

      (2)moviein

     函数m=moviein(n)用来建立一个足够大的 n 列的矩阵 m,用来保存 n 幅画面的数据,以备播放。

      (3)movie

      movie(m,k)以每秒 k 幅图形的速度播放由矩阵 m 的列向量所组成的画面。

      (4) movie2avi

      功能:保存动画-生成avi格式的电影文件

      详解:  movie2avi(mov,'filename.avi')

              mov由getframe获得,生成文件名为filename.avi的视频文件

              一般格式:

                    for i=1:n

                    figure(i)

                    F(i)=getframe;

                    end;

                    movie2avi(F,'filename.avi');

      其他的函数可用help function来具体的查询。

  5. 动画实例:分数阶Fourier变换的三维动态图

       测试信号: 矩形窗和chirp信号

       仿真软件: matlab R2009a

仿真主程序:

     

仿真需要用的其他函数程序:

  (1)函数MM

  

 (2)函数frft

  

  

  

仿真结果:

  仿真信号为:矩形窗

  

仿真信号为chirp信号 与上面的结果类似

仿真时注意事项:

(1)如果想要显示电影动画,可将有%%xx开头的每一行更正为程序语句,并将GIF文件生成的程序改为注释语句。

(2)动画图片的保存格式为gif,多次仿真生成的动画图片是累加的形式,需要用相应的gif制作软件进行处理。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22126346/viewspace-1110377/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2009-07-16