上篇““色觉地图”的建立(一):光感受器、色匹配实验与CIE RGB坐标系“中说到,人的色觉是线性的,我们可以用叠加原理“混色”——这意味着色觉的空间固定不变,我们可以任意选择一组基底(或说坐标系),去定量描述它。所以,人们选择了三个单频光(CIE RGB)产生的色觉作为色觉基底,通过色匹配实验,定量描述了所有等辐照度单频光所独立产生的色觉。
于是我们就获得了梦寐以求的“色觉地图”了!不过有时它还不够好用,因为同一颜色、不同亮度对应着不同的色觉坐标。这一篇我们将制作一个“颜色图”:rgb空间。
一、前置知识:辐照度与亮度
需要注意的是,色匹配实验是以“辐照度(
人们常常叫这个函数为“
二、(CIE) rgb空间
上一篇中,我们建立了第一个“色觉的地图”——一个以CIE RGB坐标系表示的三维空间。380-720nm的单频光对应的色觉坐标如下图:
对于同一个颜色、不同的辐照度,在“色觉地图”中将对应不同的点:各种色彩、明暗显然都会带来不同的感觉。但是如果我们想把同一个颜色用一个坐标表示,建立一个“颜色图”呢?
可以用“相对值”来表示:
对于任意一个三维向量表示的色觉,若字母是小写,即为“相对值”,或说其为“辐照度无关”的量。如对CIE RGB坐标系,其与rgb空间的转换关系如下:
经过这样一处理,rgb空间中的任何颜色都与辐照度无关,每一个点都代表了所有辐照度下的同一个颜色。而且rgb三者之和为1,所以有知二求三的性质。来看看rgb空间中,单频光对应的点形成的图像:
我们应当心里清楚rgb空间是从CIE RGB坐标系转换过来的(也许它应当叫CIE rgb),所以三个坐标轴必然与“单频光色”轮廓相交,且:
- r轴与轮廓相交的点是700nm光对应的颜色。
- g轴与轮廓相交的点是546.1nm光对应的颜色
- b轴与轮廓相交的点是435.8nm光对应的颜色。
由于rgb坐标有“知二求三”的性质,所以我们可以垂直着看rg面,而不损失任何信息(
直观地说,(RGB坐标表示的)色觉空间是描述所有色觉的,既包含颜色,也包含亮度;而rgb空间企图把颜色和亮度分离开来,但可惜的是,它只做到了“辐照度无关”:简而言之,rgb中的颜色之间的亮度大不相同。这么说来,上图的绘制有些不严谨:红橙色与蓝紫色的亮度应大大低于绿色。
至此,我们获得了一个“色觉地图”(CIE RGB坐标系表示),和一个“颜色图”(rgb坐标系表示,且色彩间亮度不同),需要特别注意的是,它们之间不可以通过线性变换互相转换,RGB到rgb的转换过程是损失信息的。
三、色觉地图、颜色图的混色方式之区别
在专栏首篇文章“色彩科学学习笔记——从摄影出发“中,有提到过,xyY色度-亮度图与XYZ坐标的“色觉地图”的混色方式不同(这句话目前有些超纲了,XYZ坐标与xy坐标就是“色觉地图”和对应“颜色图”的关系)。这里将给出“色觉地图”、“颜色图”两个空间的混色方式的具体区别。
“色觉地图“的混色方式:向量运算
向量运算就是平行四边形法则,很直观。图中进行的运算是:
由于所得到的
“颜色图“的混色方式:“凸集内一点“
我不知道该如何用简单的数学语言描述它,但是也可以直观地在图中表示出来。简而言之,如果是两个基色混色,那所有的结果将都在两个点之间:
图例中展示了490nm光色与540nm光色混合时,所有可能的颜色的轨迹:为两基色对应点相连的直线组成的颜色集合。需要注意的是,尽管我选择的几个点的基色混合是比例变化的,但在“颜色图”中看起来并不是按比例变化的。
所以我们在“颜色图”中,只能知道几个基色混合的所有结果的集合,但并不能在图中进行精确地计算。
接下来看看三个基色的情况:
rgb空间中,三个基色的混色https://www.zhihu.com/video/1133342427304775680视频中三个基色分别取:490nm、525nm、625nm单频光对应的颜色。三个基色对应的点围成一个三角形轮廓,轮廓内任意点皆可通过这三个基色混合而来。
如果基色数大于3,则可以混合出基色为顶点形成的凸集中的所有色。
至此,我们获得了两个工具:标定所有色觉的“色觉地图”(CIE RGB坐标系)与标定所有颜色的“颜色图”(rgb坐标系)。我们还知道,“颜色图”并非从“色觉地图”线性变换得来,它们属于不同空间。我们还搞懂了在这两种空间中混色的方法。美中不足的是,目前颜色图上的颜色亮度有些不一样。
注:文中所用的图像是使用Mathematica从原数据搭建出来的,原数据来源于BruceLindbloom。所有图像不允许没有标注来源的转发。