欢迎光临散文网 会员登陆 & 注册

色度学基础与计算2

2023-07-18 00:58 作者:你好_贾维斯  | 我要投稿

CIE 1931XYZ色度系统

如上文所述,CIE1931 RGB色度系统中,用红、绿、蓝三基色表征的三刺激值存在负数,实际计算会有诸多不变。因此,CIE推出了CIE 1931XYZ色度系统。

CIE主要规定了三点内容。首先,规定(Y)基色既表征亮度又表征色度,而(X)、(Z)两个基色只有色度。因此如图1所示。XZ线称之为无亮度线。其次,新的三基色(X)、(Y)、(Z)连成的三角形应将原RGB的光迹曲线包含在内。最后,光谱轨迹从540nm到700nm附近,在RGB色度图上基本是一条直线,用这段线上的两个颜色相混合可以得到两个色之间的各种光谱色,新的XYZ三角形中的XY边应该和这段直线重合。所以这段线上的光谱轨迹只涉及(X)原色和(Y)原色的变化,不涉及(Z)原色。最后形成图1的红色三角形。

图1 RGB色度系统向XYZ色度系统转换

红色三角形的三边用方程表示如下:

首先,XY线为700nm的切线,YZ线为503nm的切线。则由rgb色度轨迹上的色度坐标定义有

则XY线方程有

YZ线方程有

对于亮度方程

是如何得来的,我是不知道的。参考的是荆其诚先生的《色度学》上给出的亮度方程公式。将b=1-r-g代入后令L(c)=0得到

为啥要令L(c)=0呢?我的理解是因为它为无亮度线,所以为0。也有可能是CIE自己的定义,这个深究的话,可能需要咨询一下CIE的相关人员了。

从上面的讨论中,我们得到了方程(1)、(2)、(3)。联立方程可以解出三角形上的交点坐标即r和g的值,在结合r+g+b=1。可以得出b的值。解得的X、Y、Z坐标如下

从结果可能会有疑问,平面应该是两个坐标,为啥这结果会是三个坐标呢?实际上,色图系统确实是rgb三维空间。但是实际画出三维图可能是太过抽象了,大家都画了三维图在rg坐标或者XY坐标上的投影图作为二维的色度图表示,就是我们通常看到的“马蹄”图。

我尝试在网上找了三维图的表示,可惜搜索能力不行,没找到。以后有空看看自己能不能画一个,在摆上来吧。

三角形的顶点XYZ各个坐标的数值表示的是RGB三种颜色含量的多少,是新定义的三基色,当然也是一种混合色。其中X色中R的含量较高,所以在色坐标上是偏向红色的,同理,Y偏向绿色,Z偏向蓝色。

由此,CIE得到的新的假象的三基色XYZ,以此基础建立了XYZ色度系统。为啥是假想的三基色呢,因为CIE说它在RGB色度系统区域之外,就是那个RBG的“瘦马蹄图”之外。所以现实中没有这个颜色。唉,颜色计算是CIE定的标准,那就他说没有就没有吧。

CIE1931 RGB色度系统和CIE1931 XYZ色度系统之间的转换关系

巴拉巴拉上面说了那么多,总是云里雾里的,这俩色度系统到底怎么相互转化的呢?

首先,通过RGB光谱三刺激值,这玩意是CIE 找人看颜色,就是之前说的颜色匹配实验得到的数据,他们叫那群人为标准观察者,所以称为RGB系统标准观察者三刺激值,图是这个样子的:

图2 1931RGB系统标准观察者光谱三刺激值

然后根据这个公式:

计算出来色度坐标r、g、b,画平面图的话计算r、g就OK啦。

然后在直角坐标系上,以r为横坐标,b为纵坐标画出计算出来的图形,长这样:

图3 CIE1931 RGB色度轨迹曲线

我画的时候取的380nm到780nm上波段%5CDelta%20%5Clambda%20=5nm的离散点。画出上面的色度轨迹。

然后根据色度RGB转XYZ转换公式:

可以将rg转换为xy。然后再以x为横坐标,y为纵坐标的画图如下:

图4 CIE1931 XYZ色度轨迹曲线

转换完了,色度坐标全都跑到了一象限了,即都为正值了。

巴拉巴拉这么多,就是为了把RGB色度系统下色度坐标都变成正的。

其实,在XYZ色度系统下也定义了观察者三刺激值%5Cbar%7Bx%7D%E3%80%81%20%5Cbar%7By%7D%20%E3%80%81%5Cbar%7Bz%7D%20。其中规定了%5Cbar%7By%7D%20的值为相对视敏函数V(%5Clambda%20)。

其中相对视敏函数的计算公式如下:

    式中的P(555)是波长为555nm的光辐射功率,因为人眼在亮光下时对波长为555nm的光最敏感。P(%5Clambda%20)为各个波长下的光的辐射功率。

相对视敏函数的图像如下所示

图5 相对视敏函数图像

三刺激值的计算的公式如下:

在该三刺激值的计算公式中,x(%5Clambda%20)、y(%5Clambda%20)是图4的色度轨迹上的色度坐标。z(%5Clambda%20)由1-x(%5Clambda%20)-y(%5Clambda%20)计算得来。

所以在已知相对视敏函数和XYZ色度轨迹坐标时,也可以计算出对应的%5Cbar%7Bx%7D%20%5Cbar%7By%7D%20%5Cbar%7Bz%7D%20三刺激值。


图6 CIE1931 XYZ系统光谱三刺激值

最后,总结一下RGB色度系统到XYZ色度系统的的转换关系。

图7 RGB色度系统到XYZ色度系统的的转换关系


在XYZ色度系统下的任意光源色的计算问题

上面花了那么大功夫讲了XYZ色度系统,目的是为光源颜色的计算提供一个计算标准,便于色彩的量化和使用格拉斯曼定律计算混色。

对于一个未知的光源,我们测得了光谱功率分布P(%5Clambda%20),则就可以计算它的xy色度坐标。计算的方式如下:

首先计算光源的三刺激值,称之为X、Y、Z。丢一个公式:

公式中%5Cbar%7Bx%7D%20%5Cbar%7By%7D%20%5Cbar%7Bz%7D%20为三刺激值。K的值为:

实际的实验测得的光谱功率分布P(%5Clambda%20)多为离散值,对于离散数据,计算的方式是用累加代替积分。计算的公式如下:


k值的取值中,相应的积分也应该换成累加。通常%5CDelta%20%5Clambda%20取值有1nm、5nm、和10nm。

得到光源的三刺激之后,则该光源的色度坐标计算为:

由此,只要测到某一光源的光谱功率分布就可以计算出该光源的色度坐标了。

对于光源投射和反射后的色度坐标的计算,则之需要对将光源在380nm到780nm波长下的光谱功率分布值乘于折射率或者反射率,再乘以相对应的三刺激值,最后在整个波段上积分计算出折射或者反射的三刺激值,最后计算折射或者反色的色度坐标。

有了某一光源的色度坐标,我们就可以计算该光源色与标准色的色偏、色温、光的亮度等各种色彩参数了。

说这么多,没有实例的计算演示,总是感觉似懂非懂。后面我会举个小例子算一下过程。

色度学基础与计算2的评论 (共 条)

分享到微博请遵守国家法律