我想从包含颜色值的矩阵中绘制图像。它看起来像这样:
TEMP = zeros(100,100);
for i=1:100
for j=1:100
if (...)
TEMP(i,j)=0;
elseif (...)
TEMP(i,j)=56;
elseif (...)
TEMP(i,j)=32;
end
end
end
image(TEMP)
但它只使用这种颜色:
这些颜色的值介于0到66之间,步长= 2
如何使用矩阵绘制RGB颜色?特别是我需要灰色
答案 0 :(得分:2)
将您的colormap
更改为gray
以获取BNW图片:
TEMP = rand(100)*255;
image(TEMP)
colormap gray
如果颜色反转,请使用image(-TEMP)
。
答案 1 :(得分:2)
2D数组本身无法定义颜色,需要将颜色图与其关联。您的默认色图是req.session
(从蓝色到红色),您可以将其更改为jet
,但是使用这种显示,如果颜色,您将始终只使用一个子集。
如果你想使用任何RGB颜色,那么你需要一个RGB数组,即一个尺寸为n×m×3的数组。子数组gray
将编码为红色,A(:,:,1)
表示绿色,A(:,:,2)
表示蓝色。使用这种数组命令::
A(:,:,3)
应该给你一个真正的RGB显示。