前言:巴别塔的倒塌
在数字世界中,RGB 是最通用的语言。然而,这是一种“方言”。
- 显示器 A 的 RGB(0, 255, 0) 可能是鲜艳的翠绿。
- 显示器 B 的 RGB(0, 255, 0) 可能是暗淡的草绿。
如果设备之间没有翻译,色彩交流就会变成鸡同鸭讲。为了解决这个问题,我们需要建立设备 RGB 值与绝对色彩空间(如 CIE XYZ 或 Lab)之间的映射关系,这个过程称为设备特征化。
ICC Profile:色彩身份证
国际色彩联盟(ICC)制定了通用的文件格式——ICC Profile。它就像设备的“色彩身份证”,记录了该设备如何显示或打印颜色。
ICC 色彩管理的核心架构是 PCS。PCS 通常是 Lab 或 XYZ 空间。
- 输入设备(相机):RGB $\to$ PCS
- 输出设备(屏幕/打印机):PCS $\to$ RGB/CMYK
Matrix/TRC 型 Profile
对于显示器这种加色混合设备,通常使用简单的 Matrix/TRC 模型。
- TRC (Tone Reproduction Curve):即 Gamma 曲线,负责将非线性的 RGB 信号线性化。
- Matrix (3x3 矩阵):负责将线性 RGB 映射到 XYZ。其中 $(X_r, Y_r, Z_r)$ 是红色基色的 XYZ 坐标,以此类推。
LUT 型 Profile
对于打印机(CMYK)等非线性强、存在色域压缩的设备,简单的矩阵无法描述其行为。此时使用 Look-Up Table。
- A2B Tag:Device $\to$ PCS
- B2A Tag:PCS $\to$ Device
LUT 实际上是一个多维数组,通过插值算法(如四面体插值 Tetrahedral Interpolation)来计算任意点的颜色。
3D LUT:电影工业的神器
在电影后期制作和高端显示器校准中,常听到 3D LUT。它与 ICC Profile 有何不同?
结构与原理
3D LUT 本质上是一个三维立方体网格(Cube)。
- 输入:RGB 三元组。
- 输出:RGB 三元组。
它直接定义了从输入色彩空间到输出色彩空间的映射,不经过 PCS(或者说 PCS 隐含在映射中)。 例如,一个 17x17x17 的 3D LUT 包含 $17^3 = 4913$ 个控制点。
优势
- 非线性校正能力强:可以精确校正色相偏移(如“蓝转青”)、饱和度非线性压缩等复杂问题。
- 计算速度快:硬件实现简单,适合实时视频处理。
1D LUT vs 3D LUT
- 1D LUT:三个独立的 1D 数组。只能控制 Gamma 和白平衡,无法独立调整某一个颜色的饱和度或色相(例如,无法在不影响白色的情况下把红色变暗)。
- 3D LUT:全耦合映射。可以实现“保持肤色不变的同时降低背景饱和度”这种复杂操作。
总结与展望
ICC Profile 和 3D LUT 是静态色彩管理的基石。它们解决了“如何让这台设备显示正确的颜色”的问题。
然而,随着 HDR(高动态范围)和广色域(Wide Gamut)技术的兴起,传统的 ICC 流程(基于 D50/D65 SDR)开始显得力不从心。电影工业需要一套更严谨、更灵活的色彩管理流程,这就诞生了 ACES。
在下一章《色彩科学Vol.12 现代色彩管理流程:ACES与Rec2020》中,我们将进入超高清和电影工业的色彩世界。
Reference
- ICC. (2010). Specification ICC.1:2010 (Profile version 4.3.0.0).
- Sharma, G. Digital Color Imaging Handbook. CRC Press.
- Selan, J. (2012). Cinematic Color: From Your Monitor to the Big Screen. SIGGRAPH Course Notes.