用matlab做图像的灰度变换,指令I=rgb2gray(A)执行的时候总是报错,用的是matlab2009a
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/07/04 23:25:38
用matlab做图像的灰度变换,指令I=rgb2gray(A)执行的时候总是报错,用的是matlab2009a
程序是A=imread('D:\Cameraman.bmp');
I=rgb2gray(A);
subplot(2,2,1);
imshow(I);
title('原图');
subplot(2,2,2);
imhist(I);
J=imadjust(I,[],[0.3 0.7],1);
subplot(2,2,3);
imshow(J);
subplot(2,2,4);imhist(J);
报错?Error using ==> rgb2gray>parse_inputs at 82
MAP must be a m x 3 array.
Error in ==> rgb2gray at 35
X = parse_inputs(varargin{:});
Error in ==> xu1 at 2
I=rgb2gray(A);
程序是A=imread('D:\Cameraman.bmp');
I=rgb2gray(A);
subplot(2,2,1);
imshow(I);
title('原图');
subplot(2,2,2);
imhist(I);
J=imadjust(I,[],[0.3 0.7],1);
subplot(2,2,3);
imshow(J);
subplot(2,2,4);imhist(J);
报错?Error using ==> rgb2gray>parse_inputs at 82
MAP must be a m x 3 array.
Error in ==> rgb2gray at 35
X = parse_inputs(varargin{:});
Error in ==> xu1 at 2
I=rgb2gray(A);
这个问题我刚好也遇到过,不一定是楼上说的这种情况,比如说把matlab画的一条曲线以bmp格式保存下来,然后imread之后A也是二维的.
我的理解是这样的,如果图像中颜色种类较少,bmp读取出来会把颜色以索引形式存下来(而不是RGB分量形式).使用 [A,map] = imread(...),A不同位置的数值在map里对应的颜色分量才是该位置的真实颜色.
对于这样的A,做灰度变换只要对map做变换就行了,如matlab里的例子:
[X,map] = imread('trees.tif');
gmap = rgb2gray(map);
figure,imshow(X,map),figure,imshow(X,gmap);
我的理解是这样的,如果图像中颜色种类较少,bmp读取出来会把颜色以索引形式存下来(而不是RGB分量形式).使用 [A,map] = imread(...),A不同位置的数值在map里对应的颜色分量才是该位置的真实颜色.
对于这样的A,做灰度变换只要对map做变换就行了,如matlab里的例子:
[X,map] = imread('trees.tif');
gmap = rgb2gray(map);
figure,imshow(X,map),figure,imshow(X,gmap);
用matlab做图像的灰度变换,指令I=rgb2gray(A)执行的时候总是报错,用的是matlab2009a
matlab中,我用函数rgb2gray,为什么不能将pgm图像转换为灰度图像?是图像用错还是MATLAB装的不完整?
用matlab里的函数rgb2gray进行灰度化,是采用的哪种灰度化方法?(已知的方法有最大值法、平均值法、加权平
用MATLAB实现对灰度图像到彩色图像的变换?
MATLAB进行灰度图像读取时: I=imread('lena.bmp'); IW=rgb2gray(I); 总报错
想问下,在Matlab中RGB图像通过这个指令rgb2gray()转化成灰度图像后,怎么显示这个灰度图像啊
如何利用matlab对图像的某些点的灰度进行变换
怎么用Matlab把一副灰度图像分成一副灰度高的和一副灰度低的图像?求全部程序..
我用SetPixel绘制24位灰度图像的时候为什么是红色的?
急!怎么用matlab读入图像每个点的灰度,然后计算每个点的灰度梯度?
请问一下两幅图像的联合灰度直方图h(A,B)用MATLAB怎样计算啊?是用哪个函数?
求用matlab绘制灰度图像的三维立体图的源代码?