调色基础、什么是LUT?(终极版透彻讲解)

综合资料 Mr.R 9个月前 (12-01) 2306次浏览 已收录 1个评论 扫描二维码

 

之前推荐过一款 PS 插件推荐收藏:VSCOCam 全滤镜 PS 调色插件面板 PC 版(支持 PS CC 2017)

今天就来聊聊什么是 LUT?

调色基础、什么是 LUT?(终极版透彻讲解)

什么是 LUT?
LUT 对于国内业界来说算是个比较流行的新名词,但是 LUT 到底是什么? 能说清楚的人估计不多,更多的时候人们以巫术式的态度来对待科学产物的 LUT。通常的态度有两种:一,LUT 是万能的,一个 LUT 解决调色难题,哦耶!二,LUT 是老外的高科技,我们用不上。本人自认为是对行业有责任的从业者,因此为了帮助大家了解 LUT 的定义和工作原理,对本文进行编译。
本文将尽可能详细地为大家讲述 LUT 以及它的应用,包括用于校准的技术的 LUT 和创意 Look LUT 之间的不同。
LUT 定义
LUT 基本上就是一些转换模型,或者说是不同的组合,它的两种主要分支是 1D LUT 和 3D LUT。
1D LUT
举个例子,一个 1D LUT 的开端可能是这样子的:
注意:严格来说这是 3 个 1D LUT,因为每种颜色(RGB)都是一个 1D LUT。
R, G, B
3, 0, 0
5, 2, 1
7, 5, 3
9, 9, 9
上面的意思是:
在 R、G、B 的输入值是 0 时,输出值是 R=3,G=0,B=0
在 R、G、B 的输入值是 1 时,输出值是 R=5,G=2,B=1
在 R、G、B 的输入值是 2 时,输出值是 R=7,G=5,B=3
在 R、G、B 的输入值是 3 时,输出值是 R=9,G=9,B=9
这是一个特别的 LUT,不过你可以看到一个特定的 R、G 或 B 输入值都有特定的输出值。
所以如果某个像素的 RGB 输入值是 3, 1, 0,它的输出值将为 9, 2, 0。
如果 R 的输入值变成了 2,但是 G 和 B 保持不变,那么只有 R 的输出值会改变,这时候像素的输出值为 7, 2, 0。
理解了吗?
以上的内容可以用如下图像来表示:

调色基础、什么是 LUT?(终极版透彻讲解)

我们很容易可以看出,变动某个颜色输入值只会影响到该颜色的输出值,RBG 的数据之间是互相独立的。
这就意味着 1D LUTs 只能控制 gamma 值、RGB 平衡(灰阶)和白场(white point)。
1D LUTs 加上 3×3 的模型
为了克服 1D LUT 的限制,我们可以对其应用一个 3×3 的矩阵来控制颜色饱和度和亮度,在完整的色彩空间中进行线性缩放。
R x x x R
G = x x x = G
B x x x B
虽然这种方法能够做出“可接受”的校准结果,但是显示效果中的所有非线性属性仍然不能得到改正。
3D LUTs
因为 1D LUT 和模型组合的色彩控制功能还是会有一些局限,因此在精确的色彩控制当中我们通常会偏向使用 3D LUT,因为它们能够实现全立体色彩空间的控制。
最好还是用图像的方式来向大家展示:

调色基础、什么是 LUT?(终极版透彻讲解)

先来看看三个色彩平面的相交点(代表某个输入值的 LUT 输出值),我们可以看到某个输入颜色的改变都会对三个颜色值造成影响,也就是说任何一个颜色的改变都会对其他颜色做出改变。
大家应该可以从图中看到,当颜色“平面”按照它们对应坐标轴的方向远离原点(0, 0, 0)时,它们的相应颜色也会增加。
由于 3D LUT 可以在立体色彩空间中描述所有颜色点的准确行为,所以它们可以处理任何显示的非线性属性,也可以准确地处理颜色突然的大幅变动等问题,这是令现在许多的显示器头疼的问题。
这样就让 3D LUT 非常适合用于精确的颜色校准工作,因为它们能够处理所有的显示校准的问题,从简单的 gamma 值、颜色范围和追踪错误,到修正高级的非线性属性、颜色串扰(去耦)、色相、饱和度、亮度等。基本上是所有可能出现的显示校准的问题。
由于 3D LUT 的高级颜色控制性能,它们经常也会被用于创意的 Look Management 和调色等工作。
然而,对于一些更简单的颜色转换来说,比如说不同色彩空间之间的转换(Rec709、P3、sRGB 等),模型是更加常用的工具,不过得出的数据经常都会转换成 3D LUT 的形式,因为创作系统通常都不会直接使用模型。
那么 3D LUT 是不是远远优于 1D LUT 呢?
调色基础、什么是 LUT?(终极版透彻讲解)
你在本页的底部看到 1D 和 3D 之间的对比之后应该就会认同这种想法了。
但这实际上取决于 LUT 的需求和应用情况……
1D LUT 更倾向于为每一个输入和输出值提供对应的数值,所以这些取值在 1D 转换的范围内是非常准确的。
如果 3D LUT 要做到为每个输入和输出值提供对应的数值组合的话,那么这个 LUT 将会变得非常庞大,以至于不能使用。一个能够为 10 位图像工作流提供所有输入和输出值的 3D LUT 将会是一个 1024 点的 LUT,它会含有 1,073,741,824(1024^3)个点。
所以大部分的 3D LUT 使用的立体都在 17^3 到 64^3 的范围之内,其中 17^3 的 LUT 指的是每个轴都有 17 个从输入到输出的点,而在这些点之间的数值需要被插入。不同的系统会以不同程度的准确度来实现这点,因此即使两个不同的系统使用了同一个 3D LUT,它们都有可能生成不同的结果。
我们很难在两个系统中使用同个 3D LUT 做出完全一样的结果,除非这个 LUT 的体积很大,这样就可以限制使用插值的数量。
3D LUT 的编写方式也可能是非常令人困惑的。
3D LUT 通常也会有三栏的 RGB 数值,不过一般蓝色的改变是最快的,绿色次之,最慢的是红色。
下面是一个“默认旁路”的 17^3 3D LUT 的前几行(输出与输入相等):
R, G, B
0, 0, 0
0, 0, 64
0, 0, 128
0, 0, 192
0, 0, 256
0, 0, 320
0, 0, 384
0, 0, 448
0, 0, 512
0, 0, 576
0, 0, 640
0, 0, 704
0, 0, 768
0, 0, 832
0, 0, 896
0, 0, 960
0, 0, 1023
0, 64, 0
0, 64, 64
0, 64, 128
0, 64, 192
0, 64, 256
0, 64, 320
0, 64, 384
0, 64, 448
0, 64, 512
0, 64, 576
0, 64, 640
0, 64, 704
0, 64, 768
0, 64, 832
0, 64, 896
0, 64, 960
0, 64, 1023
0, 128, 0
0, 128, 64
0, 128, 128
0, 128, 192
0, 128, 256
0, 128, 320
0, 128, 384
…, …, ..,
我们可以看到的是蓝色会快速地经过 17 点的循环,绿色会在每个蓝色 17 点循环之后变动一次,红色则会在经过整个 LUT 的长度之后更新一次,也就是在绿色经过 17 次循环之后。
这 42 行会在总共 4913 行当中继续重复……
很简单嘛!
好吧,其实没有那么简单……我们应该这样想:
在上面的立体图像中,红色平面从它的 17 个点的第 1 个点开始。
绿色平面和蓝色平面也是从它们的第一个点开始。
这个位置的输出值会被记录成 LUT 的第一行(0, 0, 0)。
红色平面和绿色平面会保持不动,蓝色平面开始一项它的第二个位置。
这个位置的输出值会被记录成 LUT 对的第二行(0, 0, 64).
然后蓝色会继续移动 17 个点(位置)。
然后绿色平面开始移向它的第二个点,蓝色继续重复它的 17 个点。
在绿色经过了它的 17 个点之后,红色开始移向它的第二个点,这个循环开始继续重复……
现在明白了吗?
所以对于非旁路的 LUT 来说,每个“平面”的位置会在 17 个点当中的每一个点之间发生变化,生成所需的输出值。
因此,一个真正的“校准用 3D LUT”的前几行应该是这样子的:
R, G, B
0, 0, 0
0, 0, 36
0, 0, 112
0, 0, 188
0, 0, 261
0, 0, 341
0, 0, 425
0, 0, 509
0, 0, 594
0, 0, 682
0, 0, 771
0, 0, 859
0, 0, 955
0, 0, 1023
0, 0, 1023
0, 0, 1023
0, 0, 1023
0, 32, 0
0, 28, 28
0, 28, 96
0, 24, 172
0, 24, 252
0, 20, 333
0, 20, 417
0, 12, 501
0, 12, 586
0, 8, 674
0, 4, 762
0, 4, 851
0, 0, 943
0, 0, 1023
0, 0, 1023
0, 0, 1023
0, 0, 1023
0, 92, 0
0, 88, 20
0, 88, 88
0, 88, 164
0, 84, 244
0, 84, 321
0, 80, 405
…, …, …,
LUT 的作用是什么
所以从本质上来说,LUT 的作用就是将每一组 RGB 的输入值转化成输出值。
通常来说(完全忽略上文提到 3D LUT 和 1D LUT 之间的准确度对比的话),1D LUT 也有相应的应用需要,不过 3D LUT 在现实生活的应用当中会准确得多。
下面的 Marcy 照片展示了 1D LUT 和 3D LUT 之间的区别。
第一张图片是用一个 1D LUT 做出的,第二张图片是一个 3D LUT 的结果,两个 LUT 都是基于完全一致的数据的。

调色基础、什么是 LUT?(终极版透彻讲解)

我们可以看到这两者之间的区别主要在于饱和度,因为 1D LUT 不能在不改变亮度的前提下改变饱和度。
LUT 大小
人们对于 LUT 大小也存在着很多的误解,也不清楚怎样的大小才是合适的。
LUT 的大小主要可以分成这三个部分……
1、首先是特定 LUT 的实际大小,这是由某个可用的 DI 系统或者 LUT Box 的大小决定的。一般的大小范围是 5^3 到 64^3。
任何特定系统的 LUT 大小都是针对实时应用的,因此从经验来看,高端系统都能够使用大型的 LUT。所以事实上 LUT 的大小是一个问题这种说法是不对的——这取决于 DI 系统(或者 LUT box)能够使用的大小。
2、LUT 大小的第二部分,也可能是更重要的一部分是,根据使用 LUT 来校准显示器的配置数据所建立的 LUT。
生成 LUT 配置数据是非常耗费时间的,因为任何显示器的准确配置都需要生成准确的结果,为胶片的 lab 生成配置数据时也是一样的道理,其中的胶片负片和冲印底片需要使用密度测量来准确配置。
技术 LUT(不是校准 LUT)的生成是比较简单的,因为它不需要对显示器进行配置。所以它的任何大小都是很容易生成的,这只是一个用于生成结果模型或 LUT 的公式。

这点也同样适用于“创意 LUT”,因为这种方法会先进行分级,然后从分级结果中根据所需的大小提取出 LUT。
当制作校准 LUT 的时候,你需要配置尽可能多的点(尽管某些校准系统正在尝试避免这种操作,它们是根据配置分析来进行估计,从而使用更少的点)。所以它的问题在于进行配置所需的时间。
3、如何从较小的配置中生成较大的 LUT……你需要在 LUT 生成过程中使用一些非常优秀的内部颜色引擎处理来实现这点,这是 LightSpace CMS 非常擅长的工作——它的准确度要比其他的校准系统高得多。
一些 DI 系统和 LUT box 也会在内部使用优秀的 LUT 插值,所以它们可以使用 17 点的 LUT 生成非常好的结果。不过有很多都是做不到这点的!这些糟糕的插值系统需要更大的 LUT,因为它们本身不能做出插值。
校准、技术和创意 LUT 之间的对比
LUT 可以有多种应用方式,其中最常用的三种应用是校准、技术和创意……
校准 LUT
校准 LUT 是用来“修正”显示器不准确的地方,它能够确保经过校准的显示器可以显示尽可能准确的图像——在显示器的能力限制范围之内。这是最重要的一种 LUT,因为它们的生成过程需要非常高的准确度,不然所有在“已校准”的显示器上显示的图像都是不准确的,使得整个工作的准确度都大打折扣。
这就是 LightSpace CMS 能够成为其他校准系统的实际标准的重要原因——它是所有系统当中最准确的。
技术 LUT
技术 LUT 用于转换不同的“标准”,比如说从一个颜色空间转换到另一个,所以这些 LUT 是比较容易准确生成的。
令人意外的是,很多的技术 LUT 都不是准确的,而且它们尝试在不同标准之间转换图像时可能会造成严重的问题。所有使用 LightSpace CMS 生成的技术 LUT 都是准确的!
创意 LUT
创意 LUT 通常会被称为“Look LUT”,因为它们通常都被摄制总监用于电影现场拍摄的外观设置,也会被用于向图像应用特定的外观模拟,例如某种传统的胶卷效果。
LightSpace CMS 拥有生成任何 Look LUT 所需的所有工具,包括从 DI 系统中提取创意分级、使用 Photoshop 建立风格、使用 LightSpace CMS 内置的创意工具(例如胶片模拟)等。


修仙㊀群
修仙㊁群
常见问题:1、文件解压请使用 Winrar5.5 版本以上解压;
2、视频播放有声音无画面,请了解下 PotPlayer 播放器;
R 大技术站 , 版权所有,如未注明 , 均为原创,如需转载请注明来源!
喜欢 (2)
[itdiy@qq.com]
分享 (0)
发表我的评论
取消评论

表情 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(1)个小伙伴在吐槽
  1. 厉害
    979273792@qq.com2018-05-28 18:05 回复 Windows 10 | Chrome 66.0.3359.139