Matlab保存double图像,解决imwrite与imshow不一致的问题

这篇具有很好参考价值的文章主要介绍了Matlab保存double图像,解决imwrite与imshow不一致的问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

通常情况下,我们输入的图像是 unit8 格式,而 Matlab 为了提高运算时的精度,都会把图像转为 double 类型。

但是我们在使用 imwrite 保存图像时,如果直接使用 double 类型,会导致图像变成二值图像。而且此时使用 imshow 查看的话,显示出来的图像还是正常的。

为了解决这个问题,需要对double图像进行归一化:

Orimax = max(max(img));
Orimin = min(min(img));
saveImg = img./(Orimax-Orimin+eps);

其中 img 为输入图像,saveImg 为输出图像,归一化之后再保存saveImg就正常了,亲测有效。文章来源地址https://www.toymoban.com/news/detail-699674.html

到了这里,关于Matlab保存double图像,解决imwrite与imshow不一致的问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 关于OpenCV中cv2.imwrite保存的图片是全黑色的解决方案

    原因:image图片是0-255,而imwrite保存图片的时候把图片标准化了,也就变为0-1,对于这个问题,只需要修改一下imwrite的输入就好,也就是括号后半部分那个参数*255,如下: 注意:括号里边的前半部分是自己起的文件名,后半部分“img_light”改成你自己的图像名。 比如我读入

    2024年02月16日
    浏览(41)
  • Matlab 保存指定像素大小的图片, 为什么保存图的实际大小与设置的不一致?

     matlab使用getframe函数保存指定像素大小的图片。 使用 set(gcf, \\\'position\\\', [124,124,800,800]);设置图片位置和大小,可将图片保存为256x256大小。 (代码第3行) 仅把\\\'position\\\'参数从124改成125时,不能保存为期望的256x256大小,反而是320x320大小,这是为什么??(代码第4行) 试试其他几

    2024年02月12日
    浏览(46)
  • opencv imwrite()保存指定路径

    cpp为例 第32行为相对路径,当前工作目录为根目录(指VS的工程根目录、vscode打开的文件夹目录)。 也可以使用绝对路径,如 注: imwrite()不会创建文件夹 如上相对路径的例子中,理想情况下图片会保存到snapPhotos文件夹内。但若不存在snapPhotos文件夹,则 不会做任何事(也不

    2024年02月11日
    浏览(36)
  • 解决使用傅里叶变换开源库fftw分析音频频谱结果与matlab或audacity不一致的问题

    找的一些demo输出结果与实际结果相差巨大,修复后效果如下: 采用一个采样率48000,精度16bit,单通道的46Hz,振幅为32767的正弦波测试(理论上应该得输出一个一模一样的正弦波)。输出如下图,可以看到和matlab或audacity差不多。 fftw测试结果, audacity输出结果: 源码如下:

    2024年02月03日
    浏览(39)
  • VScode中运行python时,使用matplotlib的plt.imshow()不显示图像 的参考解决方法

    自己的测试环境 Ubuntu20.04 自己使用VScode中运行python程序时,python程序中调用 matplotlib 的 plt.imshow() 不能显示图像的情况。 出现这种情况的解决方法很简单,在最后一个 plt.imshow(image) 的后面增加一个 plt.show() 即可解决问题。 [1] 灵犀智库. code9:VScode的python使用matplotlib的plt.sh

    2024年01月22日
    浏览(55)
  • Matlab报错pcolor矩阵维度不一致(三维图像绘制)

    首先来说 pcolor 是可以很好的实现三维图像的: 简单来说,原来我们的数据是这样的: 我们需要把数据换成矩阵的形式,像下面这样: 你看,x=1,y=10,对应的z就是1,我们就是要换成这样的矩阵形式。下面说怎么换,以我的例子来说,我的x是50031✖1的矩阵,y是50031✖1的矩阵

    2024年02月05日
    浏览(42)
  • 解决opencv中使用cv2.imshow不显示图片问题

    在使用opencv中的cv2.imshow显示图片的时候总会出现如下错误: The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Cocoa support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function ‘cvShowImage’ 查找了很多资料发现是在安装opencv的时

    2024年02月07日
    浏览(44)
  • Gson int类型被转换成double问题解决(完美解决)

    1.1、BaseResponse类 1.2、不做任何处理,直接用Gson.fromJson解析 1.3、解析结果 1.4、问题 Int类型的\\\"ints\\\"被转换成了double类型、Long类型的\\\"longs\\\"也被转换了 二、解决方案 2.1、旧的(网上千篇一律的复制方案, 其实没有任何卵用 ) 网上千篇一律就是新建TypeAdapter接口的子类,手动转换。

    2024年02月11日
    浏览(51)
  • Matlab imagesc函数保存图像去除图像白边(文末附上参考代码)

    MATLAB 通过imagesc()函数绘制图像,绘制效果如下:  对图像进行保存出现白色边框,如下: 解决方法:对于imagesc()函数的输出图像,只需要在imagesc()画图语句后面添加下面两句语句: set(gcf,\\\'Position\\\',[300 300 500 500]); set(gca,\\\'Position\\\',[0 0 1 1]); 对于gcf: Position后面指定的位置[nums1 num

    2024年02月06日
    浏览(60)
  • MATLAB不显示figure绘图窗口但保存图像的方案

    MATLAB不显示figure绘图窗口但保存图像的方案,代码如下: figure的参数选项及含义如下: Name : 设置 Figure 窗口的标题。 NumberTitle : 控制是否显示 Figure 窗口的序号和标题。 Color : 设置 Figure 窗口的背景颜色。 Position : 设置 Figure 窗口在屏幕上的位置和大小。 Visible : 控制 Figure 窗

    2024年02月11日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包