如何计算亮度相同的RGB值
我试图用相同的感知亮度生成RGB颜色。
据说函数R * 0.2126 + G * 0.7152 + B * 0.0722用于计算给定RGB颜色的感知亮度(或等效灰度颜色)。
假设我们对所有RGB值使用区间[0,1],我们可以计算以下内容:
所以,为了使黄色的色调与蓝色一样暗淡,我可以简单地对每个RGB分量执行黄色的简单计算:
然而,当做相反的事情时,因此将蓝色“缩放”到与原始黄色相同的感知亮度,B分量显然超过1,这不能在计算机屏幕上显示。
我猜想多余的B分量中缺失的亮度可以“重新分配”到R和G分量,伪造更亮的蓝色。 那么计算这些最终RGB值的最佳一般方法是什么?
我建议您使用HSV颜色模型而不是RGB,因为您可以轻松实现只需修改“值(亮度)”组件的内容。 wiki页面还包含如何将RGB转换为HSV并返回
编辑:尝试使用CIELAB色彩空间,因为它接近人类的视野
链接地址: http://www.djcxy.com/p/87033.html上一篇: How to calculate RGB values with identical perceived brightness
下一篇: How to calculate "amount" of color component in an RGB color