如何在matlab中生成动画为mpg或加速gif

时间:2013-02-19 03:48:15

标签: matlab animation movie

我正在绘制图上的随机行走点,并尝试通过getframe捕获每一步的运动。收集完所有帧后,我将结果输出为带有movie2avi的avi,但输出文件非常大,无法放入我的演示文稿中。我正在寻找一种方法将电影导出到mp4,任何人都有任何想法?我也尝试使用第三方movie2gif,它在很大程度上保存了大小但是当我玩gif时,它看起来如此不流畅

1 个答案:

答案 0 :(得分:2)

在Matlab的后续版本(例如2012)中,它是通过创建和编写视频对象来完成的。例如,以下代码生成随机移动圆的影片。您可以使用FrameRate调整影片的速度,使用Quality属性调整影片的速度。有关详细信息,请参阅Matlab documentation.

vobj=VideoWriter('MyMovieFile', 'Motion JPEG AVI');
vobj.FrameRate=4;
vobj.Quality=75
open(vobj);
for i=1:100
  plot(rand,rand,'o')
  F=getframe(gcf);
  writeVideo(vobj, F);
  cla(gca)
end
close(vobj)