MATLAB图像处理技巧

news2024/11/27 4:21:50

MATLAB图片处理------动态绘图

  • 1. 动态绘图
  • 2. XXXXX

1. 动态绘图

在这里插入图片描述
主要用到四个函数,分别为getframe、frame2im、rgb2ind以及imwrite:
1.getframe:获取当前绘图窗口的图片作为影片帧;
2.frame2im:从单个影片帧 F 返回索引图像数据 X 和关联的颜色图 Map;
3.rgb2ind:将RGB图像转换(2同to音)为索引(index)图像;
4.imwrite 函数就是起到将循环中得到的图片依次写入到GIF格式的图片中,其中参数‘DelayTime’表示相邻两张图片播放的间隔时间,单位秒,一定程度上决定了GIF动图播放时的流畅程度。

代码如下: 也可参考龙行天下288

f2 = figure;
for n = 1 : size(Qmass_gif,2)
    
    x_Q = 1 : 1 : size(Qmass_gif,1);
    y_Q = Qmass_gif(:,n);
    l = (n-1) * 50;
    
    set(f2, 'Color', 'white');                                  % 设置图片窗口背景颜色为白色
    plot(x_Q, y_Q, 'LineWidth', 1.5, 'Color', 'b'); 
    % 绘制x,y曲线,并设置线宽,曲线颜色,曲线图例名称
    set(gca,'FontSize',12,'FontName','Bookman Old Style');      % 设置图片中字体的大小,样式
    xlabel('cell number', 'FontSize',14);                       % 设置x轴标签
    xlim([1, size(Qmass_gif,1)]);                               % 设置y轴标签
    ylim([0, 0.015]);                                           % 设置y轴标签
    ylabel('mass flow kg/s', 'FontSize',14);                    % 设置y轴标签
    legend(['inter=',num2str(l)],'FontSize',14, 'box', 'off');  % 为图片加上图例
    title('GIF: Flow distribution)', 'FontSize',14);            % 增加图片的标题
    drawnow;                                                    % 立即刷新当前绘图窗口,这是matlab绘图中动态展示的关键
    F = getframe(f2);                                           % 获取当前绘图窗口的图片作为影片帧
    Im = frame2im(F);                                           % 返回与动态图片相关的图片数据
    [A, map] = rgb2ind(Im, 256);                                % 将RGB图片转化为索引图片
    filename = 'testAnimated.gif';                              % GIF图片的保存路径
    if n == 1
        imwrite(A, map, filename , 'gif', 'Loopcount', Inf, 'DelayTime', 0.1);
        % 将第一张图片写入GIF文件中,并且将GIF播放次数设置成无穷,即保存的GIF图会一直动下去
    else
        imwrite(A, map,filename ,'gif','WriteMode','append','DelayTime',0.1);
        % 依次将其他的图片写入到GIF文件当中,DelayTime为时滞0.1s
    end
    
end

2. XXXXX

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1319064.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【JavaEE】多线程(5) -- 阻塞队列

目录 1.阻塞队列是什么? 2.生产者消费者模型 3.标准库中的阻塞队列 4.阻塞队列的实现 1.阻塞队列是什么? 阻塞队列是⼀种特殊的队列. 也遵守 "先进先出" 的原则 阻塞队列能是⼀种线程安全的数据结构, 并且具有以下特性: 当队列满的时候, 继续⼊队列就会阻塞, …

MATLAB break语句||MATLAB continue语句

MATLAB break语句 MATLAB中 break 语句用于终止 for 或 while 循环的执行,当在循环体内执行到该语句的时候,程序将会跳出循环,继续执行循环语句的下一语句。 注意:在嵌套循环中,break 退出只能在循环发生,后…

Mybatis 动态SQL插入操作②

结合上个博客一起看哦 上篇博客我们说.用户在表中插入数据的时候,有的数据可能不想插入,我们就需要设置,当用户插入这个字段的数据的时候就显示,不插入的话就为null,比如性别不想插入,那么 XML 代码如下 <?xml version"1.0" encoding"UTF-8"?> &…

mysql复习笔记04(小滴课堂)

mysql的存储引擎介绍 基于表的。 查看数据库支持的引擎&#xff1a; 查看支持的版本&#xff1a; 查看表的引擎&#xff1a; 查看所有表的存储引擎&#xff1a; 也可以修改默认引擎。 这有一张数据量庞大的表。 表是通过执行shell脚本快速创建的. 创建的表. 执行成功后会有个s…

Redis设计与实现之事务

一、事务 Redis 通过 MULTI 、DISCARD 、EXEC 和 WATCH 四个命令来实现事务功能&#xff0c;本章首先讨 论使用 MULTI 、DISCARD 和 EXEC 三个命令实现的一般事务&#xff0c;然后再来讨论带有 WATCH 的事务的实现。 因为事务的安全性也非常重要&#xff0c;所以本章最后通过…

华为组播配置案例

igmp-snooping主要用于生成二层组播表项&#xff0c;防止交换机全部接口都发组播报文 PC端配置&#xff1a; 组播源配置&#xff1a; R1 interface GigabitEthernet0/0/0 ip address 10.0.0.1 255.255.255.0 pim dm interface GigabitEthernet0/0/1 ip address 192.168.0…

面向未来的数据安全策略

人工智能&#xff08;AI&#xff09;已经成为一项突破性技术&#xff0c;可以彻底改变各个领域&#xff0c;并引发就业市场的强烈焦虑。毫不奇怪&#xff0c;它对技术和运营的变革性影响为提高效率、准确性和决策提供了巨大的可能性。 它还为黑客提供了巨大的机会。网络犯罪分…

C++学习笔记(十二)------is_a关系(继承关系)

你好&#xff0c;这里是争做图书馆扫地僧的小白。 个人主页&#xff1a;争做图书馆扫地僧的小白_-CSDN博客 目标&#xff1a;希望通过学习技术&#xff0c;期待着改变世界。 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 文章目录 前言 一、继承关系…

带PWM 调光的线性降压 LED 恒流驱动器

一、基本概述 TX6410B是一种带 PWM 调光功能的线性降压 LED 恒流驱动器&#xff0c;仅需外接一个电阻就可以构成一个完整的 LED 恒流驱动电路&#xff0c;调节该外接电阻可调节输出电流&#xff0c;输出电流范围为 10~2000mA。TX6410B内置 30V 50 毫欧 MOS。TX6410B内置过热保…

【微服务】Spring Aop原理深入解析

目录 一、前言 二、aop概述 2.1 什么是AOP 2.2 AOP中的一些概念 2.2.1 aop通知类型 2.3 AOP实现原理 2.3.1 aop中的代理实现 2.4 静态代理与动态代理 2.4.1 静态代理实现 三、 jdk动态代理与cglib代理 3.1 jdk动态代理 3.1.1 jdk代理示例 3.1.2 jdk动态代理模拟实现…

医疗智能化革命:AI技术引领医疗领域的创新进程

一、“AI”医疗的崛起 随着人工智能&#xff08;AI&#xff09;技术的崛起&#xff0c;"AI"医疗正在以惊人的速度改变着医疗行业的面貌。AI作为一种强大的工具&#xff0c;正在为医疗领域带来前所未有的创新和突破。它不仅在医学影像诊断、病理学分析和基因组学研究等…

Ps:动作 - 基础篇

Ps 中的动作 Action可以让你自动、连续地完成多个操作&#xff0c;包括基础的调色、复杂的合成等。对于经常要执行的任务&#xff0c;使用动作&#xff0c;可大大提高工作效率。 Ps菜单&#xff1a;窗口/动作 Window/Action 快捷键&#xff1a;Alt F9 ◆ ◆ ◆ 认识动作面板…

字节开源的netPoll多路复用器源码解析

字节开源的netPoll多路复用器源码解析 引言NetPollepoll API原生网络库实现netpoll 设计思路netpoll 对比 go net数据结构 源码解析多路复用池初始化Epoll相关API可读事件处理server启动accept 事件客户端连接初始化客户端连接建立 可读事件等待读取数据 可写事件处理客户端启动…

活动 | Mint Blockchain 将于 2024 年 1 月 10 号启动 MintPass 限时铸造活动

MintPass 是由 Mint Blockchain 官方发行的 Mint 网络和社区的 NFT 通行证&#xff0c;将在 2024 年 1 月份启动限时铸造活动。今天这篇文章会着重向大家介绍即将举办的 MintPass 活动的基础信息。 MintPass 有 2 种类型&#xff1a; 类型 1&#xff1a;Mint Genesis NFT Mint…

游戏运行中突然掉线是什么原因导致的

游戏平稳运行的原因只有一个&#xff0c;掉线的原因各有个的不同。这些不同的原因有常见&#xff0c;也有不常见的。但不管出于什么原因的掉线&#xff0c;带来的损失又是相同的。 首先最常见的原因就是攻击造成的 像CC&#xff0c;DDOS。CC会造成服务器资源的浪费&…

MDK编译过程和文件类型

MDK是一款IDE软件&#xff0c;具有&#xff0c;编辑&#xff0c;编译&#xff0c;链接&#xff0c;下载&#xff0c;调试等等的功能。 1.编译器介绍&#xff1a; MDK可以编译C/C文件和汇编文件&#xff0c;MDK只是一款IDE软件&#xff0c;那他内部使用的是什么编译器呢&#x…

IDEA中,如何将maven项目变为SpringBoot项目?

第一步&#xff1a;新建Maven工程 这很简单不做过多赘述。 第二步&#xff1a;修改pom.xml文件 分别加入springboot父依赖&#xff0c;web依赖&#xff0c;test测试依赖&#xff0c;maven打包依赖。 <?xml version"1.0" encoding"UTF-8"?> <…

【HTML5、CSS3】新增特性总结!

文章目录 23 HTML5 新增特性23.1 语义化标签23.2 多媒体标签23.2.1 视频<video>标签23.2.2 音频<audio>标签 23.3 input属性值23.4 表单属性 24 CSS3 新增特性24.1 属性选择器24.2 结构伪类选择器24.2.1 选择第n个元素24.2.2 常用的6个结构伪类选择器 24.3 伪元素选…

【设计模式-2.4】创建型——抽象工厂模式

说明&#xff1a;本文介绍设计模式中&#xff0c;创建型设计模式的抽象工厂设计模式&#xff1b; 工厂模式的问题 在【设计模式-2.2】创建型——简单工厂和工厂模式这篇博文中&#xff0c;介绍过飞机大战游戏里&#xff0c;使用简单工厂和工厂模式来创建坦克、飞机、Boss对象…

Pod控制器详解【五】

文章目录 5. Pod控制器详解5.1 Pod控制器介绍5.2 ReplicaSet(RS)5.3 Deployment(Deploy)5.4 Horizontal Pod Autoscaler(HPA)5.5 DaemonSet(DS)5.6 Job5.7 CronJob(CJ) 5. Pod控制器详解 5.1 Pod控制器介绍 Pod是kubernetes的最小管理单元&#xff0c;在kubernetes中&#xf…