(Note)CIE色度图

色度图(chromaticity diagram):由国际照明委员会在1931年制定。

通过色度图,我们可以了解组成某一颜色的三原色比例,还可以看到此颜色的补色、明度及饱和度。

CIE色度图(chromaticity diagram,CIE):

CIE色度图是用CIE色度坐标x和y绘出的两维图。x为水平轴,y为垂直轴。可见光的外边界是由光谱所在点所定义的,拱形的曲线由纯的380nm770nm的光谱色所组成。色度图通过描绘和比较光源和显示器白点的关系来定义彩色设备的呈色域。

色度图是黑体轨迹的函数表达式v=f(u)在色度学中以色度坐标表示的平面图。而黑体不同温度的光色变化在色度图上又形成了一个弧形轨迹这个轨迹叫做普朗克轨迹或黑体轨迹。色度学系统的应用随着人们交流、传输、研究颜色信息的需要已经建立了多种各具特色的表色系统本研究采用了CIE1931标准色度学系统和CIE1976均匀色空间。

从380nm到780nm的光谱色在CIE 1931 RGB色度图上的轨迹如下图所示:

 

而所有人眼能识别出来的颜色,都由单色光相加而成,因此上色度图曲线上的任意两点画出来的线段所覆盖的范围,就是“人眼能看见的所有颜色”的区域大小。这就是人眼分辨能力的极限。

把这个区域用彩色填充出来,就长这样:

注意看,下面的这条直线,是380nm和780nm的连线。它构成了色域的另一个边界。

不过,上面边界的曲线是和单色光一一对应的,而下面边界的这条直线却没有单色光对应,而是两个光谱色的混合色轨迹。因为它是红色和蓝色的混合,所以主要是紫色的。这意味着,没有单色光形成的紫色。所有带紫的颜色,什么紫红色,品红色,都是所谓的“谱外色”。(这是不是就是紫色让人感到神秘的原因呢?)

任何两个单色光混合的新颜色,要么就正好踩在光谱轨迹上,要么就在光谱轨迹包围的面积之内,绝不会跑到外面去。

经过CIE的刻意设计,当XYZ三刺激值达到一个均衡状态的时候,就会形成白色。位于(x=0.3333, y=0.3333)位置的点,代表着三原色各占1/3,就是一个理想的等能白光E。中间这一大片,都是各种不同的白色。也就是是饱和度为0的消色(可能是黑色,也可能是白色)。

其中,除了专门用于理论研究的、假想出来的等能白光E点之外,还有个非常重要的白点:C点。它的全称是CIE标准光源C,相当于中午阳光的颜色。(注意看一下上色度图,光源C和E的位置相隔不远,C略比E色温高一点。)

Reference:

色度图_色度图的全面解析-带您了解色度图

03-18
### CIE RGB颜色模型介绍 CIE RGB颜色模型是由国际照明委员会(CIE)于1931年定义的一种基于三原色理论的颜色模型[^2]。该模型通过红(R)、绿(G)、蓝(B)三种基本颜色的不同组合来表示可见光谱内的各种颜色。CIE RGB颜色模型的核心在于其标准化的测量方法,能够精确描述人类视觉感知下的颜色特性。 #### 特点 - **基础原理**:CIE RGB颜色模型基于加色混合原则,即通过不同比例的红、绿、蓝光线叠加形成新的颜色。 - **坐标系**:在CIE RGB颜色空间中,每种颜色都可以用三个数值 (R, G, B) 表示,这些数值通常归一化到 [0, 1] 的范围内。 - **局限性**:由于某些波长的颜色无法由红、绿、蓝三原色线性组合而成,因此CIE RGB颜色模型存在负值的情况,这使得其实用性和直观性受到一定限制。 #### 应用领域 CIE RGB颜色模型主要应用于科学研究和高精度色彩匹配场景中。尽管现代显示技术更多采用改进后的CIE XYZ或其他衍生颜色模型,但CIE RGB作为早期的标准之一,在以下方面仍有重要影响: - **光学研究**:用于分析光源特性和人眼对颜色的响应关系。 - **校准工具**:在高端显示器和打印机的色彩校正过程中提供参考依据。 - **图像处理算法开发**:为更复杂的颜色转换算法奠定理论基础,例如从RGB向HSI或Lab颜色空间的转化过程均需考虑原始数据与CIE标准的一致性[^1]。 ```python import numpy as np def cie_rgb_to_xyz(cie_rgb): """ Convert from CIE RGB to CIE XYZ color space. Parameters: cie_rgb : array_like The input CIE RGB values normalized between 0 and 1. Returns: xyz : ndarray Corresponding CIE XYZ coordinates. """ conversion_matrix = np.array([ [0.49, 0.31, 0.20], [0.17697, 0.8124, 0.01063], [0.00, 0.01, 0.99] ]) rgb_vector = np.array(cie_rgb).reshape(3,) xyz_vector = np.dot(conversion_matrix, rgb_vector) return xyz_vector / sum(xyz_vector) # Example usage cie_rgb_values = [0.5, 0.5, 0.5] xyz_coordinates = cie_rgb_to_xyz(cie_rgb_values) print(f"CIE XYZ Coordinates: {xyz_coordinates}") ``` 上述代码展示了如何将CIE RGB颜色值转换至CIE XYZ颜色空间,这是进一步实现复杂颜色变换的基础操作之一。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值