用matlab对图片进行彩色转灰度时出现这样的问题

x=rgb2gray(i)
Error using rgb2gray>parse_inputs (line 81)
MAP must be a m x 3 array.

Error in rgb2gray (line 35)
X = parse_inputs(varargin{:})

首先请检查一下I的维数,[M, N, C] = size(I); 然后看一看C的值,如果C是1说明这是一个单通道的图像;那么用mat2gray(I)就可以将其转化成标准的灰度图
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-09-13
你的i值不是m*3的矩阵,你是不是用i = imread('图片.jpg')命令,如果是的话这就有可能是你这个图片不是rgb图造成的!追问

我的图片是bmp格式的,怎么处理?换格式吗

追答

你可以用Photoshop改一下格式

追问

没有ps怎么办,,现在装来不及了

追答

也可以用windows自带的画图软件打开,另存为jpg格式就行了!

第2个回答  2019-04-15
请问解决了吗我也遇到了这样的问题
相似回答