Chobial 博客

胶片质感是如何调出的:通过照片逆向求解胶片模拟

·

Chobial 的内置胶片既不是凭肉眼主观调出来的,也不是直接下载现成的 LUT。每一款都是从真实照片中数学求解出来的:使用 Fujifilm 相机拍摄的同一张 RAW 文件,在机内一次以中性冲洗、一次以胶片模拟冲洗,并在 CIELAB 色彩空间中精确测量其色差。方法说起来很直接,本文大部分内容将讨论这套方法在实践中可能踩坑走偏的各种弯路。

这套方法最初于 2026 年 9 月在 Fujifilm X-T30 III 上验证成型,下文的数据便来自那一轮测试。从那以后,大多数内置胶片已在 X100VI 上通过 31 组样片以完全相同的流程重新求解校准。

1. 获取成对冲洗样本

简短概括:拍摄一个场景,然后在同一台相机内对其冲洗两次:一次中性基准,一次目标风格,最后求解两者的差异。

这里的关键词是冲洗。Fujifilm 相机支持机内二次冲洗 RAF 文件,因此我们拍摄单张 RAW,然后反复冲洗同一文件:一次使用出厂默认设置的 Provia 作为中性基准锚点,另一次使用各项胶片模拟(同样使用默认参数)。色彩设为 0、高光与阴影色调设为 0、关闭颗粒、关闭色彩彩色色彩、不做任何白平衡偏移。完全相同的传感器数据、曝光量与白平衡,唯一改变的只有胶片风格。在相机上花十分钟冲洗,胜过顶着各种干扰因素在外实拍上百张,因为它瞬间排除了所有环境干扰变量。

出厂默认值至关重要。如果把某个配方的高光色调留在 −1,你测出来的就是“胶片模拟加上该配方”的复合产物,配方便被永久固化进了胶片中。我们的四款胶片(Gold、Kodachrome、Ektachrome 风格,以及源自某 Classic Negative 配方的 Chobial Vintage)是有意从特定配方而非纯出厂模拟中求解的。这是经过深思熟虑的方案决定,绝非失误。

通过像素比对而非文件名来匹配样本对。我们在四个旋转方向上比对小尺寸的明度特征签名。文件名会骗人,像素不会。

2. 该拍什么:这决定了一切的上限

某个傍晚拍摄的 5 张咖啡馆与公园样片,仅仅触及了 33×33×33 色彩立方体中 5.8% 的区域。其中整整三分之二的像素,其 CIELAB 色度(C*)低于 8,也就是说几乎全是接近灰色的中性色。青色、紫罗兰色和品红色在所有像素中分别仅占 0.12%、0.03% 和 0.01%。一个缺乏数据支撑的自由参数会随意取值去迎合相邻参数:在一次早期拟合中,由于画面几乎没有品红色,模型竟算出了荒唐的 58 度品红色相旋转。

因此:务必拍摄专业色卡。一张包含 24 块色块的标准色卡所承载的有效色彩信息,比那 5 处实景加起来还要多,而且它精准覆盖了真实场景往往遗漏的冷色相。退而求其次,在日光下拍摄时,务必刻意纳入高饱和蓝天、纯红物体、纯青色、绿植、人脸肤色以及白色色块。

3. 始终以相机的中性冲洗为基准,绝不要用自己的

最直觉的做法是:拿出一张 RAW,用我们自家的中性管线进行冲洗,然后求解从那里转换到 Fujifilm 胶片模拟需要经过怎样的调整。但这实际上同时测量了两件事:胶片模拟本身,以及我们自研 RAW 冲洗管线与 Fujifilm 官方冲洗管线之间的所有差异。第二部分差异确实存在,但它专属于那台相机。把这种相机固有的传感器色偏做进胶片里,就相当于把针对富士传感器的校正硬套在基准完全不同的 iPhone 上。

测试结果非常明显。如果拿 Provia 与我们自研冲洗比对,算出来的色度缩放为 0.98,色相旋转高达 17 度:这是两个中性基准在互相打架。每一款胶片模拟都被迫染上了相同的特征偏色。改用相机机内冲洗的 Provia 与机内胶片模拟进行比对后,这种偏色瞬间消失,模拟的平均色差(ΔE)立刻从 3.7–5.2 暴跌至 1.3–3.5。

这里还有一个免费的零成本校验:求解 Provia 对 Provia。计算结果必须严格为 ΔE 0.000、色度 1.0000、旋转 0.00。这是唯一一个事先已知精确答案的测试用例,运行它帮我们揪出过一个致命的代码漏洞。

4. 一款胶片的数学构成

胶片的色彩分阶段进行拟合,其计算顺序与 App 在机内执行的管线顺序完全一致:先计算曲线,再计算色彩。

先算曲线:提取自接近灰色的区域

主色调曲线、红通道曲线和蓝通道曲线是从近中性像素(C* 低于 8)中读取的。这些像素占据了画面的一半以上,每个统计区间能分到数万个样本,而某些稀有色相只有几百个,因此灰阶是整张照片测量精度最高的部分。

曲线承载了胶片的明暗影调及其在中性灰上的色彩倾向。后半点的重要性远超直觉。靠缩放色度(chroma)工作的色彩模型根本触碰不到灰色,因为灰色的色度为零,零乘以任何数依然是零。在很长一段时间里,我们的 Chrome 和 Negative 类胶片看起来极为相似,罪魁祸首正是由于:在画面绝大部分中性区域上我们什么都没做,而 Fujifilm 恰恰把各个模拟的标志性灵魂埋在了中性灰的微弱色偏里。

值得铭记的技术陷阱。第一版实现按像素的灰度级别对各通道进行区间划分。但接近中性的像素并不等于绝对中性。一个统计区间内红、绿、蓝的中位数自然带有那群像素恰好具备的平均底色,曲线便会把这种底色重复叠加在自己身上。导致 Provia 对 Provia 的计算得出了 ΔE 1.4 而非 0。改用按每个通道自身的数值进行分箱(这也正是曲线应用到通道时的实际运算方式),恒等测试立刻精准返回了 0。

还有另一个陷阱:红通道和蓝通道曲线必须以主曲线(Master)输出后的数值为输入基准,而不是以原始输入为基准,因为主曲线最先执行并将结果传递给后续通道。

再算色彩:在曲线之后拟合残留色彩

在目标图像上反向剥除曲线的影响,然后针对剩余的色差拟合色彩层。如果将色彩与曲线并列拟合,就会把曲线已经在色彩上产生的位移重复计算一遍。在 Classic Negative 上,这会导致蓝色产生 +24 度的剧烈偏转,而相机实际上只偏转了 +11 度。

色彩层的设计刻意保持克制:围绕色相环插值的逐色相色度缩放与色相旋转,外加三个影调参数。结构足够精简,使其在参数空间上完全线性,拟合过程被转化为三个通过最小二乘法精确求解的数学问题。没有任何不可信赖的黑盒优化器。

两端都需要引入向恒等变换(identity)拉拢的岭回归惩罚项(Ridge penalty)。在缺乏样本支撑的色相区间上,模型应该保持不做任何改变。影调参数也因另一层原因需要惩罚项:中间调对比度参数、趾部与肩部在数学上几乎共线,未加惩罚的解曾经算出过 2.2 的对比度被 +59 的阴影提亮所抵消的荒唐结果。

黑白胶片需要独立求解

黑白胶片由通道混色加上色调曲线构成。混色比例(即黄色或红色滤镜所改变的物理特性)决定了每种颜色最终呈现为多亮,而这部分信息在冲洗出的灰度成片中已经丢失。但样本对中另一侧的彩色成片完好保留了这些信息,因此可以通过在彩色参考帧上进行参数空间搜索来还原通道权重。

黑白的影调无法用三个参数简单概括。在黑白胶片中,影调就是胶片的全部灵魂,一路蔓延至画面三分之一高度的悠长暗部趾部,正是三个参数平均化拟合所无法保留的细节。在一个基于已知五点曲线构建的合成测试对上,三参数模型虽然将通道权重精确恢复到了小数点后四位,但影调仍然产生了 1.94 L* 的误差。改用完整曲线拟合后,误差立刻收敛至 0.16。

5. 评判求解成果

必须以真实像素的 ΔE 作为客观衡量标准。绝不要仅仅依赖几处所谓的“记忆色”探针(如天蓝、肤色、树叶绿)。三个孤立的合成测试点根本无法代表三分之二由近中性像素构成的真实色彩分布,它们甚至会在胶片算法实际大幅改善时给出错误的负面评价。我们的 Negative 胶片在实际 ΔE 从 3.67 显著改善至 1.47 时,那三枚孤立探针的分数反而变差了。

按饱和度色带拆解误差。一项有利于整体平均值却劣化高饱和色彩的改动需要引起警惕。Negative 胶片的重构全面改善了全部三个色带,这正是它能够正式发布的信心来源:

色带改善前 (ΔE)改善后 (ΔE)
近中性色2.930.88
温和色彩4.091.65
高饱和色彩5.783.64

胶片之间要横向对比,而不仅仅是与目标成片比对。促使我们重构 Negative 的最初抱怨是“Chrome 和 Negative 看起来毫无差别”。验证这一点的有效方法是:测量相机机内将两种模拟拉开了多大距离(在我们的样片上为 2.2–5.0 ΔE),再看我们自研胶片之间相差多少。两款胶片可能各自看起来都很准确,但彼此之间却坍缩成同一种风格。

在数据稀缺处交叉比对。Adobe 的相机匹配配置文件(Camera Matching Profiles)虽与相机机内有细微出入,但同样可供测量。对于 Classic Negative,Adobe 配置文件与我们的样本在暖色转入冷色的临界点(L* 46 对比我们的 47)、高光色相(44° 对比 44.6°)以及约 2:1 的冷暖比例上均高度吻合。网上关于胶片模拟的文章大多停留在主观定性且互相抄袭。在未经精密测量验证之前,所有传言都只能视作民间谈资。Classic Negative 常被描述为拥有“品红高光”,但对中性灰进行仪器测量后证实,它实际上是色相 44° 的琥珀暖金色。

6. 正式交付规范

我们恪守的几条铁律:

在 Chobial 中体验求解成果

基于这套科学方法诞生的正是 Chobial 从 Standard 到 B&W 的全部内置胶片。若想亲自评判:

  1. 在相机中装入任意一款内置胶片。它在取景器中实时生效;长按画面可查看未套用胶片时的原始场景。
  2. 打开图库中的现有照片,进入编辑器的胶片工具,在各款胶片之间轻点切换。照片每次都会直接从 RAW 底片重新冲洗(重新冲洗)。
  3. 按住对比查看底层的干净冲洗效果,或轻点调出对比滑块。
  4. 若想改造某款胶片,可以基于它新建胶片:胶片 › + › 新建胶片 › 起点。内置胶片不可直接修改,但拷贝出来的副本可以自由微调(制作自己的胶片)。

7. 仍待完善的局限性

这一切努力并不是为了调出一款与原厂相机毫厘不差的胶片,而是为了创造出一款让我们对其每一项偏差都了如指掌、能白纸黑字清晰记录的胶片——这远比单凭肉眼主观臆断调出来的滤镜更加科学严谨。胶片的色彩阶段可以导出为 .cube LUT,方便你在其他专业调色软件中深入检视(在 iPhone 上制作 LUT),而胶片颗粒也拥有专属的实测响应曲线,详见为什么数码颗粒看起来很假。

Fujifilm、Provia、Classic Chrome 和 Classic Negative 是 FUJIFILM Corporation 的商标。Kodak、Gold、Kodachrome 和 Ektachrome 是 Eastman Kodak Company 的商标。Chobial 与两者均无关联。

常见问题

可以通过照片逆向测量胶片模拟吗?

可以,前提是照片变量得到严格控制。在相机内对同一份 RAW 文件进行两次冲洗:一次中性冲洗,一次套用胶片模拟,两者之间的差异即为纯粹的风格特征。如果在不同日期随手拍摄不同照片,风格特征就会与曝光、白平衡和场景本身的光线混杂在一起。

为什么不直接提取胶片模拟的 LUT?

仅从几张照片提取的 LUT,只在照片实际包含颜色的区域精确,而在色彩空间的其余网格上则毫无依据。我们在实景拍摄的样片仅触及 33 阶立方体中 5.8% 的区域。一个仅含少数有明确物理意义参数的轻量模型,在面对未知颜色时比包含数万个网格点的 LUT 优雅得多。

Chobial 的胶片和 Fujifilm 官方胶片模拟完全一样吗?

不一样。它们是我们自己的胶片,从富士相机的渲染成片中求解得出,然后施加在 iPhone 的 RAW 冲洗流程中。在受测样片上它们高度接近,我们也在文档中坦诚公开了未完全吻合的地方。

我能用同样的方法制作自己的胶片吗?

App 内暂未提供自动求解器。不过你可以在胶片编辑器中借助相同的控制工具(曲线、混色器、分离色调等)亲手搭建属于你的胶片;参见制作自己的胶片。