关于色域的学习笔记
徐新华
关于色彩空间
色彩是可见光所展现的,不同颜色的物体吸收和反射的波长的光不同,所产生不同的颜色。
色彩做为现实世界固有的属性是存在和不变的。
我们利用数学知识对色彩进行编码,便是色彩空间的来源,不同的编码其所指向的颜色都是唯一存在的,因此色彩空间都是可以互相转换的。其只是不同的数学变现形式而已。
例如:我用0-255表现红色,也可以用0.0-1.0表现红色,他们之间是可以互转的。
不同精度表现的颜色数量也不一样,如果你只用1个bit位表现颜色,那么这个世界就只有两种颜色0和1即非黑即白,如果你用8个bit位表示颜色,就有256种颜色,呵呵就是最开始所说的256色。
现实世界是连续的,我们的数学表征是离散的。我们用有限的数字表示无限的颜色,这样数字精度越大所表现的颜色就越多,就越接近真实的世界,如果色彩还原系统如电视能支持这么大的精度,则越接近真实。
那么是否是精度越高越好了,这时候我们就需要和现实我们能做到的进行妥协。
1)显示设备能够显示的精度
2)我们传输的带宽和cpu的处理能力,处理32bit和处理8bit对带宽和处理器要求有天大的区别。
如何解决这个问题?
科学家们对人眼就行测量和观察得出人眼的一些特性。
1)人眼有视锥细胞视杆细胞来区分颜色,
2)人眼有视觉暂留作用:这个作用我们就可以用dither抖动来模拟更多的颜色,通过快速交换不同的颜色来欺骗眼睛。
3)人眼对图像的认知是非均匀和非线性的:实际上压缩算法充分利用这一点。很多颜色人眼是区分不出差别的。呵呵举个简单的例子,1.74m和1.75m高的两个人站在一起感觉两个人差不多看不出差别,1.73和1.74也看不出差别,但1.73和1.75放到一起就有差别了。类似对于颜色采样的精度在一定区间,人眼就认为是连续的,准确的。
4)人眼对380nm-780nm不同波长的颜色光有不同的敏感度,有色光初中我们就学到用三棱镜可以分离为红橙黄绿青蓝紫,在光谱上人类对绿光感觉最灵敏,向两边递减,根据这个特性科学家发明了yuv色彩空间进行编码,数字量化的表示是ycbcr 亮度+蓝色偏差+红色偏差来表示颜色。
CIE 1931 色域色度图
如何看CIE1931色域图:
从自然界看色彩是由不同波长的光所发出的,但我们可以通过混合不同比例的光来产生其他颜色,譬如rgb是最常用的基准色,当然也可以采用其他颜色组合。
我们的色域空间CIE1931也是基于RGB三原色定义的,被成为XYZ色彩空间,X代表R,Y代表