games101-20-Color_Perception

光场

​ 我们看到这个三维世界,在人眼里类似就是一幅二维的图 ,那如果直接看到一幅图,这幅图完全记录了之前看到的光线信息,也能得到同样的结果(类似虚拟现实设备的应用)

image-20230514202102820
全光函数

​ 假设在一个场景中,位置固定,可以四面八方地去看,则用极坐标可以定义看的方向,全光函数描述了向某个方向看会看到什么样的值:

image-20230514202215347

​ 引入波长(引入不同的颜色):

image-20230514202302428

​ 引入时间t,类似电影,在不同时间显示不同的东西:

image-20230514202540398

​ 人可以站在任何位置,在任何位置往任何方向看在任何时间看到所有的颜色,即看到的整个世界:

image-20230514202420012

​ 可以从全光函数中提取一部分信息出来,表示更复杂的光的信息,这个概念比在一个点各个方向的光信息更多,首先来定义光线。前两个维度是方向,后三个维度是起点位置(也可以通过两点确定一条直线来定义光线):

image-20230514202839568

​ 要记录一个物体向四周展示的样子,只需要记录包围盒上表面各个点往各个方向发射的光线的信息,也就是记录了其光场信息(在物体表面任何一个位置去向任何一个方向的光线强度)。当相机看向物体,两点确定一条光线,可以查询该光线的信息 。物体的表面是二维的(根据纹理坐标的原理),方向也是二维的(用两个角度定义),所以用这个四个信息当变量的函数就是光场(全光函数的一部分只有位置和方向)。

image-20230514203419565

​ 记录下物体的光场后,就可以根据摄像机的位置和摄像机看向物体哪一点(相机可以看见很多点,因为视锥体是一个区域),连接一个光线,查询其相应的光线强度(记录了物体任意一个点朝任意一个方向的光场强度)

image-20230514204228880

​ 还可以理解成取一个平面,平面右边是一个物体,它的光会穿过这个平面来到左边,我们不需要知道右边有什么,只需要知道对于平面上任意一个点的任意一个方向会发出什么(就好比在最初的例子中,看一个平面和看窗外的几何体效果相同,注意相机在平面外侧)

image-20230514205203793

​ 通过定义一个平面上点和角度,也可以定义两个平面上的点,通过两个坐标信息来表示一个光线,这是一个经典的参数化表示的方法。用两个平面来定义光场,便于降维也就是从上面的 位置+方向 变成 位置+位置 两个平面两点一连就得到一个光线。

image-20230514205246138

    现实中也有人用第一种方式记录光场

这样参数化有两种理解方式

  • a. 一种是固定(u,v)(u,v), 所有的(s,t)(s,t)组成一张图,也就是从(u,v)点看到的外部世界的样子
  • b. 另一种是固定(s,t)(s,t), 所有的(u,v)(u,v)组成一张图,也就是显示从不同方向看同一个点的样子

相当于不同的位置(u, v),拍摄同一张图(s,t)

image-20230514210849259 image-20230514210951197

自然界中苍蝇的复眼就是类似于第二种理解
我们在照片中任意一个像素记录的是irradiance,不区分方向,但是对于复眼来说,它们记录的分光之后的分量,也就是记录的是radiance

微透镜原理:把一个pixel替换成透镜,可以把来自于不同方向的光分开再记录下来
支持后期聚焦(可以先拍照再调焦)
光场camera的原理:(其实就是光场的原理)

光场照相机的图怎么还原成普通相机呢?
我们把分散的光,每个透镜都选一条,然后把得到的结果都记录在一个像素的结果上,现在一个透镜就对应一个值了,和之前一样
选光线的步骤就相当于是重新聚焦,虚拟地移动相机的位置
我们不涉及重新聚焦具体怎么做,只介绍思想,我们从四维光场中按需查询选取光线

光场照相机的问题:
分辨率不足,因为原来一个位置可能只需要一个像素,但是透镜把光分开以后,可能会需要好几个像素来记录不同方向的光,同样的胶片尺寸下,光场相机的分辨率不足
高成本、难设计
再次体现trade-offs

颜色

​ 太阳光被折射成不同的颜色-太阳光由多种波长的光组成,不同波长的光有不同的折射率。

​ 一种光对应一个光谱,就是光的能量在不同波长上的分布。波长越小频率越高。在图形学中主要关心可见光光谱(波长大约在400nm到700nm)。光谱也叫做SPD普功率密度,光在不同波长有不同的强度。

image-20230514234310285

​ 不同光有不同的光谱,也就是不同的普功率密度:

image-20230514234258648

​ 普功率密度有线性性质,两种光一起照射的谱功率密度等于两种光单独照射的普功率密度之和。

image-20230514234246453

​ 颜色是人的感知,它不是光的一种根本的属性,也就是波长不是颜色。人的眼睛类似一个摄像机,晶状体类似透镜,视网膜类似于成像的地方(光最终达到的地方),瞳孔类似光圈。

image-20230514234226356

​ 视网膜具有如下两种细胞:

​ (1)杆细胞(Rods cells):棒状,数量多,只感知光的强度而非颜色

​ (2)视锥细胞(Cones cells):锥形,数量少,用来感知颜色

​ (3)视锥细胞又被分为S, M, L三种,用来感知不同波长的光,三种细胞对不同波长的光的相应能力不同,如下是三种细胞对光的相应曲线:

image-20230514234136685

​ 不同的人这三种视锥细胞分布非常不同,所以对于相同的光,感知不同,看到的结果也不同,因此颜色是人的感知。

image-20230514234741409

​ 人眼无法测量,大脑也无法接收有关每种光波长的信息(已经被积分掉了),光谱到视网膜上,眼形成3个响应值(S,M,L)(S,M,L)并最终由大脑接受。不同视锥细胞感知结果的计算方式如下:假如一个光的光谱分布在430-490,通过光谱获得光在430波长的强度,通过下图获得S细胞对430波长的感知数,二者相乘,在从430积分到490,就获得S细胞对这个光的感知结果,以此类推获得M值和L值。

image-20230514235619301

​ 同色异谱是指两个不同的光谱,它们最终投射到相同的(S,M,L)响应值(也就是两种不一样的光谱最后的积分结果相同)。如下四种光能被人感知相同的结果:

image-20230515001230547

​ 同色异谱会导致人感知到相同的颜色,其存在对于色彩再现至关重要,这个过程也叫颜色匹配(Color Matching)过程。一个例子:同色异谱使得只有三种颜色的显示器上可以再现真实场景的感知颜色,即使他们波谱完全不同,也能被人眼感知为相同的颜色。

image-20230515001406059

颜色混合

​ 我们认为计算机中使用的成像系统是加色系统 Additive Color。给定三种原色 $s _ { R } ( X ) , s _ { G } ( X ) , s _ { B } ( X )$,调整这些原色的强度,将他们混合在一起 $Rs _ { R } ( X ) + Gs _ { G } ( X ) +Bs _ { B } ( X )$。利用混合三种颜色的系数来描述颜色 R*,G,*B。加色系统很多颜色都可以通过三原色混合合成。但是有的颜色怎么都混合不出来,这时候的系数可能是负的(因为是加色系统值不能为负数,所以只能给左边要匹配的颜色加):

image-20230515002342430

​ CIE是一个组织,它们定义了RGB的系统,与之前的加色匹配设置相同,只有三种原色,但原色和测试光都是单波长的光,通过测试来测量多少强度的三种原色加起来与测试光相同。

image-20230515002704933

​ 如下的颜色匹配函数描述了每个 CIE RGB 原色光各自多少强度相加起来才能匹配 x 轴上给定波长的单色光(红色部分确实会存在负数)。每一列得到的是对应的是单一波长的光,但是现实的光线SPD是很多波长组合在一起的,所以在表示现实颜色时要把每一个波长都考虑进去,要使用积分表示。

image-20230515002718396

​ 标准sRGB,是一种被广泛运用于各种设备的色彩系统,但是RGB所能形成的色域是有限的。

​ CIE XYZ系统不是实验得到的,而是人造的,认为规定某个单波长光由多少红绿蓝组成。这个系统使用XYZ表示颜色,红色区域不再存在负数,并且由于绿色部分在轴上分布比较均匀,Y也表示亮度,与RGB的区别其实就是匹配函数的不同。

image-20230515004845995

​ 如果想要把XYZ系统表示的颜色都可视化显示出来,需要将这些三维的数表示成二维,要使用归一化,又由于Y表示亮度,可以将其固定下来,这样就可以得到了xy图,这就是色域。纯的颜色都在边界,接近单波,白色是最不纯的颜色。

image-20230515005305748

​ 不同色彩空间所覆盖的色域范围也有所区别,它们能表示的颜色范围各不相同:

image-20230515005605185

​ HSV色彩空间被广泛地运用于颜色选择器(色调、饱和度(越饱和越接近单波)、亮度)

image-20230515010248637

​ CIE还有一种Lab色彩空间。L为亮度、a表示红绿、b表示蓝黄,这个空间认为轴的两端都是互补色。互补色是通过实验得到的,可以通过视觉暂留效果验证。

image-20230515010340610

CMYK是一种减色系统 CMYK: A Subtractive Color Space

  • CMYK用的是靛蓝、品红、黄色、黑色 Cyan, Magenta, Yellow, and Key
  • CMYK系统在印刷时很常见 Widely used in printing
  • 通过混合CMY可以得到黑色,但是由于打印成本原因,黑色墨水成本低需求大,故存在黑色 黑色墨水好造
Donate
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.

扫一扫,分享到微信

微信分享二维码

请我喝杯咖啡吧~

支付宝
微信