第1章:色彩管理

内容纲要

介绍

谈到电影摄影,就不能不谈色彩问题。必须知道你在哪种原色(或色域)范围内进行渲染,你的显示目标是什么。第1章和第1.5章是本书的唯一技术章节。 色彩管理是一件麻烦事, 但是它将为你以后建立适当的照明奠定坚实的基础

当然,你可以在没有LUT的情况下在全sRGB下工作,仍然可以获得不错的结果……但是,我们不要走这条路。

这并不是最简单的方法,但我宁愿先把所有的技术性东西疏散开来。计算机图形学中的照明与技术密切相关,对这些概念的良好理解非常重要。我试图让任何人都能容易理解。在接下来的章节中,我们将重点讨论艺术方面的问题。不要害怕!

如果你不喜欢从技术章节开始,我不会怪您。您可以直接跳至第2章

我的一些数据来自于托马斯-曼森卡尔的这篇精彩文章。由于它有点技术性,我试图为不熟悉这个主题的读者简化它。让我们从Mark D. Fairchild的的这句伟大的话开始吧:

"为什么在色彩外观领域达成一致的术语会特别困难?也许答案就在这个主题的本质上。几乎每个人都知道颜色是什么。毕竟,他们在出生后不久就已经有了第一手的经验。然而,很少有人能精确地描述他们的色彩经验,甚至精确地定义色彩。"

要确定本章的主题是一个艰难的问题:色彩管理是什么?我们是在讨论原色吗?LUTs(查找表)?宽色域渲染?实际上,这些东西都有一点……

视觉错觉

当我们谈论颜色时,要考虑三件事:

  • 主题
  • 眼睛
  • 大脑

这里有几个例子可以告诉你,我们的大脑很容易被欺骗,并且我们应该谨慎地谈论色彩。












你可以找到大量的光学幻觉互联网上,就像我们的最后一个例子:是的礼服蓝色或白色的

人类的眼睛

首先要知道的是,人眼是一个非常复杂的和先进的技术。我们很少尝试用相机和屏幕复制其重建过程。它是如何工作的 ?


科学真的让我很吃惊。

角膜是透明的前部覆盖物,可以接受光线。它的折射能力使光线弯曲,从而自由通过瞳孔。瞳孔是虹膜中央的开口,其作用类似于照相机中的快门。它是一个可调节的开口,控制允许照射到晶状体的光线强度。它有能力放大和缩小,这取决于有多少光线进入眼睛。

光线通过虹膜后,会穿过眼睛的天然晶状体。这种透明、灵活的结构就像相机中的镜头一样,可以缩短和延长其宽度,以便适当地聚焦光线。晶状体通过玻璃体聚焦光线,玻璃体是一种致密、透明的凝胶状物质,充满眼球并支持视网膜。

视网膜的功能很像相机中的胶片。它接收角膜通过眼睛内部晶状体聚焦的图像,并将该图像转化为电脉冲,由视神经传递给大脑。视网膜由感光体制成,分为两种:杆状体和锥状体。我们待会儿再来讨论它们。

玻璃体也吸收紫外线以保护视网膜免受这些波长的影响。

螳螂虾

螳螂虾,或  口足类,是口足纲的海洋甲壳类动物 顺序 Stomatopoda。它们是许多浅水,热带  和  亚热带  海洋生境中最重要的  食肉动物之一  。但是,尽管很常见,但人们对它们的了解却很少,因为许多物种的大部分时间都藏在洞穴和洞中。

Guerilla Render的创建者Ben向我解释说:我们的眼睛实际上只能看到红色、绿色和蓝色。它们都是垃圾! 与螳螂虾相比,它们什么都不是。这里有一些非常神奇的眼睛!它们有12个感光器。它们有12个感光体,而人类只有3个。它甚至可以看到紫外线和红外线,就像捕食者一样!

三色系统。



螳螂虾是色彩科学家的参考。

最后,大脑负责管理所有这些数据。当图像到达视网膜时,它实际上是颠倒的。大脑把它的背面正确:

我们真正看到的是我们的大脑根据眼睛提供的输入对物体的重建,而不是我们眼睛接收到的实际光线。

来自这篇文章。

什么是颜色?什么是光?

要定义颜色,你必须首先定义光,因为没有光,任何颜色都是无法感知的。

  • 光是一种能量。
  • 光能以波的形式传播。

有些光以短而 "汹涌 "的波浪形式传播。另一些光则以长的、懒散的波进行传播。蓝色光波比红色光波短。

来自《电影色彩》:色彩科学的研究从光谱开始。人们将光的能量作为波长的一个函数来衡量。靠近这个范围中间的光(黄-绿)被认为是最明亮的。


光是_人眼可见的电磁辐射。

除非有障碍物发生并执行以下其中一项操作,否则所有光线都将沿直线传播:

  • 反射它(像镜子一样)。
  • 折射它(像棱镜一样弯曲)。
  • 散布它(就像大气中的气体分子一样)。

光线是所有颜色的来源。实际上,光在我们的生活中是多么重要,令人惊叹。柠檬呈黄色时,是因为其表面反射出黄色,而不是因为它真的是黄色。这是一个让我很困惑的事情,但是颜料看起来是有色的,是因为它们有选择地反射和吸收某些波长的可见光。

这些概念大多来自维基百科。您可以在线找到有关此主题的大量文章。我对物理学一直不是很在行,但这里有一个更技术性的描述:

光是人眼可见的电磁辐射。可见光通常被定义为在红外线(具有较长的波长)和紫外线(具有较短的波长)之间的波长在400-700纳米的范围内。这些波是由光子组成的

CIE 1931色彩匹配功能

在读了在读了杰里米-塞兰(Jeremy Selan)的惊人的《电影颜色》(Cinematic Color)之后,我觉得有必要加一段关于色彩匹配功能的文字。我不能比他解释得更清楚,所以我就引用一下:

人类的视觉系统[…]是三色性的。因此,颜色可以被完全指定为三个变量的函数。通过一系列的知觉实验,色彩界得出了三条曲线,即CIE1931色彩匹配函数,它允许将光谱能量转化为色彩的测量。


CIE 1931年的颜色匹配函数将光谱能量分布转换为颜色的量度,即XYZ。XYZ预测两个光谱分布在普通人类观察者看来是否相同。

输出称为CIE XYZ 三重值,各个组件分别标记为X,Y和Z(大写字母很重要)。[…]当将所有可能的光谱转换为x,y,Y空间并绘制x,y时,它们落在色度图上的马蹄形区域中。

色度图是我们下一段的主题。

1931年和1976年的CIE色度图

我们现在要深入挖掘色彩课题。我花了6个多月的时间来理解整个过程,仍然有许多模糊的地方。但是,与我的同事克里斯托夫-弗斯皮伦(Christophe Verspieren)一起进行的这次色彩之旅,是一个非常有趣的过程。

CIE XYZ是由国际照明委员会(CIE)在1931年定义的色度图。它是第一种根据人类视觉来描述颜色的色度图。

1931年和1976年的两个主要CIE图。

CIE科学家于1931年见面,代表了我们所看到的颜色。在CIE XYZ色度图诞生了!他们在45年后见面并对其进行了改进:创建了CIE U’V’。即使1976年的CIE U’V’更准确,但1931年的CIE U’V’仍然是色彩界使用最多的。旧习难改。

David L. MacAdam(1942)的研究表明,CIE 1931 xy色度图未提供感知均匀性。这意味着在CIE 1931 xy色度图中,颜色的可测量色度与观察误差范围之间的关系不一致。

这篇惊人的文章中

  • 这些色度图是人眼可感知的所有色度的视觉化。
  • 2个轴可用来给每种颜色在这个图上提供一个独特的坐标。

来自《电影色彩》:马蹄形内的区域代表所有可能的综合色彩光谱;外侧的区域不对应于物理上可能的色彩。

马蹄形或舌形区域。这真的取决于。

CIE XYZ作为一个标准参考,许多其他的色彩空间都是根据它来定义的。请牢记这些图表,因为我们以后会不断地参考它们。

RGB色彩空间及其组成部分

一个RGB色彩空间是由我们工作空间中的所有颜色组成的。它由三个部分定义:

这是RGB色彩空间的样子:

该屏幕截图来自colour-science

在上图中,需要注意三点重要的事情:

  • RGB颜色空间实际上存在于3D空间中(屏幕左侧)。
  • 为了使可视化更容易,我们通常只在给定的亮度下使用2D切片(右下方的屏幕)。在此示例中,您可以看到Rec。709色彩空间对照CIE 1931图。
  • 注意黑点吗?它们代表了RGB色彩空间(在本例中为Rec.709)内图像的像素值(右上方的屏幕)。称为绘制色域。

原色

“基色度坐标定义了可以由给定RGB颜色空间编码的色域(颜色的三角形)。”

原始色域是一回事。

换句话说,原色是三角形的顶点。 我们将使事情复杂一些……注意!这些顶点中每个顶点都有一个纯RGB值

  • 红色= 1,0,0
  • 绿色= 0,1,0
  • 蓝色= 0,0,1

但是这些顶点中一个在CIE图上都具有唯一的xy坐标。这就是我们能够比较它们的方式。通用定义颜色的唯一方法(独立于其亮度)是给出其xy坐标。在此图表中,您可以看到不同颜色空间的坐标:


我选择了我最喜欢的RGB色彩空间。

在更宽的色彩空间中工作使我们可以访问更多的饱和值。实际上,这带来了很大的视觉差异!


我已经使用了两个图表进行比较。

在此图中,您可以清楚地看到每个色彩空间的不同原色:

  • 不同的xy坐标。
  • 相同的RGB值。

我们是否一直想在最大的色彩空间中工作?不必要…

我们待会儿再讲

白点

白点定义白色对于给定的RGB色彩。穿过白点的位于中性轴上的任何颜色集,无论其亮度如何,都将对该RGB颜色空间中性。


D65大致相当于西欧的平均午间光照。

有几个白点。为白点提供一组原色时,它将用于平衡原色。但是观看环境也将有一个白点,该白点可能相同或不同。因此,存在校准白点创造性白点的概念。

区别于数字电影院的一个例子是,数字电影院已校准为DCI白点,但电影通常会使用另一个白点(D60或D65)作为创意白点。

RGB颜色空间可以根据其上下文使用而具有不同的白点。它可以是创造性的选择:

  • 如果要模拟标准观察室的光质量,请选择D50。选择暖色温度(例如D50)将创建暖色白色。
  • 如果要模拟中午的日光质量,请选择D65。较高的温度设置(例如D65)将产生稍冷的白色。
  • 如果您喜欢凉爽的日光,请选择D75。

传递函数(OETF和EOTF)

传递函数执行线性光分量(激励值)和非线性R’G’B’视频信号之间的映射(大部分时间用于编码优化和带宽性能)。

好的。在这里,事情变得更加复杂了……我们早已看到了三刺激值。但是编码优化和带宽性能呢?这是答案:

来自物质PBR指南:人类视觉系统(HVS)对较暗色调而不是较亮色调的相对差异更敏感。因此,不使用伽马校正是浪费的,因为太多的比特将分配给HVS无法区分音调的音调区域。

传递函数或伽玛有助于更好地编码比特,从而提高性能。有两个传递函数:

  • OETF:光电传递函数,通常在摄像机内将线性场景光转换为视频信号。当您拍摄或扫描时。
  • EOTF:电光传递函数,可将视频信号转换为显示器的线性光输出。当您向屏幕发送信号时。


也有对数传递函数,但这是另一个主题。

常见错误

需要注意的重要事项是:

  • 线性不是色彩空间。
  • 线性不一定是广色域,当然也不是无限。
  • 它是一种传递函数,与100%色域有关。

即使在业内经验丰富的VFX中,这也是一个非常普遍的错误。其次,为简化起见,假设这些传递函数与gamma和电视信号有关:

一个普遍的看法是,由于人类视觉系统的非线性,所以需要一个非线性的光-电传递函数。的确,人类的视觉系统非常复杂,亮度感知是非线性的,近似于立方根幂律。

我们又回到了我们的第一点:人类的视觉是非常复杂的。我们需要这些转移函数来保证我们的视觉舒适。

我所经历的最大的斗争之一是说服我的主管,线性不是某种无限的色彩空间。

在这种情况下,无限意味着可以获得光谱中的所有颜色。

颜色空间的属性

为了正确解释一组RGB值,还需要两个属性:_图像状态_和查看环境

影像状态

影像状态在国际标准ISO 22028-1中定义。这基本上是有关定义RGB色彩空间的国际标准。

场景引用

涉及_场景的_图像是_指_在进行任何类型的相机内处理之前,将其光值记录在相机焦平面时记录的图像。这些_线性光_值与场景曝光的客观物理光成正比。通过扩展,如果图像是场景引用的,则捕获该图像的相机只不过是光子测量设备而已。

这个博客的定义很棒。

显示参照

与_显示相关的_图像是根据其_显示方式_定义的图像。例如,Rec.709是与显示器有关的色彩空间,Rec.709图像的对比度范围映射到显示设备(高清电视)的对比度范围。

观看环境

该部分将于2020年第四季度发布。感谢您的耐心等待!

本文对此进行了解释。而这也是Autodesk提供的。

行业标准

屏幕制造商和电影专业人士已经就某些标准达成了一致。它们的特征改变了我们图像显示和渲染的方式。这是对我们最重要的四个:

  • sRGB用于互联网,Windows和相机照片。
  • 建议 709具有 sRGB 相同的原色,但gamma有所不同。这是因为Rec.709的目标用途是在昏暗的环境中观看视频的视频。
  • DCI-P3用于电影放映机。
  • 建议 2020年,也称为超高清电视,比色法的未来。
  • AdobeRGB用于打印项目。


sRGB和Rec.709确实具有相同的原色。

这些色彩空间是做什么用的?对于两件事:

  • 渲染空间:也称为工作空间,用于我们的光照计算。
  • 显示空间:应该与我们的显示器匹配,这显然需要适当的校准。

这些只是CG字,用于定义场景引用和显示引用。

他们基本上是同一件事。

渲染和显示空间

渲染和显示空间不必相同。了解这两者之间的区别真的很重要。在CG中,渲染空间将始终必须具有线性传递函数。我们将详细介绍线性工作流程

对于显示空间,当您在进行项目工作时,您必须问自己:我的图像会在智能手机,电视机还是在剧院中显示?这是色彩管理真正派上用场的地方。在CG工作流程中,至关重要的是,每个步骤都要知道您正在处理哪些主要项目。

购买显示器时,应检查这些色彩空间的覆盖范围。例如,在一家著名的巴黎工作室使用的显示器只能覆盖93.7%的P3色域。太低了!我们将永远无法完美匹配剧院的投影机。在显示空间上工作与显示器的细节或项目的需求不完全匹配是没有意义的。

P3是由数字电影倡议组织(DCI)定义并由电影电视工程师协会(SMPTE)发布的用于数字电影投影的常见RGB色彩空间

什么是sRGB?

托马斯·曼森卡尔(Thomas Mansencal)在文章中对此进行了精彩解释,对于许多艺术家来说,sRGB仍然是一个混乱的概念。什么是sRGB?

  • 有人说:“ 这是一个色彩空间!
  • 别人回答:“ 这是一个传递函数!

sRGB实际上是两者!它是一个包含_传递函数的颜色空间,该传递函数是对简单的gamma 2.2曲线的略微调整。_这就是为什么您也可以使用伽玛校正(0.454 / 2.2)使其线性或不线性的原因。

摘自Substance PBR指南:“将sRGB OETF与sRGB色彩空间区分开来至关重要。OETF只是构成RGB颜色空间的三个组件之一。”

线性工作流程

对我来说,这是学生工作与专业工作之间最大的一步。线性工作流在行业中是强制性的。我不知道任何不使用它的受人尊敬的工作室。

杰里米·塞兰(Jeremy Selan):通常最好保留传统电影工作流程中即使在完全CG环境中也是有益的那些方面。因此,我们提倡将动画功能视为在计算机内创建“虚拟电影集”,其中包括虚拟相机,虚拟负片和虚拟印刷品。


请注意,左侧的输入为场景参考,但查看的输出为显示参考

如前所述,监视器具有伽玛校正,可以正确显示图像。自从有了CRT监视器以来,这是视觉舒适度的行业标准(因为光强度不会随电压线性变化)。

在大多数情况下,如果计算机运行Windows操作系统,则可以使用伽玛值为2.2的监视器来获得接近理想的色彩。这是因为Windows假定监视器的伽玛值为2.2,这是Windows的标准伽玛值。

从Eizo的网站上

我们通过将传递函数保存到sRGB图像中来纠正此问题。这就是为什么我们需要放置反向伽玛曲线(0.454)或反向sRGB曲线来对此进行补偿的原因。这是非常重要的一点:如果不对渲染空间使用线性传递函数,则渲染永远不会正确。用纯sRGB渲染(和显示)是错误的!

线性渲染空间的示例

以下示例使用不带LUT的sRGB显示变换,就像大多数渲染软件默认提供的一样。我们将看到为什么这几乎是错误的。

  • 显示空间:我想在屏幕上看到中间的灰色,所以输入0.5 。
  • 渲染空间:由于我正在线性工作流程中工作,因此_Autodesk Maya中_渲染的中间灰度值为0.214,这使我的计算正确



警告:线性工作流程仅完成一个色调映射步骤。

检查三件事:

  • 您在线性工作流程中的刻录更少。
  • 您会得到更好的弹跳。
  • 阴影看起来更准确。

来自电影色彩:为什么场景线性优先用于照明?首先,渲染本身具有好处。在给定具有高动态范围的场景时,诸如全局照明之类的物理上合理的光传输[…]会产生自然结果。[…]灯光着色器还受益于使用场景引用的线性,特别是在光衰减区域。[…]与基于物理的阴影模型结合使用时,使用r²光衰减自然而然。

r2光衰减只是二次衰减的另一个术语。

基本上,线性渲染可以为照明提供正确的数学运算。很多 网站,显示的例子线性工作流程。

线性混乱

场景混淆

这确实是VFX行业的原始罪过:认为_线性_是色彩空间。即使在VFX行业的资深人士中,该错误仍然很常见甚至某些软件都错了!


这些选择使我困惑了很长时间。

在Nuke中,这尤其令人不安:_线性_列为色彩空间,与_sRGB_或_Rec.709_相同。在The Foundry支持页面中,您可以找到一个解释:“ 但是,Nuke的色彩空间不是标准的色彩空间。” 伙计们,这应该写成大红色!

在发布我的网站后,收到了几封电子邮件,我认为值得一提的是,线性工作并不能使您神奇地访问无限的颜色范围。您仍然必须考虑工作中的基色(或色域)。

下一章中,我们将看到如何借助ACES消除所有色域混乱!

显示相关的混乱

我最近(2020年4月)有机会与Doug Walker讨论了有关场景引用和显示引用的线性问题:

经常描述线性工作流的方式包含一个关键错误。通常,描述暗示查看过程只是将应用在输入侧的伽玛调整值反转。但是,这是错误的,会导致结果对比度太低,中灰太亮以及高光被剪裁,因此要求艺术家通过以不自然的方式偏向照明和材质决定来进行补偿。

作者:道格·沃克Doug Walker),Autodesk色彩科学技术负责人。

基本上,大多数学校和学生所做的都是…… 错误!sRGB视图变换将渲染空间中的1.0映射到显示空间中的1.0。这是将其用作视图变换的问题之一,它不会为1.0以上的任何内容留出空间,并且仅对这些值进行了钳位。

为了纠正此问题,查看变换必须考虑以下事实:输入是颜色科学家称为“场景参考”的,而在监视器上查看的图像是“显示参考的”。这意味着观看变换不应该是简单的逆伽马,而需要合并有时称为色调映射步骤的内容。

这是我们下一章的主题。

查询表(LUT)

来自电影色彩:查找表(LUT)是一种用于优化功能的评估的技术,这些功能的计算成本很高,而缓存成本却很低。

LUT最初来自真人摄像机。多亏了值列表(表),它们允许在低动态范围监视器(LDR)上显示高动态范围图像(HDR)。我们的监视器和电影放映机不能DISPLA Ÿ整个HDR范围。LUT是在屏幕上显示像素并获得良好电影效果的最佳方法。这称为色调映射。

色调映射

到现在为止,我们主要集中在过程的场景引用部分(即渲染空间)上。现在,我们将详细介绍从场景参考转换为显示参考的部分。大多数艺术家都将此过程称为“ 色调映射 ”。

无论如何,如果仅应用sRGB LUT,则对比度将是错误的,高光将被剪切,中灰将被放置在错误的位置。 大多数CG艺术家会通过使灯光和材质值偏斜来补偿此错误,以使其看起来更好,但是如果使用适当的色彩管理系统,则不必这样做。

“如果没有S形观看转换,朋友就不能让朋友观看线性场景”。

托马斯·曼森卡尔(Thomas Mansencal)。

LUT说明

LUT有两种:

  • 一维LUT(左图):它只包含一列数字,因为它以相同的方式影响RGB像素。它们也称为Display LUT,通常使用S曲线形状来显示更好的值。我以spi-anim _(Sony Pictures Imageworks Animation)__配置中_的_vd16.spi1d_为例。如果图像的色域是Rec。**709,一维LUT不会更改它。**
  • 3D LUT(右图):它包含三列数字,因为它对RGB像素的影响不同。它们用于将一种颜色空间映射到另一种颜色空间。它实际上修改了原色!我用了_Rec。_以_ACES 1.0.3(学院色彩编码系统)_配置中的_ACEScg Maya.csp 709_为例。3D LUT允许您从一种色域切换到另一种色域。 那是一个非常强大的工具!

根据电影色彩:查找表(LUT)的特征在于其维数,即为输出值编制索引所必需的索引数。


为了显示方便,我特意缩短了文件。这些文件实际上有十万行。

我们还将LUT分为两类:

  • 技术性LUT:以获得最佳的图像显示效果。
  • 艺术性的LUT:根据您的个人品味改变色调,亮度和饱和度。

OCIO(OpenColorIO)

OCIO是用于配置和应用颜色转换的开源框架。[…]它旨在将复杂的颜色管线决策推广给可能无法单独理解正在发生的事情的许多人(即:不是调色师)。

我从这篇文章中复制的OCIO很好的定义。

要将LUT加载到MayaNuke,_Guerilla Render_或Mari中,我们将使用OCIO配置。OCIO配置是在不同程序之间共享LUT的最简单方法。你猜怎么着 ?它们也是免费提供的

这是Sony Picture Imageworks(左侧)和ACES 1.2(右侧)的_OCIO_配置:


为了显示方便,我还特意缩短了文件。

  • 预定义了不同的角色,例如颜色选择,_纹理绘画_或合成
  • DCI-P3和sRGB之间也可以使用不同的显示。
  • 电影外观设置会加载文件_vd16.spi1d,_并提供简要说明。

LUT有几种文件格式:spi1d,spi3d,csp,多维数据集…Photoshop仅接受多维数据集文件。否则,您可以使用ICC配置文件。不幸的是,Adobe软件不支持OCIO。

我t是至关重要的,任何人这样做效果开发或呈现使用相同的LUT。曲面,照明和合成部门的艺术家需要看到相同的事物。使用纯sRGB进行纹理处理,但使用s曲线LUT进行渲染会产生问题。MariSubstancePhotoshop提供了许多解决方案,以使您的工作保持一致。

OCIO配置非常方便,因为您可以在软件之间共享它们。您可以使用正式版本,也可以在Python中构建自己的版本。与视觉效果(VFX)相比,动画电影中的LUT到来得还晚。但是它们在行业中是一种改变游戏规则的人。顽皮的狗做了一些关于它们的非常好的 论文

一维LUT示例

如果不使用LUT会怎样?每次拍摄过度曝光时,都必须手动“修复”它。**那是错误的。**

如果没有LUT,则如果光源熄灭,则会降低其强度。但是您会失去一些来自全局照明(GI)的反弹,一些次表面散射(SSS)的反弹…

因此,您可能必须创建大量的灯光以补偿能量损失。这就是您最终得到一个复杂的50盏灯的方法!您希望能够根据需要投入尽可能多的能量。

检查以下示例:这是相同显示的渲染! 我重复一遍:渲染引擎​​的exr不会改变,这只是我们查看它的方式。



这是显示线性渲染的正确方法。

电影外观

作为一名学生,我迷上了电影外观和纯黑色,但又不使渲染图看起来很脏。唯一的解决方案是使用LUT。它将为您提供对比并修复任何曝光过度的区域。 这是用于色调映射的“电影” s曲线的样子:

所有这些词汇表可以帮助我们更准确地交流。

来自电影色彩:大多数色调渲染将传统场景的灰度曝光映射到输出显示器上的中心值。[…]增加了大于1:1的重构斜率以提高中间色调的对比度。当然,随着对比度的增加,阴影和高光会被严重剪切,因此在高端和低端均会使用对比度低于1:1的衰减,以使高光和阴影细节具有平滑的过渡。由于此高对比度部分位于中间,低对比度部分位于极值,最终曲线类似于“ S”形,如下所示。

高光的滚降非常明显:1到10之间的所有值都将在0.8到1的范围内显示。

您甚至可以免费从Arri下载这些中性的荡妇

由于哈利的链接!

区域系统

在继续之前,我们将快速进行周转,以介绍曝光,光圈和中间灰色。

1939-1940年,Ansel AdamsFred Archer描述了_区域系统,该系统_是确定最佳胶片曝光和显影的照相技术。不同的区域代表不同的曝光(相机停一停)。我们还从一个区域传递到另一个区域,是两倍。


您可以在互联网上找到大量的区域系统。

在电影院中,我们经常将中灰称为_V区中_的一种。这是一种具有平均发光感(亮度)的灰色,可以使照片正确曝光。

亮度亮度不是一回事!亮度是视觉感知的属性,而亮度是光度度量。

区分这两个非常重要。

中间的灰色问题

艺术家面临着各种不同的中间灰色数字。为了消除混乱,从场景中的灰色材料和显示器上的灰色两者的角度进行思考是有帮助的。

线性中间灰度值(场景参考)

剧透警报:中灰色是一个复杂的主题。中灰线性值不同,但是在VFX中,在颜色检查器和许多应用程序中,典型值为0.18。

我们将在下面比较不同的值。

0.214值

为了在Maya中进行良好的色彩管理,我们付出了巨大的努力。您可能已经注意到,_Autodesk Maya_中的线性中间灰色设置为0.214。这是为什么 ?


从显示空间切换到渲染空间是自动的!方便!

在Maya颜色选择器中,将“混合颜色空间”设置为“显示空间”时,Maya会通过反转视图变换将您输入的RGB值转换为“渲染空间”。默认情况下,Maya使用sRGB作为查看变换选项。通过sRGB曲线发送0.5,您将得到0.214。此值不是Autodesk推荐的值,它只是给定默认sRGB查看转换后事情的工作方式。

作者:道格·沃克Doug Walker),Autodesk色彩科学技术负责人。

_Autodesk Maya中的_此值0.214 与历史上朴素的1D sRGB VLUT有关,如下所示(来自colour-science):

\>>> color .models .eotf\_sRGB(0 .5)
0 .21404114048223255

sRGB作为查看变换的问题之一是,它没有施加必要的对比度提升来解决场景参考和显示参考查看之间的感知差异。将这些因素考虑在内,您得到的数字将接近0.18。因此,我确实认为0.18是场景引用空间中中间灰度的最佳数字。

作者:道格·沃克Doug Walker),Autodesk色彩科学技术负责人。

0.18值

历史上,摄影师使用18%的灰卡作为中间的灰色参考。18%的值是一个不错的选择,因为CIE L *亮度的值为49.5(其中100是理想的哑光白色,0是理想的黑色,而50在感觉上介于它们中间)。反射反射18%的光的物体的反射率是0.18。因此,如果您要在线性渲染色彩空间中设置要在中间呈灰色显示的材质值,则最好使用0.18。

很多 很多 很多 很多关于这个主题的文章。如果您想研究这个主题,我会让您检查一下。

真的,这是无止境的。

0.218值

中间灰色甚至可以是0.218(如下面的曲线所示),因为它非常接近pow(0.5, 2.2) = 0.2176.

如果您想进一步了解该主题,请查看此链接

我花了几年时间才弄清楚这一点。

线性中间灰度值汇总

这里是不同中间灰度值的摘要:

  • 0.18是一个很好的场景参考值,因为一旦通过CIE L *函数给出的L *为49.496。
  • 0.214是通过反向sRGB传递函数发送的中间灰度值0.5。
  • 0.218是通过伽玛2.2曲线发送的0.5的中间灰度值。

显示中间灰度值(以显示为参考)

中灰和伽玛

考虑问题的另一种方法是考虑从显示器上的中间灰色开始,而不是场景中的中间灰色对象。在这种情况下,可能会从选择介于白色和黑色的RGB代码值中间的颜色值开始。这样做的一个小问题是,显示器的伽玛值可能并不完全等于CIE L *亮度,尽管通常情况下差距并不大。

所述显示器伽马是不完全的感知亮度的描述。因此,从感知上看,它并不是显示器黑色和显示器白色之间的一半。

使用sRGB曲线在黑白之间使用50%的RGB值可得出L *值为53.4,而使用纯2.2伽玛值可得出L *值为53.8,因此在两种情况下都稍微太轻。但是,即使我们要使用精确L *为50的值,更大的问题是监视器上的中间灰度是否与场景中的中间灰度相对应。原来,事实并非如此!

似乎有一个嵌入式假设,即显示颜色编码中的0.5等于中间灰色。

有一些问题。

将监视器上的值(显示参考值)转换为渲染空间中的值(场景参考值)的方法是反转观看变换。 例如,这就是Maya拾色器将值从显示空间转换为渲染空间的工作。最基本的观看变换只是一个简单的伽玛,例如sRGB曲线。在这种情况下,显示RGB值为0.5变为渲染空间值为0.214(如果使用纯2.2伽玛,则为0.218)。

中灰和色调映射

但是,这些简单的伽马变换是不够的。适当的查看转换(例如ACES输出转换之一)可进行一系列校正,而不仅仅是考虑显示器的校准。例如,它校正由场景参照和显示器参照观看环境中的差异引起的感知对比度的差异。

此外,它在高光端保留了一些空间以用于镜面反射高光(因此,值不会在1.0时急剧下降)。这两个校正都会导致场景中的中间灰色映射为比显示空间中的中间灰色更暗的值:

  • 例如,反转sRGB监视器的ACES输出变换,我们发现显示空间中的50%变成了渲染空间中的0.310(比18%的灰卡亮得多)。
  • 在另一个方向上,如果我们从0.18的渲染空间值开始,并通过相同的ACES查看变换将其向前发送,我们得到的sRGB值为0.349(比0.5暗)。

总而言之,不要指望RGB显示空间中有50%对应于场景中的中间灰色对象 —实际上它比中间灰色要亮。如果需要显示RGB值以供颜色选择器使用,请在渲染空间中以0.18开头,然后通过用于项目的查看变换将其发送。

格式

我们都准备进行适当的色彩管理,并准备制作一些漂亮的渲染图。但是,如何将所有这些值(尤其是大于1的值)以适当的格式保存?我们要感谢ILM发明了OpenEXR

来自我心爱的游击队的设置渲染。

OpenEXR允许您以16位半浮点数保存,以避免出现任何条带/钳位问题。您还可以为合成过程编写一些任意输出变量(AOV)。

来自电影色彩:重要的是要记住,在处理float-16数据时,这些位的分配与整数编码非常不同。整数编码在整个编码空间上具有统一的比特分配,而浮点编码在低端具有较高的精度,而在高端具有较低的精度。

在发布我的网站后发送了几封电子邮件之后,我认为值得一提的是16或32位文件不能神奇地访问无限的颜色范围。您仍然必须考虑工作中的基色(或色域)。

我们确实在Playmobil上以32位渲染了一些AOV:Ncam,Pcam和Pworld,以获得更好的精度。

对于Z深度和位置。

范围

最后,我们必须照顾好我们的范围。这个主题在许多工作室中都有争议!基本上,您希望在不影响渲染的情况下尽可能降低。有两个设置要注意:

  • 钳位预滤波器(也称为间接钳位值):钳位样本值。
  • 钳位后置滤波器(也称为AA钳位值):钳制像素值。


类似的设置可能适用于任何CPU渲染器。

固定样本值将有助于您减少萤火虫和噪音。我曾经用过的最低价格是10,这对我有很大帮助。固定像素值将有助于抗锯齿以获得更平滑的结果。如果曝光过度的像素旁边有一个非常暗的像素,则不要让曝光过度的像素将其旁边的所有其他像素都炸掉。这就是为什么我们夹紧渲染的原因。

它还可能取决于您的场景和渲染引擎。一些工作室将其渲染效果固定在50。我尝试过几次低至30 …我想您需要亲自尝试一下。如果您想了解更多有关固结的知识, Solid Angle可以很好地解释夹紧的主题。我们将在第9章中看到为什么限制像素值会成为一个问题。

总结

在本章中我们已经看到了一些重要的概念。一个色彩空间有三个组成部分。

  • 三个原色。
  • 一个白点。
  • 一个传递函数。

我们还看到,你的渲染空间(或场景参考)应该总是有一个线性的传递函数,而且你绝对不应该在没有适当显示变换的情况下显示一个线性图像。

结论

色彩管理是一个永无止境的话题,我几乎每天都在继续探索。我试图用一个容易理解的帖子来总结它。一个好的色彩管理是当你在不同的软件中看到相同的东西时,沿着色彩管道。

如果你从Substance到Maya时,你的颜色或对比度发生变化,可能值得分析一下这个问题。一个好的色彩管线就是要控制从最初的草图(可能由艺术部门完成)到最终交付的色域。一致性是关键。

以下是我对色彩管理的看法。对我来说,这是一个伟大而漫长(一年)的色彩之旅。但这并没有到此结束。那太简单了。如果您仍然坚持不懈,我们可以转到第1.5章有关Academy Color编码系统:ACES。

如果您对这个技术演讲感到满意,我完全不会怪您!您可以跳到第二章

资料来源