聘我网

新概念招聘3.0

MATLAB如何将grayscale矩阵转换成RGB矩阵?

vote up0vote downstar

是不是只需要:

rgbImage = grayImage / 255;

不大了解

 

1 个答复

vote up0vote downcheck

分三种情况

同数据类型转换(uint8double),使用repmat或者cat:

rgbImage = repmat(grayImage,[1 1 3]);
rgbImage = cat(3,grayImage,grayImage,grayImage);

uint8的grayscale转成double的RGB:

rgbImage = repmat(double(grayImage)./255,[1 1 3]);

double的grayscale转成uint8的RGB:

rgbImage = repmat(uint8(255.*grayImage),[1 1 3]);

其中./.*表示元素间的/*(element wise),对标量而言没区别;数据类型可以用class()查看

链接

您的回答





不是您要找的问题? 浏览其他含有标签 的问题或者 自己问个.