matlab [x,map]=imread('huoying.png');导入图像后,map为啥会是空矩阵啊!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab [x,map]=imread('huoying.png');导入图像后,map为啥会是空矩阵啊!相关的知识,希望对你有一定的参考价值。

用imfinfo函数打开huoying.png图片应该可以看到,ColorType变量的值是‘truecolor’,说明图片的彩色表示是rgb三通道,不是采用colormap的伪彩色显示,不是索引图,所以map变量为空,用rgb2ind函数转换之后,map就有值了 参考技术A 没有map分量呗。。。这和图像有关。追问

好吧,请问大神什么格式的图像有map分量,什么格式的没有呢?

追答

不是格式,是图像啊,要看图像当时的保存情况的。。。

追问

大神,能不能详细的解释一下,拜托了!

参考技术B 我做的256*256的图片有map分量,而512*512的图片map矩阵为空

用matlab将索引图像转换为RGB图像

>> I=imread('C:\Documents and Settings\hujian\桌面\123.JPG');
>> RGB=ind2rgb(I,map);
然后回车就有问题了,请高手指教!实在想不出来了,做好了,我还要加分的.
可以的话,将二值和灰度一起转换为RGB,那就多谢了!
它是RGB图像,我很确定.但是就是不能正常转换,还有为什么灰度图像不能转换为RGB的呢?

参考技术A [I,map]==imread('C:\Documents and Settings\hujian\桌面\123.JPG');
RGB=ind2rgb(I,map);
试试看。黑白图像和彩色图像的数据都不一样啊。

以上是关于matlab [x,map]=imread('huoying.png');导入图像后,map为啥会是空矩阵啊!的主要内容,如果未能解决你的问题,请参考以下文章

A = imread(filename,fmt)   [X,map] = imread(filename,fmt) 区别

MATLAB中图像处理的一些简单函数

MATLAB函数imread无法读取图像数据!

matlab对图像去噪后怎么求信噪比

matlab中的map语句

MATLAB如何切割图像