第1个回答 推荐于2017-11-28
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);本回答被提问者和网友采纳
第3个回答 2013-03-13
可将你要转换的图像读入到一个矩阵中,然后采用mat2gray函数将此数据矩阵转换为灰度图像。
如:
BMP=imread('图像名.bmp');
K=filter2(fspecial('Sobel'),BMP);
I=mat2gray(K);
imshow(BMP);
figure,imshow(I);