
5.检查发现的xy值是否在光的色域内,如果没有继续执行步骤6,则在执行步骤7时
我们发送了一个光不能发送的值,得到的颜色可能不是最优的。
因此我们尽量只发送
位于所选光的色域内的值。
6.计算色域三角形上的最近点,并将其作为xy值计算最近值
画一条垂线到三角形所包含的一条直线上当它仍然不在三角形内时,
我们选择三角形最近的角点。
7.使用XYZ的Y值作为亮度,Y值表示转换后颜色的亮度。
xy到颜色的转换几乎是相同的,但顺序相反。
(1) 检查xy值是否在灯的色域内,如果不继续执行步骤2,则执行步骤3
计算出最准确的颜色,给定的光实际上可以做到。
(2)计算色域三角形上的最近点,并将其作为xy值使用,参见第6步颜色到xy。
(3)计算XYZ值转换使用以下公式:
浮点数x = x;//给定的x值
float y = y;//给定的y值
浮点z = 1.0f - x - y;
float Y =亮度;//给定的亮度值
浮点X = (Y / Y) * X;
浮点Z = (Y / Y) * Z;
(4) 使用宽RGB D65转换转换到RGB(目前是D50转换)
浮点数r = X *
CIE1931色彩计算与色域映射
该博客介绍了CIE1931色彩空间的计算过程,包括检查xy值是否在光源色域内,计算色域三角形上的最近点,以及通过XYZ到RGB的转换进行色彩映射。同时,文中提到了伽马校正和从D65到RGB的转换步骤。
订阅专栏 解锁全文
4388

被折叠的 条评论
为什么被折叠?



