将颜色范围转换为另一种颜色的简便方法

时间:2011-08-11 04:10:24

标签: image image-processing colors image-editing

我想在此图片中转换紫色:

enter image description here 蓝色如:

enter image description here

有没有简单的方法来实现这一目标?如果没有,是否有一种简单的方法来复制相同的效果?

由于

1 个答案:

答案 0 :(得分:2)

您可以在R,G和B通道中分离图像,并将红色通道替换为零,只留下G和B通道。

Mathematica中的示例:

i = Import["http://tinyurl.com/3wqklof"];
ColorCombine@{ImageSubtract[#[[1]], #[[1]]], #[[2]], #[[3]]} &@ ColorSeparate@i

enter image description here

修改

或者,如果您需要“精确”蓝色图像,请在“HSB”颜色空间中分开,将H矩阵的所有非零值替换为2/3(蓝色),使S和B组件保持不变。

示例:

ColorCombine[{Image[2/3 ImageData@ImageAdd[#[[1]], #[[1]]]], #[[2]], #[[3]]} &@
              ColorSeparate[i, "HSB"], "HSB"]

enter image description here