请选择 进入手机版 | 继续访问电脑版

Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 929|回复: 0

Linear不是色彩空间

[复制链接]

202

主题

210

帖子

646

积分

超级版主

Rank: 8Rank: 8

积分
646
发表于 2018-2-23 23:00:47 来自手机 | 显示全部楼层 |阅读模式
ACES预备课——Linear不是色彩空间
http://m.sohu.com/a/190274995_657928
cgview
2017-09-06
+关注
敖神一出手就知有没有哦,基本有他来讲色彩理论也没有其他人什么事情了,所以cgview选择备份有效知识,偷懒戳手机中。最近在准备关于position和normal得资料,正文前惯性铺垫一下,就是颜色在空间中其实是有他们各自的坐标哒,然后可以进行运算。
色彩空间得模型大概是这个样子得
Adobe SRGB

SRGB 和Adobe SRGB 色域大小对比

本文大纲:
误解
色彩空间三指标
基色
白点
gamma
举一反三
误解
“Linear 色彩空间”
“线性工作流程”……
这是很多VFX 遵循的制作圣经,如果你跟他说这可能有问题,他估计要跟你吵翻天哦~
但是不幸的是,这个还真有点问题。
不过问题不是出在Linear 上,是出在我们的理解上。
第一个重大的错误就是“Linear 色彩空间”。
色彩空间三指标
当定义一个色彩空间的时候,至少需要三个重要的指标:
色域(三个基色的坐标,形成的三角形)
gamma(如何对色域三角形内进行切分)
白点(相当于色域三角形的中心)
我们可以先把色彩空间理解为一个三角形(其实色彩空间是三维的,这里暂时忽略因为亮度所产生的立体维度,简化的讨论一下。有机会再来纠正一些错误哦^_^)
色域(也叫做基色)
也就是图中最外面的白色粗线形成的三角形。可以试想一下,如果三角形的三个顶点的位置发生了变化,必然会导致整个三角形所覆盖的颜色发生变化。


接下来是白点位置
就是图中三角形中心的那个小圆点。
再来想象一下,如果三角形的位置不变,但是中心白点移动了位置,你需要从顶点走到小白点,那么途中经过的色彩肯定也是不同了。


最后就是gamma


为什么把gamma 放到最后?
因为这里就需要明确一个概念了,gamma 可不是色彩空间哦!gamma 只是如何采样的概念。
比方说,下面两个图,他们的色域一样,白点也一样。
还是动用一下想象力,如果我把这个三角形“均匀” 的向内切割,会得到什么样子的结果?
或者换个方式,刚开始的时候切割的少一点,然后越切越大,会是什么结果?


如果对比一下每次切割的顶点,就会发现不同的切割方式会对应不同的颜色。
大家通常理解的 linear只不过是 gamma = 1的情况,可以理解为“均匀” 的切分。这样的好处就是保证计算的方便,而且每次前进的距离总是相同的。
而下边那种 “非均匀” 切割的情况就是gamma ≠ 1。
还是举个例子来总结一下,假设我们有个常见的色彩空间 sRGB。现在大家可以想象一下,sRGB 到底是如何构成的呢?
色域:首先是sRGB 规定了RGB 三个色度坐标。也就是由此确定了三个顶点。三个顶点一旦确定,那么形成的三角形也就确定下来了。
白点:sRGB 也规定了白点。也就是说规定了三角形的中心。
gamma:sRGB 的gamma ≈ 2.2。也就是说切分这个三角形,开始切分的很细,后来越来越粗。
但是大家都是知道linear 的好处:便于计算、算法简便、计算机效率高…… 因此我们可以认为有个sRGB - linear 色彩空间:
色域:肯定还是sRGB,因为三角形没变。
白点:没变
gamma:我们改变切分的方式,每次都是均匀的切割。
于是乎,我们就得到了sRGB - linear 色彩空间。
这个就是大部分VFX 人员认为的Linear 色彩空间。
举一反三
有了这个经验,我们马上可以想到,是不是任何gamma ≠ 1 的色彩空间,我们都可以转换为一个gamma = 1 的色彩空间呢?
没错!比方说:P3-DCI 的gamma = 2.6。
那么只要保证色域、白点不变,只将gamma = 1 我们就得到了一个 P3-DCI - linear 色彩空间。
我们列出一张表格,里面是一些常见的参数:
色域        白点        gamma
  sRGB  P3  WideGamut  SGamut  RedColor3  ……          D50  D60  DCI  D65  ……          linear  2.2  2.6  cineon  logC  RedLogFilm  Slog3  ……
我们只要任意组合这三列,就可以得到一个色彩空间了。
所以会存在 sRGB- D65- linear、WideGamut - D50- linear……
可以说任何色彩空间都可以是linear 的,但是linear 不是一个色彩空间!
大部分人在nuke 里面读取一个Alexa 拍摄的素材时,nuke 做的转换仅仅是对 gamma 进行了转换,从 logC 变成了 linea r然后再变成sRGB。没有对色域、白点进行相应的变换,这就是有时候DI、VFX 之间看到不同色彩而发生扯皮的重要原因!
在这里呼吁大家,尽可能的将色彩空间的名字说完整,不然就会造成更多的误解。
有时候可以省略白点(因为白点往往是官方和色域一起规定的),所以至少要这样说:
摄影机的色彩空间是 WideGamut- LogC、RedColor3- RedLogFilm
VFX 需要转换到 sRGB- Linear
当然还有一些色彩空间不需要说那么多,因为这些色彩空间在定义的当初就完全规定了色域、白点、gamma。因此只要说出他的名字就可以了。
例如:ACES、XYZ、L*a*b*…… 这里也看出了ACES 的一些优势,只要说出他的名字,大家都会立刻产生相同的认识,从而避免了混淆。
继续 期待下次关于颜色空间理论的更新........
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Munoki

GMT+8, 2023-6-4 04:31 , Processed in 0.067720 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表