使用matlab遇到灰度图像的问题

来源:百度知道 编辑:UC知道 时间:2024/06/20 14:58:42
我在使用matlab时,需要对一副图像进行处理:
在中workspace里面,图像value是:<128*128*3 unit8> class是:unit8。
我查看ArrayEditor,里面的数值全是介于0~255.
但是程序运行的Error是:不是二维数组。
我在帮助中看到灰度图像都是二维的啊。请问这是怎么回事?
我是使用截屏截取Word里面的文字,然后用画图板剪切其中一部分使用。我发现这样弄出来图片的看起来是灰度图片,但是用matlab的imread读取后,在workspace里面,图像的value却如上所说。
请高手告诉我这是为什么啊

其实我是想问:为什么ArrayEditor里面的数值全是介于0~255.,看起来是二维的,不知道那个3杂查看。算了,就这样了,谢谢。
两位说的都有些道理,只是不好取舍啊。

“cavalier_man”说的我也看到了,不明白

都*3了还是灰度图像吗
显然是rgb图像,虽然看起来是黑白的的
比如你的图像矩阵是A
用这个命令A=rgb2gray(A);
就把rgb图像转化成灰度图像了。

imread()读入的是rgb,得用rgb2gray()才能转为灰度图。
128*128*3的3就是R、G、B

呵呵,我也遇到了这个问题耶!我用imfinfo查看了图像的colortype居然是indexed,我的图像是用RGB2GRAY转的一个JPG图像,也是处理起来有问题,你也可以先查看一下图像属性,然后看是不是图像不是灰度图像,如果是个索引图好像是不行,我目前也还不知道是怎么回事,明明用函数转换过的,怎么没转过来。