CIE 1931色彩空间

CIE 1931 XYZ色彩空间（CIE 1931色彩空间）在颜色感知的研究中最先采用数学方式来定义，它由国际照明委员会（CIE）于1931年创立。

1920年代后期，英国的William David Wright（Wright 1928）和John Guild（Guild 1931）做的一系列实验中得出本空间。他们的实验结果合并到了CIE RGB色彩空间的规定中，本空间再从它得出。为了说明本空间下面会涉及RGB。

Datacolor用XY轴分四个象限，X轴两端为红绿，Y轴为黄蓝。https://www.datacolor.com/

## 三色刺激值

人类眼睛有对于短（S, 420-440nm）、中（M, 530-540nm）和长（L, 560-580nm）波长的光感受器视锥细胞。因此，根据三种视锥细胞的刺激比例，便能描述任一种颜色的感觉，此称为LMS空间(long, medium, short)。

色彩空间叙述可见光在人眼上的感觉，通常需要三色刺激值。更精确地说，首先先定义三种原色（primary color），再利用颜色叠加模型，即可叙述各种颜色。

三原色可以是不可能的颜色，例如，本空间的X、Y、Z。

在三色加色法模型中，如果某一种颜色和另一种混合了不同分量例如RGB(255,255,255)中的255即为分量，三色刺激值也适用于色彩空间建立的过程。三种原色的颜色，均使人类看上去是相同的话，我们把这三种原色的分量称作该颜色的三色刺激值。

色彩空间是指任何一种替每个颜色关联到三个数（三色刺激值）的方法，本空间就是这种色彩空间之一。并且，本空间基于人类颜色视觉的直接测定，并充当很多其他色彩空间的定义基础。

X、Y和Z的值，约略详见本页面“Wright–Guild数据构造CIE XYZ色彩空间”一节的矩阵对应于红色、绿色和蓝色（它们是从红色、绿色和蓝色导出来的参数），并使用颜色匹配函数来计算，见下。

同色异谱可以用来量化分析一种颜色的光怎么对应到单色光：两个由多种不同波长的光混合而成的光源可以表现出同样的颜色。这也意味着两组XYZ相同。

## CIE xy色度图

<image>

CIE Yxy(CIE xy, CIE xyY)是本空间的常见应用形式。

因为人类眼睛有响应不同波长范围的三种类型的颜色传感器，所有可视颜色的完整绘图是三维的。

### 颜色的概念

颜色的概念可以分为两部分：明度和色度。例如，白色是明亮的颜色，而灰色被认为是不太亮的白色。换句话说，白色和灰色的色度是一样的，而明度不同。

Yxy故意设计得Y参数是颜色的亮度的测量。亮度线性，两束不同颜色的光融合后，亮度为简单相加，这是要显示人眼的生理特点。亮度或许可以表示明度。

形如Y=1时，可能表示相对光亮度：借用工程概念理解，能产生白光的设备在产生特定光时的亮度。因此，虽然光度函数给出单色光555nm的草坪绿在同等功率最亮，白色的Y仍然最大，注意二者没有直接关系。能产生白光的设备在产生白光时是全力运转的，可参见白色是RGB(255,255,255)，而其它颜色数值上小于白色。

### 导出

本空间可以构造色度。色度(x,y)：

$$x = \frac{X}{X+Y+Z}$$

$$y = \frac{Y}{X+Y+Z}$$

显然。

$$z = \frac{Z}{X+Y+Z} = 1 - x - y$$

导出的色彩空间用x, y, Y来指定，它在实践中广泛用于指定颜色。

- xyY的Y作为某一(x,y)坐标的相对光亮度时，xyY是三维的。
- Y作为整个图片的统一亮度时，xy(Y=特定值)是二维的：应用中可以通过切片XYZ空间中的Y在xy的曲线内侧涂上不同的颜色。因为可以涂上不同的颜色，显示出本空间可以构造色度，可以展示选定亮度下所有的色度。展示出的颜色看起来都一样亮，具体亮度取决于显示器支持的最大亮度，相对于选定亮度。xy的曲线，本身表示单色光，亮度不限，因此，每个切片都有这条曲线。
- 不妨令xyz为XYZ中的一个平面XYZ(1,0,0)(0,1,0)(0,0,1)来理解从XYZ中得到xy(Y)

对于Y，在本空间XYZ(xy, xyY, Yxy)中，大致上白色、黄色亮度最高。因为黄色和蓝色互补，而蓝色的亮度较低且为原色详见本页面“Wright–Guild数据构造CIE XYZ色彩空间”一节的矩阵。

辅助公式：

$$X=\frac{Y}{y}x$$

$$Z=\frac{Y}{y}(1-x-y)$$

数学上，x和y是投影坐标，色度图的颜色占据了实投影平面的一个区域。

色度图展示了本空间一些有趣性质：

- 色度图展示了对一般人类视觉的色域，每个切面都是相同的亮度的所有色度。色域是用颜色展示的马蹄铁形状。色域的曲线边界叫做“光谱轨迹”并对应于单色光，色度均为通俗说的完全饱和。色域底下的直线边界叫做“紫线”，“紫线”没有匹配的单色光。更低色度（更少饱和）的颜色位于图形内部而白色位于中央。
- 所有可见色度的xyz、XYZ非负
- 如果你在色度图上选择了任何两点，则位于这两点之间直线上任何颜色都可以用这两个颜色混合出来。这得出了色域的形状必定是凸形的。混合三个光源形成的所有颜色都可以在色度图内的色三角内找到（对于多个光源也如是）。
- 在xy色度图上距离不对应于两种颜色之间的差别程度。设计了其他色彩空间（CIELUV和CIELab等）来满足这个问题。
- 给定三个真实光源的色三角不能覆盖人类视觉的色域，因为那条曲线不是三角形。
- 平直能量频谱的光对应于白点 (x,y) = (1/3,1/3)。

## CIE XYZ色彩空间定义

### 实验结果— CIE RGB色彩空间

CIE RGB色彩空间是重要的RGB色彩空间，运用单色原色光，即原色都在色度图曲线边界。

在1920年代，W. David Wright（Wright 1928）和John Guild（Guild 1931）独立进行了一系列人类视觉实验，提供了CIE XYZ色彩空间规定的基础，包括CIE RGB。

<image>

实验使用2度视角的圆形屏幕。屏幕的一半投影测试颜色，另一半投影观察者可调整的颜色。可调整的颜色是三种原色的混合，它们每个都有固定的色度，但有可调整的明度。两人选的原色有细微不同。

观察者改变三种原色光的强度（明度）直到观察到混合的颜色匹配了测试颜色。不是所有颜色都可使用这种技术匹配。当没有匹配的时候，一种原色（就是红色）不断增加到测试颜色上直到余下两种原色加起来与它们匹配。记增加到测试颜色上的原色为负值通过这种方式，可以覆盖完整的人类颜色感知。当测试单色光，假设红、绿、蓝总量各一份分散在每个波长（有负值），它们最终能混合为当时实验室里的白光，每种原色的数量绘制成为这个单色光的波长的函数。这三个函数叫做这个特定实验的“颜色匹配函数”。网上不同地方所说的“颜色匹配函数”可能不一样，读者应在包括阅读下文时辨别意思

#### 标准化原色

建立客观颜色表示法的国际系统——

<image>

Wright和Guild的实验使用了不同的观察者，所有他们的结果都被映射为标准CIE RGB $\overline{r}(\lambda)$, $\overline{g}(\lambda)$和$\overline{b}(\lambda)$：对应700 nm（红色）、546.1 nm（绿色）和435.8 nm（蓝色）。

颜色匹配函数是匹配单色测验颜色所需要的原色的数量。这些函数展示于右侧的（CIE 1931）绘图中。注意$\overline{r}(\lambda)$和$\overline{g}(\lambda)$在435.8nm处为零，$\overline{r}(\lambda)$和$\overline{b}(\lambda)$在546.1nm处为零，而$\overline{g}(\lambda)$和$\overline{b}(\lambda)$在700 nm处为零，因为在这些情况下测试颜色是原色之一。选择波长546.1 nm和435.8 nm的原色是因为它们是容易再生的水银蒸气放电的色线。1931年选择的700 nm波长难于再生为单色光束，选择它是因为眼睛的颜色感知在这个波长相当不变化，所以在这个原色波长上的小误差将对结果有很小的影响。其实这三个波长的选择都是思想实验与拟合。

经过CIE的特别委员会确定了颜色匹配函数和原色（Fairman 1997）。在图的短波和长波的侧的取舍点某种程度上是随意选择的；人类眼睛实际上能看到波长直到810 nm的光，但是敏感度要数千倍低于绿色光。定义的这些颜色匹配函数叫做“1931 CIE标准观察者”。

经过映射，颜色匹配函数经过曲线常规标准化为有固定的面积：

$$\int_0^\infty \overline{r}(\lambda)\,d\lambda= \int_0^\infty \overline{g}(\lambda)\,d\lambda= \int_0^\infty \overline{b}(\lambda)\,d\lambda$$

结果的规范化颜色匹配函数经常对源照度按r:g:b比率1:4.5907:0.0601缩放、和为源辐射功率按比率72.0962:1.3791:1缩放来重新生成真正的颜色匹配函数：每1:4.5907:0.0601的亮度的红绿蓝光同时被人类眼睛看到，等价的，每72.0962:1.3791:1的功率的红绿蓝光同时被人类眼睛看到，即看到平直能量频谱的光。

给定这些缩放的颜色匹配函数，引入频谱功率分布$I(\lambda)$：

$$R= \int_0^\infty I(\lambda)\,\overline{r}(\lambda)\,d\lambda$$

$$G= \int_0^\infty I(\lambda)\,\overline{g}(\lambda)\,d\lambda$$

$$B= \int_0^\infty I(\lambda)\,\overline{b}(\lambda)\,d\lambda$$

这些可以被认为是无限维频谱到三维颜色的投影。当$I(\lambda)=1$且R=G=B，可退化为前式。

### 格拉斯曼定律

人类色彩感知的（几乎）线性。

CIE RGB空间可以被用来以常规方式定义色度：色度坐标是r和g:

$$r= \frac{R}{R+G+B},$$

$$g= \frac{G}{R+G+B}.$$

## 从Wright–Guild数据构造CIE XYZ色彩空间

本空间是与CIE RGB色彩空间有关的一个色彩空间。它假定格拉斯曼定律定律成立，因此引用CIE RGB空间。假设红、绿、蓝各一份混合为平直能量频谱的光，而不是当时实验室里的白光。

以三个新颜色匹配函数来定义：$\overline{x}(\lambda)$、$\overline{y}(\lambda)$和$\overline{z}(\lambda)$。带有频谱功率分布I(λ)的颜色的对应的XYZ 三色刺激值为给出为：

$$X= \int_0^\infty I(\lambda)\,\overline{x}(\lambda)\,d\lambda$$

$$Y= \int_0^\infty I(\lambda)\,\overline{y}(\lambda)\,d\lambda$$

$$Z= \int_0^\infty I(\lambda)\,\overline{z}(\lambda)\,d\lambda$$

<image>

它有如下性质：

- 新颜色匹配函数在所有地方都大于等于零。在1931年，计算是凭借手工或滑尺进行的，正值的规定有用于计算简化。
- $\overline{y}(\lambda)$颜色匹配函数精确的等于“CIE标准适应光观察者”（CIE 1926）的光度函数V(λ）。它是描述感知明度对波长的变换的亮度函数。亮度函数可以构造为RGB颜色匹配函数的线性组合的事实是没有任何方式来保证的，但是被认为几乎是真实的，因为人类视觉的几乎线性本质。还有，这个要求的主要原因是计算简单。
- 对于平直能量频谱的光，要求为x = y = z = 1/3。
- 由于色度定义和要求x和y为正值的优势，可以在xy三角形1,0，0,0，0,1内见到XYZ能够组成的色域。在实践中必须把色域完全的充入这个空间中。
- $\overline{z}(\lambda)$可以在650 nm处被设置为零而仍保持在实验误差范围内。为了计算简单规定可以这样做。

用几何术语说，选择新色彩空间等于在rg色度空间中选择一个新三角形。在右侧的图形中，rg色度坐标展示在两个黑色轴上，还有1931标准观察者的色域。展示为上述要求所确定的是红色CIE xy色度轴。要求XYZ坐标非负意味着Cr, Cg, Cb形成的三角形必须包围标准观察者的整个色域。连接Cr和Cb的直线由$\overline{y}(\lambda)$函数等于亮度函数的要求来确定，它叫做alychne。$\overline{z}(\lambda)$函数在650 nm处为零的要求意味着连接Cg和Cr的直线必须是Kr区域内的色域的切线。这定义了点Cr的位置。均等能量点定义自x = y = 1/3的要求对连接Cb和Cg的直线做了限制，最后，色域充入空间的要求对此线作了第二个限制，它要非常靠近在绿色区域的色域，这规定了Cg和Cb的位置。上面描述的变换是从CIE RGB空间到XYZ空间的线性变换。CIE特殊委员会确定了标准变换如下：

$$\begin{bmatrix}X\\Y\\Z\end{bmatrix}=\frac{1}{b_{21}} \begin{bmatrix} b_{11}&b_{12}&b_{13}\\ b_{21}&b_{22}&b_{23}\\ b_{31}&b_{32}&b_{33} \end{bmatrix} \begin{bmatrix}R\\G\\B\end{bmatrix}=\frac{1}{0.17697} \begin{bmatrix} 0.49&0.31&0.20\\ 0.17697&0.81240&0.01063\\ 0.00&0.01&0.99 \end{bmatrix} \begin{bmatrix}R\\G\\B\end{bmatrix}$$

<image>

要求3确定了XYZ颜色匹配函数的积分必须相等，可通过要求2确定的适应光发光效率函数的积分得到它。必须注意到制表的敏感度曲线有一定量的任意性在其中。单独的X、Y和Z敏感度曲线可以按合理的精度测量。但是整体的光度曲线（它事实上是这个三个曲线的加权和）是主观的，因为它涉及到问测试人两个光源是否有同样的明度，即使它们是完全不同的颜色。虽然X、Y和Z的曲线的相对大小（magnitude）任意，但是本空间CIE 1931和1964 曲线被缩放为有相同的曲线下面积。

## 问题和解决

- 1924发光效率函数V（λ，CIE 1926）严重的低估了在460 nm波长下的敏感度。Judd（1951）和Vos（1978）提议了一个修改版本的发光效率函数，这也给出了一组新的XYZ颜色匹配函数。参见Stiles与Burch（1955）。
- CIE 1964标准观察者颜色匹配函数是为10度视角定义的。它们是从Stiles与Burch（1959），和Speranskaya（1959）的工作得出的。1931标准观察者视角是2度。对于10度实验，指导观察者忽略中心2度斑点。推荐对多于4度视角使用1964增补标准观察者。
- CIE 1931色彩空间的一个问题是它没有给出估量颜色差别的直接方式。希望在色度图上距离能对应于在两个颜色之间的差别程度。测量两个颜色之间的差别的想法是D.L. MacAdam开发的并总结于MacAdam椭圆的概念中。基于MacAdam的工作，在1960年开发了CIE L*u*v*色彩空间，它后来被CIE L*a*b*色彩空间所替代，二者都设计为在颜色空间中相等的距离对应于相等的MacAdam所测量的颜色差别。尽管它们比CIE 1931系统有明显的改进，它们没有完全免除扭曲。