计算摄像学:成像模型理论与深度学习实践
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.2 色彩形成的基本原理

图像传感器能够在每一像素产生正比于光强度(通常是可见光)的数字信号,但在没有加装颜色滤波器的情况下,传感器仅能记录灰度图像,而无法捕捉到场景的颜色或区分不同波长光线之间的相对强度。为了记录场景颜色并在显示设备中尽可能真实地复现场景,目前通常采用模拟人类视觉色彩感知的方式来记录并复现场景颜色。本节将介绍色彩(颜色)的基本概念及数码相机摄得彩色图像的原理。

与光的强度、波长(通常用符号λ表示,单位为nm)等客观尺度不同,人类视觉系统(Human Vision System,HVS)感知到的颜色是一种主观现象,是因可见光波段(380~720nm,电磁波谱与数字摄像主要关注的可见光谱段见图2-5)内不同波长的光的相对强度差异以及人眼对不同波长光的敏感度差异而产生的。对色彩的感知因人而异,也有人因丧失对某些色彩的区分能力而被认为是色盲(如红绿色盲)或色弱。通常使用光谱功率分布(Spectral Power Distribution,SPD)Φλ)对不同波长光的强度进行建模。图2-6展示了几种常见白色光源的色温及光谱功率分布,包括日光、白炽灯、荧光灯、卤素灯和LED(发光二极管)灯等。大多数的光源都包含不止一种波长的光。即使这些光源的光谱功率分布有很大差异,但人类对这些光源的颜色感知基本为白色,这意味着不同的光谱功率分布可以产生类似或者相同的颜色感知,也意味着肉眼(以及模拟人类色彩感知的普通相机)无法直接对光谱的相对强度进行区分。

图2-5 电磁波谱与数字摄像主要关注的可见光谱段

图2-6 常见白色光源的色温及光谱功率分布(基于维基百科的插图重新绘制)

https://en.wikipedia.org/wiki/Color_temperature

在光线进入人眼、到达视网膜之后,会刺激视网膜感光细胞。视网膜上有两类感光细胞:视杆细胞(rod cell)与视锥细胞(cone cell)。视杆细胞对光的波长不敏感,因而也就对颜色不敏感,主要感知光的强弱;而视锥细胞对弱光与明暗不敏感,主要感知亮光的颜色,大部分集中在视网膜中央凹(fovea)处。人对色彩的感知就是基于视锥细胞产生的三刺激值(tristimulus)。人通常拥有三种视锥细胞,为S、M及L型细胞,分别对短波长、中波长及长波长的可见光敏感,对应蓝色、绿色及红色,如图2-7c所示。正常色觉人类的绝大多数的视锥细胞均为L型(占64%)及M型细胞(32%),如图2-7a所示,这也导致人对于红光与绿光更为敏感,而对于蓝光较不敏感。一些人缺少某类视锥细胞,就会导致色觉缺陷,如红绿色盲,如图2-7b所示。

图2-7 人类视网膜视锥细胞分布(图2-7a、b来源于维基百科)及视锥细胞光谱响应函数

https://en.wikipedia.org/wiki/Photoreceptor_cell

如式(2.1)所示,三种视锥细胞基于各自的光谱响应函数(Spectral Sensitivity Function,SSF){S,M ,L}(λ)将入射的光谱功率分布进行累加,得到对应的三刺激值{s,m,l},并传入大脑,使人类视觉系统产生色彩感知。

数码摄像的主要目的是复现拍摄时的场景,其终端用户为人类视觉系统,因此设计相机时也参考了人的视觉,将不同颜色的颜色滤波器组合成为颜色滤波器阵列(Color Filter Array,CFA),类似于人的视锥细胞和视网膜。图像传感器的每个像素前都有不同颜色的颜色滤波器,以对不同波长的光进行响应并有选择性地透过光线。常见的阵列使用红色(R)、绿色(G)和蓝色(B)三种颜色滤波器,对应三种视锥细胞。图2-8b展示了Canon 50D与Canon 40D的RGB颜色滤波器的光谱响应函数。利用颜色滤波器阵列,每个像素除了能够记录光强度信息外,还能记录RGB三种颜色信息,使得拍摄彩色数码图像成为可能。

图2-8 相机颜色滤波器及其光谱响应函数(基于CMU 15-463[1]课程讲义插图重新绘制)

然而,使用几种颜色、何种颜色的滤波器以及如何在传感器像素平面排布颜色滤波器,曾经困扰了相机工程师很长时间,直到柯达(Kodak)公司前工程师布莱斯·拜尔(Bryce Bayer)设计了拜尔马赛克阵列(Bayer mosaic)并于1976年注册专利,如图2-8a所示。拜尔阵列是最为经典的颜色滤波器阵列设计,其中每2×2的方格区域包含两个对角的绿色滤波器,以及各一个红色滤波器和蓝色滤波器。其绿色像素相比红色和蓝色像素更多,是因为人眼对于绿色的光较为敏感,因此摆放更多绿色像素能够使得图像的绿色通道拥有更高的信噪比。然而颜色滤波器阵列的好坏并没有特别客观的度量标准,拜尔阵列也并不是唯一使用中的颜色滤波器阵列,另外还有如Canon IXUS相机使用的CYGM阵列及Sony Cyber-shot相机使用的RGBE阵列等。

此外,颜色滤波器阵列是一种空分复用(Space Division Multiplexing,SDM)手段,但事实上也可以通过转动颜色滤波色轮来达到时分复用的目的,或采用分光器或多层感光器件(如Foveon X3)以使得单个像素能够记录全部RGB三通道的值。但这些技术使用较少,绝大多数数码相机仍然采用颜色滤波器阵列进行彩色图像的拍摄。