强度到RGB颜色转换器,matlab

时间:2014-04-04 07:47:08

标签: matlab

我有颜色矢量= [0 ..... 1]。我想将它转换为RGB代码,以便

color_vector =[0.....1] % o for blue, .5 for green and 1 for red
R=255,0,0
G=0,255,0
B=0,0,255

是否有任何matlab命令(我找不到)或代码。

另一个问题是我想制作我自己的绿色范围(.45-.55)都应该是绿色。

3 个答案:

答案 0 :(得分:2)

基本上你所描述的是colormap - 但你需要为你的颜色矢量编制索引 这一点。

顺便提一句,hsv2rgb会产生类似的颜色映射。但是从红色开始:

  

当色调从0变为1时,产生的颜色不同       红色,黄色,绿色,青色,蓝色和洋红色,回红色。

答案 1 :(得分:1)

对于不完全为0,0.45-0.55或1的强度值,您是否希望在颜色之间进行线性插值?如果是这样,您可以使用real2rgb(在MATLAB文件交换中),如下所示:

I = rand(100, 100);                               % Input data
cmap = [1 0 0 45; 0 1 0 10; 0 1 0 45; 0 0 1 0];   % Colormap defining the transformation
RGB = real2rgb(I, cmap);                          % Do the conversion

答案 2 :(得分:0)

我使用CC并且效果很好。我可以插入颜色。