工作色彩空间会影响胶片校色吗?多图对比!

已邀请:




笔者曾在如何科学而正确地去除色罩?中详细介绍过胶片校色的”科学“思路,还创造了一个新的Log曲线——wLog,以适应16bit的工作流,整个流程简而言之:



扫描RAW文件——指定扫描仪配置文件(使用IT8投射色卡制作)——转换到工作色彩空间(如ProPhoto RGB)——线性数据转到Log——反向——曲线工具平移+旋转校色——影调调整——从Log转换回线性——ACR或LR调整。



但这套操作真的绝对正确吗?



在这里简单解释一下胶片色罩的原因。胶片在设计时,为了达到期望的色彩特性,其感光部分的”基色“需要精确调整和设计,这通过滤镜染料和材料感光特性调整;而冲洗后,三个色层的成色染料必须与感光部分的”基色“是严格的互补色,否则胶片就相当于应用了错误的”色彩矩阵“(10.28:这里的描述不够严谨,但“应用色彩矩阵”的说法是正确的,更精确的原因在这里:数字模拟“胶片”的一个思路)。



为了解决这个问题,增加了一些本身具有感光性的染料,对光谱敏感度和冲洗后的染料密度进行精确调整,而副作用就是三个色层的感光度不同,画在双对数坐标下,是这样子:



https://pic1.zhimg.com/v2-fc8cd611daa0539e4e4fba7eb3711ca8_b.jpg

图1 Portra 400的特性曲线



感光度不同造成了三个色层在密度上有垂直距离,而三个色层的gamma(双对数下的斜率)也有些许差别。”wLog“工作流就是用PS中的曲线工具把密度差、斜率差消去。



但是在这小半年的实践中,渐渐觉得,一定有些错误酝酿其中:




  1. 从方法提出之初,就在怀疑:Kodak Endura和Fuji Crystal系列彩放相纸特性曲线的斜率相差较小,而本应增加Gamma的绿通道反而减小了(见图2)。

  2. 在转换成ProPhoto RGB和Adobe RGB的对比中,无论如何都不能获得相同的结果。反问自己,难道数码图片的修图还与工作空间有关吗?一定是因为Adobe RGB太小,某个通道已经”爆”了,导致色相的失真。

  3. 笔者逆向了图1的数据,测量了Portra400胶片三个层的斜率比值,在wLog工作流中,精确地把斜率造成的色偏去掉。如此,获得了与ColorPerfect插件处理后相当近似的图像(这个插件与wLog工作流原理相同,但非常难用)。不过,颜色并不太好看。

  4. 将3中的操作对着富士Pro400H操作了一遍,色彩完全不能看(ColorPerfect结果相同),从Log域的直方图判断,蓝通道过宽。当时的结论是,胶片批次变了,数据也变了。

  5. 不好看就翻看画册,分析别人的光照...但是越分析越不对劲,笔者作品的质感就是不好,天空甚至都不是青蓝色的。



https://pic2.zhimg.com/v2-afe9d7db56a7080b58572aa86ef5d459_b.jpg

图2 Kodak Professional Supra Endura相纸的特性曲线



可能是V700质感太差了吧!但笔者同时也在使用尼康的5000ED...



也许是尼康的LED光源太差了吧!真是绝望。



 



这些问题一直驱使着我寻找扫描仪可能存在的问题,探求扫描仪的“色域”。对着一堆原始数据开始探索,着笔写这个专栏,最后知道了采集设备是有“三基色”的,而且这三个基色很难求,常见的是工程方法——通过拍色卡来反求。



在写“色觉地图”的建立(二):辐照度与亮度、rgb空间、“颜色图”的混色方式时,突然意识到,数字文件中的三个值都代表了它的“基色”的强度——换句话说,只要是在RGB域进行的操作(例如曲线、色阶、Lut),都是以一组基色为准的!



https://pic4.zhimg.com/v2-24800d7b1ab375b4a5dc8deb4e6d2743_b.jpg

图3 sRGB三基色混合可描述的色度区域



请看图3,三角形的顶点是sRGB的基色,中间的点是D65。在xy色度图中,两色混合可以得到其连线上的所有颜色(见“颜色图”的混色方式),而三色混合是可以描述其围成的三角形。 数字文件描述颜色还有一个特点:三个值非零且相等时的“无色”是被定义下来的——在sRGB的例子中,就是D65(三通道都为0的色度没有定义)。



所以,数字图像文件三个通道的数据可以这样想象:设一个灰的无色点,如(1,1,1),它是D65;而从(1,1,1)渐变到(255,30,30)的过程中,色度变化就是图3表示的红箭头所示:这就相当于D65与sRGB的红基色在混合呀!



换个角度想,三个通道单独控制的曲线、色阶、1D Lut、gamma都是朝着上面三个箭头的方向对图像中颜色进行整体的变换!(笔者没有时间进行这个操作的可视化了)有一个问题现在相当清楚——通道操作与基色有关。



这引出一个推论:胶片三个色层的特性曲线是相对于其基色的特性曲线!



若想逆向消除已经存在的”通道操作“,必须在对应基色上反向进行,否则,这相当于做了非线性色彩映射。推测柯达用这种映射提高相纸输出的颜色质量,但我们扫描党用的是电脑,还是乖乖地用数字方法:



“Portra RGB”的创建



若想完美地反向消除Portra400的特性曲线偏移,必须要创建与其感光基色相对应的色彩空间配置文件,暂且叫它“Portra RGB”好了。



胶片感光部分的基色怎么求?简而言之,要根据胶片的光谱敏感度函数,求将其变换到XYZ色匹配函数的色彩矩阵

https://www.zhihu.com/equation?tex=%5Cbm%7BT%7D
(见:摄影材料的数据处理),而
https://www.zhihu.com/equation?tex=%5Cbm%7BT%7D
的三个列向量就是三个基色的
https://www.zhihu.com/equation?tex=%5Cbegin%7Bbmatrix%7D+X%26Y%26Z+%5Cend%7Bbmatrix%7D%5ET
坐标。再通过“相对值”的计算(见:rgb空间),求出
https://www.zhihu.com/equation?tex=%5Cbegin%7Bbmatrix%7D+x%26y+%5Cend%7Bbmatrix%7D%5ET
色度坐标。



有了胶片基色的数据之后,甚至可以进行数码与胶片色彩表现的定量对比。不过,想要变成可用的色彩空间,还有一步要走。不感兴趣的朋友可以直接忽略这一段。



在创建这个“PortraRGB”的色彩空间时,笔者使用的是PS中的“自定义RGB”功能,它不接受负值,也不接受x+y>0的值。这让我很恼火,怎么解决呢?



https://pic1.zhimg.com/v2-bd4dfe1daf3ba5a84da9f260e3eed4e0_b.jpg

图4 Portra400的三个基色



有一个解决方法:求三个基色的“主光波长”(Dominant

https://www.zhihu.com/equation?tex=%5Clambda
)。在专栏里还没写过这个内容,但它很好理解——把“无色”定义点与色度坐标相连,延长到单频光的轨迹上,与之相交点对应的光波长就是“主光波长”。翻阅Portra 400的文档,上面写光源是”Daylight“,也就是”天光“(不要与Sunlight搞混了),笔者理解为是D65。在BruceLindbloom提供的ColorCalculator中,很容易就求得其主光波长了。



该问题目前已经被锁定, 无法添加新回复