个人学习笔记 ——【技术美术百人计划】图形 2.1 色彩空间介绍
图形 2.1 色彩空间介绍
图形 2.1 色彩空间介绍
PPT:
图形 2.1 色彩空间介绍
一、色彩发送器
1.1 光的要素
1.2 光源
1.3 波长
1.4 能量分布
1.5 分光光度计
1.6 光的传播
回到光线的传播路径上来讨论,我们认知到光是经过了不同路径才进入我们的眼睛中的。
直射光:光源直射眼睛
折射光: 光源穿过物体进入眼睛
反射光:光源经过物体表面反射进入眼睛
光线追踪:光线弹来弹去,然后我们根据权重确定光线最后进入眼睛中的颜色
二、色彩接收者
人眼本身设计的涉及到的东西太复杂我这里只会简单讨论一下人眼的一些接收色彩特性。
- 相对亮度感知
- 人眼HDR
- 人眼感光细胞分布
- 椎状细胞
- 人眼本质
- 完整微积分公式
2.1 相对亮度感知
在某些阴暗的环境下,点亮一盏灯,这时人眼就会觉得非常亮。如果同时点亮1000盏灯,反而觉得只是10倍的亮度,对亮度的认知相当于从0 ~ 1再从1~10 。
2.2 人眼HDR
目前还没讲HDR,我只是简单说明一下,人眼既可以分辨出高亮度的云彩的不同层次区别,还可以分辨出阴影中物不同物体的异同。但是人眼的能力并不能保证这两个功能同时生效。
这样一说,反而就能发现人眼真是个变化莫测的存在,它可能会随着不同的环境,感知到不同的色彩,体验到不同的明暗效果,甚至可能会随着盯着某一个点时间流逝而变化颜色。
(可以这样理解:人眼可以看到亮的物体的不同细节、层次。暗的同理,但是不能保证两种功能同时生效。(跨度太大,人眼不支持)
2.3 人眼感光细胞分布
人眼简单可以把感知色彩的细胞分为两大类,杆状细胞与椎状细胞
前者负责感知亮度,后者负责感知色彩,前者感光细胞对亮度特别的敏感,只要有5~14个光子打到杆状细胞就会产生神经信号,这也可以解释为什么闪光弹能让人致盲,一部分原因就是因为光实在太亮,直接干涉了人眼最敏感的感光细胞
2.4 椎状细胞
这种细胞专门用于感知颜色,但是他们还被区分为了L细胞,M细胞,S细胞。
这三种细胞负责感知的波长不一,如图所示,L感知红色区间,M感知绿色区间,S感知蓝色区间
2.5 人眼的本质
人眼的本质在标题就写清楚了,光源的接收者。
他的作用就是接收外部光线输入,输出神经电信号进入大脑。
2.6 完整微积分公式
这个公式简单分成了四个部分
- C值得是人眼这个函数输出的神经电信号
- S(λ) 表示LMS这三个感官细胞的感知分布
- I(λ)表示光源的功率谱分布
- R(λ)表示反射物体的吸收功率分布
三、色彩空间的历史
我们来通过历史的车轱辘来理清楚色彩空间的由来与计算公式。
因为我讨厌教条式的教导,直接告诉你公式与答案,让你去直接死背硬背。
现如今的时代脑子是用来思考的不是用来记录的。
3.1 1800 色彩的猜想
人们在18xx年有多种猜测,我们来讨论其中的3种
- 人们有100多种感受颜色的细胞
- 人们有三种,分别是RGB三种感色细胞
- 人们有三种,分别是黑白,红绿,黄蓝感色细胞
其中的2和3这两种猜想都成为了我们当下的色彩视觉模型,也称之色彩模型
3.2 1905 Munsell 色彩系统
美国艺术家 Albert Henry Munsell利用自己的艺术特长,最早提出了一个色彩系统,后来在1930年被优化改良。
Munsell通过很多色卡来描述色彩,下面旋转角度的是色相,Munsell垂直的是亮度,从圆心到外部是Munsell饱和度。 人们凭借自我主观意识认知与区分色彩就是HSL(色相饱和亮度),这套系统没有过多的物理科学在其中,更多的是一种艺术家的理解与归纳总结规范.
用了这个色彩系统之后,一个颜色可以通过:H = 1.6YR,V = 6.3,C = 3.9 来描述而且也不会有任何的描述与理解偏差。
于是我们方便起见就为一些常用色彩制作了色卡,一个个色卡描述色彩就非常方便。
3.3 1931 CIE 1931 RGB Color Specification System
科学家们觉得上述的色彩系统还可以,但是不够科学,于是为了以一种科学的方式阐述色彩,于是一个叫CIE的机构在1931年建立了一套色彩系统, 希望完全客观完全物理的量化色彩。
色彩匹配方案
CIE把所有可视波长的光线作为测试光挨个测试了一个遍,最终的到了三条曲线
我们发现435.8 ~ 546.1 nm这段波长中的红色基色强度是负数。这虽然物理正确,但是一点也没有科学的美感,于是我们进行了归一化,保证色彩在-1~ 1之间。
最终通过计算出rgb的基色的强度在当前混色强度的所占比例
这样计算后, r’g’b’都是在 -1 ~ 1 之间, 那么我们发现r’+g’+b’=1,那么就可以通过其中两个已知数计算出另一个的强度
图像可视化
在对数值归一化之后,两个变量就可以代表色彩了,于是我们就通过r’ g’这两个参数画图
于是画出了一个二维空间,x轴是r’,y轴是g’ 那么我们就可以成功的在色彩科学上真正科学的描述一个颜色
我们可以把任何可见光通过图标的一个点的坐标来表示说明。
3.4 1931 XYZ Color Specification System
上文的CIE1931RGB色彩系统已经不错了,但是存在负数,这在计算上非常的麻烦,比如写个乘法,得先计算是正数还是负数。
于是人们就用数学的方式做了一个新的色彩空间。所以XYZ色彩空间就是一个中转站,主要目的就是简化计算。
XYZ色彩空间模型:
那么最终效果就是这张大家应该会比较熟悉的图, 人称:色域马蹄图
也就是人眼可见范围表示, 但是我们发现图像上面好像没有亮度于是我们就在归一化的基础上,把XYZ中的Y单独拿出来与xy一起组成了Yxy色彩空间 其中的Y表示亮度 xy表示色度。
注:这里提一下 这里是Yxy色彩空间 Yxy是由XYZ色彩空间衍生
3.5 色彩空间的定义
色彩空间至少需要满足三项重要指标
- 色域 (三个基色的坐标,由此形成三角形)
- Gamma (如何对三角形内进行切分)
- 白点 (色域三角形中心)
3.5.1 色域
三个基色的坐标,由此形成三角形
3.5.2 Gamma
(对三角形内部进行了几次切分)方便计算。
首先理解一下gamma并不是色彩空间,它其实只是如何对色彩进行采样的一种方式
每次对比顶点切割,就会发现切割的方式不同会导致每次对应的色彩不一样,大家通常理解的gamma=1的情况就是指代这样均匀的切分,这样的好处就是方便计算。
而非均匀切割的方式就是gamma≠1
比如我们有个常用的空间 sRGB,那么sRGB的构成:
1.色域: sRGB首先设定了RGB三个基色的坐标
2.白点: sRGB也规定了白点位置
3.gamma: sRGB的gamma设定为≈2.2也就是说从外而向内切,先切的很细,然后逐渐变粗
Gamma详解
大家知道线性的好处也就是gamma=1的时候,方便计算,计算机效率高,方便理解,但是计算机储存与显示器硬件因为早期的性能问题,采用的基本大部分都是gamma≈2.2的情况,但是我们目前大部分的机器都已经不是远古版本了,所以PC上的大部分游戏都会推荐使用线性空间,包括很多VFX人员都喜欢用Linear线性空间。
于是我们可以根据色彩空间的定义确定,它们是由三个指标制作而成,但是他又不是定死的,我们可以自定义色彩空间呀
换一个色域 换一个白点位置, 换一个gamma值其实就是一个新的色彩空间了,我们可以也成为换头兄弟臭鼬。
所以也可以存在 sRGB D65 linear 这类空间, 所以 任何色彩空间都可以是linear线性的,但linear本身并不是一个色彩空间
3.5.3 白点
色域三角形的中间点,白:即最亮的点
四、常用色彩模型与色彩空间
色彩模型:
使用一定规则描述(排列)
颜色的方法举例: RGB、CMYK、LAB
色彩空间:
需要至少满足三个指标:色域、白点、gamma
举例: CIE XYZ、 Adobe RGB、 sRGB、Japan Color 2001 Uncoated、US web Coated(后两个是基于CMYK模型建立的
五、色彩空间转换
RGB2HSV:
HSV2RGB:
引用
【技术美术百人计划】图形 2.1 色彩空间介绍 https://www.bilibili.com/video/BV1Qb4y1S7CC?p=2
PPThttps://docs.qq.com/slide/DUWZZYXZHZmdmRk1B
苏格拉没有底语雀笔记 https://www.yuque.com/sugelameiyoudi-jadcc/okgm7e/yyfbrp