如何在MATLAB中创建动画GIF图像?

3,386次观看(过去30天)
我想知道MATLAB中是否有创建动画GIF的功能。

接受的答案

MathWorks支金宝app援小组
编辑:MathWorks支金宝app援小组 2022年3月28日
在MATLAB 2022a中,导出为GIF格式是支持的金宝appexportgraphics函数使用' Append '选项。例如:
X = 0:0.01:1;
P = plot(nan,nan);
p.XData = x;
N = 1:0.5:5
p.YData = x.^n;
exportgraphics (gcf“testAnimated.gif”“添加”,真正的);
结束
对于R2022a之前的版本,请遵循上的示例“写入动画GIF”imwrite参考页面。
15个评论
环宇
环宇 2022年7月2日
谢谢你的评论,我已经使用了 imwrite 成功生成GIF。

登录评论。

更多答案(3)

乍得格林
乍得格林 2017年6月4日
编辑:MathWorks支金宝app援小组 2022年9月25日
或者,对于一个更简单的选项,使用 gif 文件交换功能。
1评论
会里夫斯
会里夫斯 2022年7月25日
...如果你操作的是图形窗口而不是图像数据?

登录评论。


沙拉伊
沙拉伊 2017年5月1日
编辑:乍得格林 2018年10月17日
X = 0:0.01:1;
图(1)
文件名=“testnew51.gif”
N = 1:0.5:5
Y = x.^n;
情节(x, y)
drawnow
帧= getframe(1);
Im = frame2im(帧);
[imind,cm] = rgb2ind(im,256);
如果N == 1;
imwrite (imind,厘米,文件名,“gif”“Loopcount”、正);
其他的
imwrite (imind,厘米,文件名,“gif”“写模式”“添加”);
结束
结束
2的评论
范贾
范贾 2021年11月11日
谢谢你!这帮助我为我的学生创建了一个动图。

登录评论。


亚历克
亚历克 2013年12月19日
“当写入多帧GIF图像时,X应该是一个4维的m -by- n -b金宝appy-1- P数组,其中P是要写入的帧数。”
但是,如果我试图传递一个m × n × 3 × p,它似乎把每个RGB颜色通道作为一个单独的灰度帧。现在有办法写一个动画彩色GIF没有一个循环在帧?
2的评论
为副总经理
为副总经理 2022年7月25日
编辑:为副总经理 2022年7月25日
MIMT gifwrite()用于从4D数组中写入I/IA/RGB/RGBA和索引彩色图像。MIMT gifread()可以以最小的麻烦读取图像。
如果你愿意的话,注意一下大纲 GIF文件的版本要比R2018a更新——无论你使用的是什么工具。如果您使用的是更新的版本,则无法这样做 正确 阅读大多数多帧彩色GIF文件,除非你做了这样的努力。
将帧拼接在一起以生成颜色映射是一个坏主意,因为这意味着没有帧可以有唯一优化的局部颜色表。序列上的颜色内容越动态,整个图像看起来就越差。

登录评论。

类别

了解更多动画帮助中心而且文件交换

下载188bet金宝搏

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!