[英]Algorithm to desaturate RGB color
我有个问题。 是否有某种方法或某种算法可以用来降低 RGB 值的饱和度,而无需将颜色转换为 HSV 或 HSL? 我的 RGB 输入将完全饱和,因此我只需要一种使颜色去饱和的方法。
我正在开发一个颜色选择器,我需要一种快速有效的方法来做到这一点。 我们欢迎所有的建议:)
简单的方法(忽略感知亮度,如0.3R+0.6G+0.11B
和其他公式):
初始颜色(r,g,b)
相同强度的灰色(i,i,i)
其中i = (r + g + b) / 3
与灰色分量的偏差:
dr = i - r
dg = i - g
db = i - b
让参数t
从初始饱和颜色的 0 变为灰色的 1。 所以
r' = r + dr * t
g' = g + dg * t
b' = b + db * t
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.