在matlab中如何将bmp图片灰度化,得到灰度矩阵

??? Error using ==> rgb2gray>parse_inputs at 82 MAP must be a m x 3 array. Error in ==> rgb2gray at 35 X = parse_inputs(varargin{:});使用rgb2gray时出现这样的错误,怎么处理啊???求大神指点啊

第1个回答  2019-06-11
  BMP的图像是彩色的,也就是说有RGB三个波段,读出的图像数据是一个M*N*3的数组,如果想把它变成灰度图像的,只要分离出任意RGB中的一个分量即可,例如你的图像是1.BMP,
x=imread('1.BMP');imshow(x);
y=x(:,:,1);
imshow(y);就可以了,不知道你是想怎样把图像变成灰度的,如果三个分量都想要的话,做个计算也可以的,例如把RGB做个平均;y=1/3*x(:,:,1)+1/3*x(:,:,2)+1/3*x(:,:,3);imshow(y);
相似回答
大家正在搜