Bree Photo 色调映射与暗部恢复

回到教程中心

说明:本教程截图中可能显示 GIMP 品牌标识,但所有菜单、工具名称与快捷键在 Bree Photo 中完全相同,操作步骤可直接套用。

本教程介绍如何使用 32 位浮点精度的 Colors → Exposure 配合图层蒙版,提亮阴影和中间调,同时保护高光细节。这种方法通常被称为“暗部恢复”或“色调映射”。

准备工作

下载示例图像 tree.png(16 位 sRGB)。

  1. 用 Bree Photo 打开 tree.png,并指定内置 sRGB 配置文件。
  2. 转换到 32 位浮点线性精度:Image → Precision → 32-bit floating point,在弹出的 Dither 对话框中选择 Linear light。

步骤 1:添加正曝光补偿

  1. 复制 tree.png 图层,命名为 +1 stop exposure comp。
  2. 执行 Colors → Exposure,将 Exposure 增加 1 挡(Stop):

添加 1 挡曝光补偿

  1. 此时图像高光看起来已经“过曝”,但在浮点精度下,Colors/Exposure 是无界的,过亮区域以大于 1.0 的浮点值保留,细节并未丢失:

曝光补偿后

步骤 2:添加反向灰度蒙版

  1. 右键点击 +1 stop 图层,选择 Layer → Mask → Add Layer Mask…。
  2. 初始化方式选择 Grayscale copy of layer,并勾选 Invert mask:

添加反向灰度蒙版

  1. 此时高光会被压回到显示范围(0.0 - 1.0)内,但图像可能会暂时显得发灰发平:

反向蒙版后的效果

步骤 3:拉伸蒙版对比度

  1. 点击选中图层蒙版。
  2. 执行 Colors → Auto → Stretch Contrast:

在蒙版上执行 Auto Stretch Contrast

  1. 这会把蒙版中超出显示范围的灰度值拉回到 0 - 1 范围,让蒙版更好地保护高光、提亮阴影:

最终效果

如果还有少量通道值略微超出范围,可以在蒙版上执行 Colors → Exposure,设置 Gamma 约 0.45;或者新建 New from Visible 后再 Auto → Stretch Contrast。

进阶:多挡曝光补偿

对于需要更多提亮的情况,可以叠加多个曝光补偿图层。每个图层都有自己的蒙版,需要分别微调。下图展示了使用两个曝光补偿图层为苹果园卡车照片提亮 2.5 挡的效果:

苹果园卡车色调映射

对应的图层堆栈:

图层堆栈

恢复微对比度

反向蒙版会轻微压平微对比度。若需要恢复,可对蒙版应用边缘保持的模糊,例如 G'MIC 的 bilateral smooth。注意:G'MIC 无法直接作用于图层蒙版,可先把蒙版转为选区并保存为通道,再拖到图层堆栈中处理。

结语

Colors → Exposure 在 32 位浮点精度下是无界的,配合反向灰度蒙版,是处理高动态范围照片、恢复暗部细节的有效方法。


来源与授权

本教程改编自 Elle Stone 的 Tone Mapping and Shadow Recovery Using GIMP’s ‘Colors/Exposure’,原作品采用 Creative Commons Attribution-ShareAlike 3.0 Unported License 授权。