MATLAB制作动图或视频

article/2025/9/22 23:42:03

(来点有用的)MATLAB制作动图或视频

  • 主要函数介绍
  • 情况一:对数据进行操作
  • 情况二:对界面进行操作
  • 其他

by HPC_ZY


在CSDN发现一个类似的居然要VIP才能查看,顿时有点无语,所以自己做了一个。
如题,MATLAB制作动图或视频。主要讲解两种不同的场合:
1)有准备好的图像数据,将其制作成动图或视频;
2)把MATLAB plot或imshow的结果保存为动图或视频


主要函数介绍

  1. 生成动图
% 创建并写入第一帧
imwrite(frame,'test.gif','LoopCount',Inf,'DelayTime',dt);
% 写入后续帧
imwrite(frame'test.gif','WriteMode','append','DelayTime',dt);

'LoopCount’为循环次数,Inf则无限循环;
'DelayTime’为时间间隔,如dt=0.05,则每秒显示20张。
想设置其他参数可查看帮助文件, help imwrite
注意:imwrite写GIF的时候,只支持uint8类型的单通道数据,若为彩色图则需要如下操作

% 将彩色图转为索引图
[I,map] = rgb2ind(RGB,128);
  1. 生成视频
% 创建一个AVI视频文件
myVideo = VideoWriter(myVideo.avi'); 
% 打开文件
open(myVideo);
% 写入视频帧
writeVideo(myVideo,frame);  % frame可以是灰度图或彩色图
% 关闭文件
close(myVideo); 

最常用参数

% 设置帧数
myVideo.FrameRate = fps; 

想设置其他参数可查看帮助文件, help VideoWriter

  1. 导出figure界面
% 获取figure窗口
frame = getframe(gcf);
% 转为彩色图像
im = frame2im(frame);

情况一:对数据进行操作

我们先生成一个测试数据(256张尺寸为256*256的渐变图)

data = zeros(256,256,256,'uint8'); % 注意:imwrite写GIF的时候,只支持uint8类型的数据
for k = 1:255data(:,k+1,k+1) = k;data(:,:,k+1) = data(:,:,k+1)+data(:,:,k);
end
  1. 写为动图
dt = 1/32;
imwrite(data(:,:,1),'test1.gif','LoopCount',Inf,'DelayTime',dt);
for k = 2:256imwrite(data(:,:,k),'test1.gif','WriteMode','append','DelayTime',dt);
end
  1. 写为视频
fps = 32;
myVideo = VideoWriter('test1.avi'); 
myVideo.FrameRate = fps; 
open(myVideo); % 打开
for k = 1:256writeVideo(myVideo,data(:,:,k)); 
end
close(myVideo); 

效果图
在这里插入图片描述


情况二:对界面进行操作

我们绘制一条曲线

x = 0:2*pi/199:2*pi;
y = x.*sin(x).^2;
  1. 写为动图
dt = 1/40;
figure
for k = 1:200plot(x(k),y(k),'r.'),hold onaxis([0,2*pi,0,max(y)]),drawnowframe = getframe(gcf);im = frame2im(frame);[I,map] = rgb2ind(im,128);if k>1imwrite(I,map,'test2.gif','WriteMode','append','DelayTime',dt);elseimwrite(I,map,'test2.gif','LoopCount',Inf,'DelayTime',dt);end
end
  1. 写为视频
fps = 40;
myVideo = VideoWriter('test2.avi'); 
myVideo.FrameRate = fps; 
open(myVideo); 
figure
for k = 1:200plot(x(k),y(k),'r.'),hold onaxis([0,2*pi,0,max(y)]),drawnowframe = getframe(gcf);im = frame2im(frame); writeVideo(myVideo,im); 
end
close(myVideo); 

效果图
在这里插入图片描述


其他

今天也是看到,对于这么简单的知识点,居然还有人设置为VIP可见。感觉为了利益真是不择手段/哭笑……有点感慨。当然,良心博主还是挺多的。

有任何问题欢迎讨论,最后还是把测试代码上传
https://download.csdn.net/download/xsz591541060/11447291
由于很简单,不推荐下载,除非你买了年VIP。


http://chatgpt.dhexx.cn/article/ZmsyFRJm.shtml

相关文章

使用Android制作视频播放器

使用Android制作视屏播放器 目录 使用Android制作视屏播放器前言一、展示预览二、详细步骤1.准备工作2、主界面设计3、主界面java文件4、全屏界面设计 总结 前言 Android小作业,含实现本地视频播放界面,实现全屏播放视频界面,两个界面所采用…

自制计算机教程视频教程,教学视频如何制作/怎么做视频

随着网络的普及,电脑上已经不再单单只有影视剧等由专业人士拍摄与制作的高精良视频,越来越多的普通人也将自己的一些人生小经验或者将一些自己所擅长的知识领域制作成教学视频传入网上,甚至有些老师都将自己所讲授的课程录制成视频传入网上&a…

画中画视频如何制作

最近网络上很流行这个种画中画视频,如何自己可以制作出来一个令人满意画中画视频呢,其他很简单哦,只要找到方法就可以制作出来,不用羡慕别人呢,自己也可以呢,小编现在分享下操作步骤,看下大家有…

滚动字幕怎么制作,视频的滚动字幕如何制作?

相信看到这篇文章的小伙伴都想要给自己的视频添加上滚动字幕的效果,接下来小编就来给大家分享一个可以快速批量制作滚动字幕视频的简单操作方法,一起来看看吧! 第一步,运行媒体梦工厂,切换到【任务剪辑】页面&#xff…

盗版视频网站原理

几年前,包括现在,视频网站各种VIP,VVIP,SUPERVIP,整得跟国内三大运营商的各种逗逼套餐一样让人眼花缭乱。 于是,自己就花了些时间,研究了下盗版的视频网站,并且在自己购买的个人服务器上搭建了成功了。 常…

透明背景视频的制作与应用

基于AR实践的需求,某些项目会需要用到透明视频。本篇介绍透明视频在AE中的制作方法以及在blender中作为材质贴图的应用。 目录 1. AE中透明视频素材的制作 2. 透明视频导入Blender作为模型材质贴图 AE中透明视频素材的制作 【3分钟学会】抠出动漫中动态的人物动…

沙雕短视频制作

1.用到软件: 方法一:使用AE、AI、PS这三个专业软件,优点是你可以随心所欲的创作,有很多特效可以使用,缺点是需要较长的时间学习。 方法二:使用AN、AI、PS这三个专业软件,优点是AN简单好上手&a…

好听又好看!歌曲视频制作,手把手教你制作音乐视频

好听又好看的图片+音乐形式的歌曲视频,简单3步快速搞定,手把手教你具体制作歌曲视频的方法。用到的制作歌曲/音乐视频的工具是数码大师,新手或小白可以很快做好,因为它有很多转场模板而且插入图片、视频、音乐或歌词都很方便。想要亲手制作一份具有纪念意义的歌曲/音乐视频…

web 前端学习之制作网页视频

制作网页视频 1. 准备视频文件2. 引用视频文件3. 完整代码如下4. 问题解决 1. 准备视频文件 先准备好视频文件&#xff0c;放入 img 目录下 2. 引用视频文件 video 是HTML的视频标签&#xff1b; <video width"320" height"240" controls autoplay…

视频剪辑如何快速制作图文视频

手机上如何制作图文视频&#xff0c;我们首先在手机上安装“王者剪辑app”&#xff0c;启动工具并进入智能创作中的“图文视频”&#xff0c; 导入图片源素材或选择自动网络配图&#xff0c;接着输入视频内容文案和配置视频参数&#xff0c;然后点击界面右上角对勾按钮&#…

用python代码制作视频

文章目录 前言安装一个小例子最后 前言 之前制作视频一般都是pr或者是在线制作视频&#xff0c;然后昨天偶然看到了一个python的库—moviepy&#xff0c;现在我们可以写代码来制作视频了。 安装 这个库安装起来很简单&#xff0c;还是老样子pip install moviepy 不过使用win…

同款视频一键制作生成微信小程序源码下载恶搞视频,特效视频,唯美视频等等

大家好给大家带来一款视频制作小程序 这款视频呢可以根据视频模板导入照片或者文字然后一键生成对应的视频 里面包含了N种模板,大家使用过剪映那些软件应该都熟悉吧 这个小程序就相当于里面的一键制作同款视频的功能一样 每一种模板所需的照片或者文字啥的都不同,都会对应生…

AR视频制作

最近在做一个AR视频的项目&#xff0c;就是扫描图片出相应的视频 需要的插件有&#xff1a;高通Vuforia&#xff0c;VideoPlayback 一、资源下载&#xff1a; 这里我们需要准备的资料如下&#xff1a; 1.一段视频&#xff1a; 因为视频一般较大&#xff0c;所以建议大家用格式…

如何搭建视频网站

一、视频网站和普通网站的区别 搭建视频网站和搭建普通网站&#xff0c;在技术实现方案上有很大的差别&#xff0c;因此&#xff0c;当有人问我是否可以采用搭建普通网站的方法搭建视频网站时&#xff0c;我会明确的告诉他们不可以&#xff0c;否者就贻笑大方了。 视频网站与…

搭建视频网站的技术方案

一、视频网站和普通网站的区别 搭建视频网站和搭建普通网站&#xff0c;在技术实现方案上有很大的差别&#xff0c;因此&#xff0c;当有人问我是否可以采用搭建普通网站的方法搭建视频网站时&#xff0c;我会明确的告诉他们不可以&#xff0c;否者就贻笑大方了。 视频网站与普…

设计实现一个漂亮的视频网站

一、任务描述 单位最近要设计开发一个全新的视频网站&#xff0c;用于存放和展示公司的宣传视频和培训视频。具体要求是&#xff1a;1)保存和管理公司现存的2000个左右的视频资源&#xff0c;约5TB的数据量。2)视频播出要清楚流畅&#xff0c;可以在企业内网和互联网上播放3)能…

chrome升级后无法访问iframe页面

现象&#xff1a; Google chrome升级&#xff0c;升级后版本 修改下面设置&#xff1a; chrome://flags/#same-site-by-default-cookies &#xff0c;设置为 Disabled chrome://flags/#cookies-without-same-site-must-be-secure &#xff0c;设置为 Disabled 重启浏览器 …

phpstudy升级apache

目前windows下的phpstudy的最新版本是8.1.0.6&#xff0c;其自带的apache版本是2.4.39。 经过绿盟的安全扫描&#xff0c;爆出近10个漏洞。 怎么修复漏洞呢&#xff1f; 一种方法是下载源码重新编译&#xff0c;这个比较麻烦。 下载最新版的apache可执行文件替换是最好的了。…

Gitlab升级(12.2.1到14.6.4)

背景介绍那些乱七八糟的就跳过吧&#xff0c;直接上干货 一、准备 1.1&#xff1a;确定安装方式 开始纠结于到底是rpm还是yum&#xff0c;后来知道yum相当于对rpm进行了一系列的加壳&#xff0c;目的是解决rpm的依赖问题。那么就果断选择yum方式即可。 当前操作系统环境为c…

简述Synchronized以及锁升级

&#x1f60a; 作者&#xff1a; 一恍过去 &#x1f496; 主页&#xff1a; https://blog.csdn.net/zhuocailing3390 &#x1f38a; 社区&#xff1a; Java技术栈交流 &#x1f389; 主题&#xff1a; 简述Synchronized以及锁升级 ⏱️ 创作时间&#xff1a; 2022年4月29日…