我不知道如何解决这个问题。我正在尝试找到有关如何自定义颜色图(不使用颜色图编辑器)以在 Matlab 中为图像设置颜色和边界的良好资源。我已经设法使用颜色图编辑器来完成它,但我想弄清楚如何手动完成它。
我正在尝试制作一个范围在 0 到 127 之间的颜色图。边界是:
0 到 64 是黑色 (0) 到白色 (64)
65 到 127 是蓝色 (65) 到红色 (127)
有人可以就如何手动对颜色图进行这些更改给我一些建议吗?一个好的资源也会很有用。
谢谢。
我不知道如何解决这个问题。我正在尝试找到有关如何自定义颜色图(不使用颜色图编辑器)以在 Matlab 中为图像设置颜色和边界的良好资源。我已经设法使用颜色图编辑器来完成它,但我想弄清楚如何手动完成它。
我正在尝试制作一个范围在 0 到 127 之间的颜色图。边界是:
0 到 64 是黑色 (0) 到白色 (64)
65 到 127 是蓝色 (65) 到红色 (127)
有人可以就如何手动对颜色图进行这些更改给我一些建议吗?一个好的资源也会很有用。
谢谢。
我建议使用linspace
. 它可以帮助您在某个范围内创建均匀的数字分布。
blackToWhite = repmat(linspace(0,1,66),3,1)' ;
l1 = linspace(0,1,127-65+1);
blueToRed = [flipud(l1(:)) zeros(size(l1(:))) l1(:) ];
cmap = [blackToWhite; blueToRed];
这个想法是插值[1 0 0]
到[0 0 1]
; 每个颜色通道,红绿和蓝都是自己插值的。
Red -> 1 ... 0
Green -> 0 ... 0
Blue -> 0 ... 1
所以我l1
为红色和蓝色通道都生成了,但在其中一个中翻转了它。