Matlab报错:错误使用 rgb2gray>parse_inputs (第 79 行) MAP 必须为 m x 3 的数组。请对 RGB 和灰度图像使用 im2gray。

  • 拟解决问题:
    Matlab报错:错误使用 rgb2gray>parse_inputs (第 79 行) MAP 必须为 m x 3 的数组。请对 RGB 和灰度图像使用 im2gray。
  • 下述程序块你读取一张彩色图片,并转为灰度图像后显示。
[X,map] = imread("laina.bmp");
newmap = rgb2gray(map);
set(0,'defaultFigurePosition',[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,'defaultFigureColor', [1 1 1]); %修改图形背景颜色的设置
figure,imshow(X,map); %显示原图像
figure,imshow(X,newmap); %显示转换后的灰度图像
  • 报错原因
    读入图像不是GRB三通道的
  • 解决方法
    打开画图软件,将该图另存为256色位图后添加到原工作路径中
  • 补充:
  • 单色位图、16色位图、256色位图、24位位图含义
格式含义
单色位图每个像素最多可以表示2种颜色,只需要使用长度为1的二进制位来表示,因此每个像素占1/8byte
16色位图每个像素最多可以表示16种颜色,所以只需要长度为4的二进制表示,因此每个像素占1/2byte
256色位图每个像素最多可以表示256中颜色,所以只需要长度是8的二级制位表示就可以了,因此每个像素占1byte
24位位图即RGB三原色位图 每个像素占3个byte
  • 31
    点赞
  • 62
    收藏
    觉得还不错? 一键收藏
  • 19
    评论
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值