Matlab保存图像的5种方法「建议收藏」

Matlab保存图像的5种方法「建议收藏」此博客转自:https://blog.csdn.net/holybin/article/details/39502077,另外我补充了一些实验结果。1、使用imwrite函数如图像是img,则可以使用imwrite(img,’result.jpg’);这种方法保存图像大小和显示的大小是一样的。下面的方法得到的图像和原图像的大小不一样;下面是用该方法保存的图片我们注意到,用imwrite保存的图…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

此博客转自:https://blog.csdn.net/holybin/article/details/39502077,另外我补充了一些实验结果。

1、使用imwrite 函数

如图像是img,则可以使用imwrite(img,’result.jpg’); 这种方法保存图像大小和显示的大小是一样的。下面的方法得到的图像和原图像的大小不一样;下面是用该方法保存的图片

Matlab保存图像的5种方法「建议收藏」

我们注意到,用imwrite保存的图片只有图片本身,没有其他内容。


2、直接另存为

在figure中使用菜单file->saveas->选择保存形式(可以保存为fig,eps,jpeg,gif,png,bmp等格式)。这个的缺点是另存为的图像清晰度有很大的牺牲。

3、复制粘贴

在figure中使用菜单edit->copyfigure,此时图像就复制到剪贴板了。要注意的是在“copy options”中要选择“Bitmap”。

4、用saveas命令

Matlab提供直接的saveas函数可以将指定figure中的图像或者simulink中的框图进行保存。saveas的格式为:saveas(gca, filename, fileformat),其中的三个参数:

(1)gca:图形句柄,如果图形窗口标题栏是“Figure 3”,则句柄就是3;也可以直接用gcf获取当前窗口句柄。

(2)filename:单引号字符串,指定文件名

(3)fileformat:单引号字符串,指定存储格式

例子:

  1. saveas(gcf,
    ‘save.jpg’); %保存当前窗口的图像

  2. saveas(
    2,
    ‘save.jpg’); %保存Figure
    2窗口的图像

下面是用saveas的实验结果:

Matlab保存图像的5种方法「建议收藏」

    我们可以看到,saveas保存的结果,有白边,下面的print函数保存的结果同样也是有白边的。如果想将生成的图片用于后续的图像处理,建议使用imwrite函数,否则,用哪种保存函数都可以。

5、print函数

print函数操作打印机,使用plot函数后紧接着用print函数来保存图像。print的格式为: print(figure_handle,fileformat,filename),其中的三个参数:

(1)figure_handle:图形句柄,如果图形窗口标题栏是“Figure 3”,则句柄就是3;也可以直接用gcf获取当前窗口句柄

(2)fileformat:单引号字符串,指定存储格式:

png格式: ‘-dpng’

jpeg格式:  ‘-djpeg’,

tiff格式:  ‘-dtiff’

bmp格式:  ‘-dbitmap’

gif格式:’-dgif’

emf无损格式:’-dmeta’

(3)filename:文件名

例1:显示图像并保存

  1. x=-pi:
    2*pi/
    1000:pi;

  2. y=
    cos(
    x);

  3. plot(
    x,
    y);
    print(gcf,
    ‘-djpeg’,
    ‘abc.jpg’) %绘制图像并保存为jpg格式

例2:不显示图像而直接保存

  1. x=-pi:
    2*pi/
    1000:pi;

  2. set(figure(
    1),
    ‘visible’,
    ‘off’);

  3. plot(
    x,
    sin(
    x));
    print(gcf,
    ‘-dpng’,
    ‘abc.png’) %不显示图像直接保存为png格式

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/194288.html原文链接:https://javaforall.net

(0)
上一篇 2025年11月8日 下午8:22
下一篇 2025年11月8日 下午9:01


相关推荐

  • IGMP协议原理_IGMP协议详解

    IGMP协议原理_IGMP协议详解IGMP协议概述IGMP(InternetGroupManagementProtocol)因特网组管理协议,是TCP/IP协议簇中负责IP组播成员管理的协议。IGMP协议运行于主机与主机直接相连的组播路由器之间,主要用于维护组播成员关系。IGMP发展了三个版本:IGMPv1:定义了基本的组成员查询和报告过程。IGMPv2:添加了组成员快速离开的机制。IGMPv3:成员可以指定接收…

    2025年11月18日
    3
  • Trae IDE 新手使用教程:从安装到项目开发全攻略

    Trae IDE 新手使用教程:从安装到项目开发全攻略

    2026年3月16日
    3
  • 俞敏洪沉默,新东方落泪

    俞敏洪沉默,新东方落泪据传,早些年以新东方三位创始人创业为主线故事,风靡一时的电影《中国合伙人》开拍前,剧组曾向电影男主角的原型人物俞敏洪,提出了友好交流的请求。俞敏洪提出最大的意见是:可不可以别把我拍得这么“土鳖”?几十年来,号称农村出身的寒门子弟俞敏洪,其身份发生了重大变化。在公开场合里,他对自己的身世表露出深深的自卑。另一方面,他又被誉为中国留学教父,俨然成为一个农村“凤凰男”逆袭成精英阶级的典型代表。当然,俞敏洪还是新东方的创始人,中国商业洪流里响当当的传奇。“我吃一碗兰州拉面都很开心”。可就是这样一个人,对财

    2025年11月7日
    6
  • Springboot Redis消息队列

    Springboot Redis消息队列RedislistRed 的 list 列表 数据结构常用来作为异步消息队列使用 使用 rpush lpush 操作入队列 使用 lpop 和 rpop 来出队列 rpushRPUSHke value 将一个或多个值 value 插入到列表 key 的表尾 最右边 如果有多个 value 值 那么各个 value 值按从左到右的顺序依次插入到表尾 比如对一个空列表 mylist 执行 RPUSHmylista 得出的结果列表为 abc 等同于执行命令

    2026年3月17日
    2
  • 如何单目运算符和双目运算符以及三目运算符

    如何单目运算符和双目运算符以及三目运算符1 单目运算符 单目运算符是指运算所需变量为一个的运算符 又叫一元运算符 其中有逻辑非运算符 按位取反运算符 自增自减运算符 等 逻辑非运算符 按位取反运算符 自增自减运算符 负号运算符 类型转换运算符 类型 指针运算符和取地址运算符 和 amp 长度运算符 sizeof 2 双目运算符 双目运算符就是对两个变量进行操作

    2026年3月19日
    2
  • RedisClient 安装「建议收藏」

    RedisClient 安装「建议收藏」RedisClient安装下载RedisClient下载地址:https://github.com/caoxinyu/RedisClient安装双击,配置解压目录,并进行解压解压后文件,如图双击redisclient-win32.x86.2.0.exe,即可运行,运行如图…

    2022年10月12日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号