关于MATLAB读入图像的像素值出错问题(解决过程中发现:保存了假的.png图像)

Posted 实在人dx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于MATLAB读入图像的像素值出错问题(解决过程中发现:保存了假的.png图像)相关的知识,希望对你有一定的参考价值。

我真的好心累啊!
原图:

经过简单的MATLAB读入语句imread(path)后,发现读进来的图变成了下面的样子。这图完全不能用好吗!!!!

离谱的是我之前的测试图都没问题,这是我才从哈佛医学图像网站中下载的,也对比了和之前测试图的图片属性。这不是一样的吗???

我又查看了一下像素值,发现读入图像的像素值居然变小了????那么以这个为切入点看如何去解决吧

嗯,关于为何像素值变小的问题我没找到解决方案。

所以我换了个解决思路,用完整路径在MATLAB中查看了一下图像信息,

imfinfo('F:\\传统图像融合方法\\SUCCESS\\CNN\\test_imgs\\harvard\\SPECT_MRI\\mri\\1.png') %获取图像文件的信息

发现:

哈!?GIF?

再看看正确图的信息:

这俩差别有点大啊。。

接着我用画图工具打开我读入出错的图像,打算重新保存成.png格式试试,点另存为时发现

???另存为居然默认是gif格式?我官网存的是假的png吗。。。
经过一通流畅的另存为操作后我打算回MATLAB重新读取这张图像看看效果

读入正确了。。。这…崩溃一下

我下了173对图像,相当于173*2=346张图像,我得手动的再一个个放入画图工具进行另存为操作。还不知道下的pet图像对是不是这情况,如果是的话那么346+40=386张图像要重新另存为…。好的,一上午的时间已经被安排满了,让我哭一会儿去

我不知道这是什么情况,而且python读取这组数据完全没问题,在python中能成功跑通。网上我找遍了看是否有解决方法,但是没发现和我遇到同样错误的。

或许我是首位遇到这个bug的幸运儿?真是荣幸之至!

此坑放心踏,在下先踩为敬

以上是关于关于MATLAB读入图像的像素值出错问题(解决过程中发现:保存了假的.png图像)的主要内容,如果未能解决你的问题,请参考以下文章

matlab中如何求一个图像的灰度级

图像直方图均衡化

matlab 关于图像处理的投影法是啥?

如何用matlab计算二值化图中白色区域的像素点个数

Matlab vs C# 图像像素值

如何利用matlab导入并提取jpg彩色图像像素点的坐标及其RGB值?想要完整的编码。谢谢哈。