图像处理 – Photoshop中色调/饱和度调整层的算法

前端之家收集整理的这篇文章主要介绍了图像处理 – Photoshop中色调/饱和度调整层的算法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有谁知道调色板在Photoshop中如何工作?我需要从色相/饱和度调整层生成具有源图像和HSL值的结果图像.转换为RGB,然后与源颜色相乘不起作用.

或者可以通过适当设置的混合模式(Mulitiply,Screen,Hue,Saturation,Color,Luminocity …)来将普通图层替换为色相/饱和度调整层.
如果是这样呢?

谢谢

解决方法

当我选择了“Colorize”复选框时,我已经对该计算进行了反向设计.以下所有代码都是伪代码.

输入是:

> hueRGB,它是HSV的RGB颜色(photoshop_hue,100,100).ToRGB()
>饱和度,这是photoshop_saturation / 100.0(即0..1)
>亮度,这是photoshop_lightness / 100.0(即-1..1)
>值,即pixel.ToHSV().值,缩放到0..1范围内.

使单个像素着色的方法

color = blend2(rgb(128,128,128),hueRGB,saturation);

if (lightness <= -1)
    return black;
else if (lightness >= 1)
    return white;

else if (lightness >= 0)
    return blend3(black,color,white,2 * (1 - lightness) * (value - 1) + 1)
else
    return blend3(black,2 * (1 + lightness) * (value) - 1)

其中blend2和blend3是:

blend2(left,right,pos):
    return rgb(left.R * (1-pos) + right.R * pos,same for green,same for blue)

blend3(left,main,pos):
    if (pos < 0)
        return blend2(left,pos + 1)
    else if (pos > 0)
        return blend2(main,pos)
    else
        return main

猜你在找的CSS相关文章