跳到主要内容

第 13 章:曝光

曝光三角:三个旋钮,一个目标

当你用智能手机拍照时,你实际上是在捕捉光线。到达传感器的光线决定了你的照片是太暗(欠曝)、太亮(过曝)还是恰到好处(曝光正确)。三个基本控件管理着这一点——它们共同构成了曝光三角

核心思想: 三角形的每个角都控制光线,但每个角也都会引入一种创意权衡。你可以通过三个设置的不同组合实现相同的总曝光量——但每种组合都会为你的照片带来不同的观感

在我们在下一章深入探讨 Android Camera2 API 的细节之前,让我们先为每个元素建立稳固的直观基础。


ISO:传感器灵敏度(增益控制)

在胶片时代,ISO 描述的是胶片对光线的敏感度——ISO 100 胶片较"慢",需要明亮的光线,而 ISO 800 胶片较"快",可以在室内拍摄。

在数字摄影(包括智能手机相机)中,ISO 是传感器增益 / 电子放大。 当你将 ISO 值加倍时,你实际上是将应用于传感器模拟信号的放大倍数加倍,然后再将其数字化。

ISO 的工作原理

想象传感器的像素井正在收集光子(光粒子)。在曝光期结束后:

  1. 每个像素将积累的光子转换为微小的电荷
  2. 模拟增益放大器将该信号乘以与你的 ISO 设置相对应的系数
  3. 放大后的信号被转换为数字信号 (ADC)
  4. 数字处理随后进行进一步处理(降噪、色调映射)

ISO 100 = 基础 / 最低增益。 信号放大倍数最低,因此:

  • 照片干净,数字噪声(噪点)最少
  • 动态范围(可记录的最亮和最暗色调之间的差异)最高
  • 色彩最准确

ISO 3200 = 高增益。 信号被放大 32 倍:

  • 你可以在更暗的场景中拍摄,而无需增加快门时间
  • 但你会得到可见的噪声(彩色斑点、亮度噪点)
  • 动态范围和色彩准确度显著下降

典型智能手机 ISO 范围

ISO 范围特征用例
50–200基础 ISO,图像最干净明亮的日光,影棚照明
200–800中等增益,轻微噪声阴天,背阴处
800–3200可见噪声,仍可用室内照明,黄昏
3200–12800+重度噪声 / 应用重度降噪夜景,暗光活动

智能手机现实注记: 旗舰手机通常在较高的 ISO 值下应用重度计算降噪(供应商特定的"夜间模式"处理)。当你稍后在 Camera2 中禁用自动管线时,你将失去许多这些 OEM 优化——这是我们将在第 14 章回归的一个关键警告。


快门速度(曝光时间)

快门速度简单来说就是传感器暴露在光线下的时间长短。在传统相机中,机械快门会物理性地开启和关闭。在智能手机中,它几乎总是电子快门——传感器被重置,允许收集光线一段时间(精确时长),然后读取数据。

快门速度以为单位,通常表示为分数:

快门速度它的作用典型用途
1/2000s – 1/1000s极短曝光,冻结所有动作运动、鸟类、快速行驶的车辆
1/500s – 1/250s冻结典型的人类动作走动的人、玩耍的孩子
1/125s – 1/60s配合防抖的"安全"手持速度稳健手持拍摄的一般摄影
1/30s – 1/15s可见轻微运动模糊,需要三脚架创意动态,弱光
1s – 30s长曝光,重度运动模糊瀑布、星轨、丝滑的水面
30s+超长曝光(专业)天文摄影、光绘

运动模糊效果

除了"获得足够光线"之外,有两个理由让你刻意选择特定的快门速度:

  1. 冻结动作: 以 1/1000s 拍摄飞行中的鸟,每一根羽毛都清晰可见,因为鸟在曝光期间移动的距离几乎为零。

  2. 创造运动模糊: 以 2 秒拍摄瀑布,移动的水流会呈现出平滑、丝滑的白色痕迹——因为在传感器曝光期间,每一滴水都经过了传感器上的许多像素。

把它想象成一种长曝光绘画:任何在快门开启期间移动的东西都会变成条纹。

对于视频很重要: 拍摄 30fps 视频时,每一帧的曝光时间最多约为 1/30s。电影制作人遵循 180° 快门法则:将快门速度设置为帧率的两倍 → 对于 30fps 视频,设置为 1/60s。这能提供自然的、"电影感"的运动模糊,既不会太生硬也不会太模糊。


光圈

光圈是镜头内部光线通过的开口大小。它以 f 值 (f-stops) 来衡量 (f/1.4, f/2.0, f/2.8, f/4.0, f/5.6, f/8.0 等) —— 这是一个反直觉的刻度,数字越小 = 开口越宽

f/1.4 f/2.0 f/2.8 f/4.0 f/5.6 f/8.0
█████████████████████████████████████████████████████████
█████████████████ █████████
███████████████ ███████
█████████████ ██████
████████████ █████
███████████ ██████

每档光线减半: 从 f/1.4 → f/2.0 → f/2.8 → f/4.0 移动,每一步都会使开口面积减半,因此通过的总光线减少一半。这就是每步减暗一"档"。

光圈权衡(创意与实践)

  1. 景深 (DoF): 大光圈 (f/1.8) = 景深 —— 只有窄窄的一层平面在焦点内;之前/之后的任何东西都会模糊(虚化/焦外)。小光圈 (f/8) = 景深 —— 从前景到背景的一切都是清晰的。

  2. 集光能力: f/1.4 比 f/2.8 多收集 4 倍的光线。这就是为什么"大光圈镜头"(宽最大光圈)在弱光拍摄中备受青睐的原因。

  3. 衍射: 在极小的光圈 (f/11+) 下,光波会绕过光圈叶片弯曲,使图像略微变软。这在智能手机上通常无关紧要。

智能手机现状检查

大多数智能手机拥有固定光圈镜头 —— 你无法更改 f 值。廉价手机可能是 f/2.4–f/2.8;旗舰机通常达到 f/1.4–f/1.8。Android Camera Parameters 应用让你可以在 CameraCharacteristics 中检查镜头的固定光圈。

少数高端手机(例如三星 Galaxy S23 Ultra、索尼 Xperia 系列)提供双光圈机制,可以在两个档位(例如 f/1.5 和 f/2.4)之间机械切换。在 Camera2 中,查询 LENS_INFO_AVAILABLE_APERTURES 看看你的设备是否支持多种光圈。

实践启示: 对于大多数 Android Camera2 开发,光圈是固定的,因此你仅通过 ISO + 快门速度控制曝光。两个旋钮而不是三个 —— 这实际上简化了事情!


EV:曝光值(对数刻度)

当摄影师说"调整一档"时,他们的意思是将总光量加倍或减半。为了使基于"档"的思维更加精确,行业标准化了曝光值 (EV)

EV 0 被定义为产生标准参考亮度的曝光组合:1 秒曝光,f/1.0 光圈,ISO 100

+1 EV 将光量加倍(更亮)。每 −1 EV 将光量减半(更暗):

EV 变化含义
+3 EV8 倍光量 (2³)
+2 EV4 倍光量
+1 EV2 倍光量
0 EV参考:1s @ f/1.0 ISO 100
−1 EV½ 光量
−2 EV¼ 光量
−3 EV⅛ 光量

美妙之处在于:任何总和为相同 EV 值的 ISO + 快门 + 光圈组合,都会产生相同的总曝光量。这就是连接三角形三个角的等效曝光原则。

EV 与 ISO/快门组合

在固定光圈的情况下,EV 方程大大简化。对于光圈为 f/1.8 的智能手机:

场景典型 EVISO 100 快门ISO 400 快门ISO 1600 快门
明亮的阳光沙滩151/4000s1/1000s1/250s
阴天 / 多云121/500s1/125s1/30s
明亮的室内办公室81/30s1/8s1/2s
夜间的起居室42s0.5s1/8s
星空夜景−230s8s2s

著名的阳光 16 法则

在矩阵测光和复杂的自动曝光算法出现之前,摄影师依靠一种经验法则,在没有测光表的情况下锁定日光下的曝光:

在晴天,将光圈设置为 f/16,快门速度设置为 1/ISO 秒。

阳光 16 (f/16)f/1.8 等效 (智能手机)
ISO 100, 1/100s, f/16 → EV 15ISO 100, 1/4000s, f/1.8 → EV 15 ✓
ISO 200, 1/200s, f/16 → EV 15ISO 200, 1/8000s, f/1.8 → EV 15 ✓

计算结果吻合:f/1.8 比 f/16 宽约 6⅓ 档。每一档加倍?不 —— 每一档光线面积加倍。2^(6.33) ≈ 80 倍光量。因此快门速度必须快 80 倍来补偿:1/100s ÷ 80 ≈ 1/8000s (在 ISO 200 下)。对于实地拍摄来说足够接近了。


欠曝 / 正确 / 过曝的观感

让我们心理对比一下同一场景(例如,一个人在户外,身后是天空)的三种拍摄效果:

欠曝 (−2 EV): 主体太暗。阴影被压死成纯黑,没有细节。在直方图中,所有数据都堆积在左侧(暗部)。天空看起来可能不错,但人看起来像个剪影。你可以尝试在后期处理中"提亮"欠曝的原始数据,但阴影会露出严重的噪声,因为你在放大一个微弱的信号。

曝光正确 (0 EV): 中间调显示出正常的质感。人的脸上有可见的皮肤细节、衣服褶皱、眼睛高光。直方图数据分布在整个范围内,两端没有硬剪裁。在动态范围有限的手机上,这可能意味着一些明亮的天空高光会剪裁成白色(没有蓝色细节) —— 这是一个相对于让主体欠曝的经典权衡。

过曝 (+2 EV): 高光溢出成纯白,无法恢复。天空是一个均匀的白色平面;明亮的衬衫纽扣和镜面反射被剪裁。人的皮肤看起来可能很讨喜(很亮),但你永久失去了所有高光细节。不像欠曝的阴影(你通常可以用噪声来部分恢复),溢出的高光永远消失了 —— 那些像素中根本没有数据。

摄影师的信条: 宁欠勿过 (Expose for the highlights, recover the shadows)。 在 RAW 拍摄中(我们稍后会介绍),这一点尤为强大,因为 14 位 RAW 存储了足够的阴影细节,可以拉升 +2 EV 或更多而不会产生毁灭性的噪声。


现实世界 EV 参考表

记住几个里程碑式的 EV 值可以让你在任何地方估算曝光:

场景典型 EV (在 ISO 100 下)大致快门 @ f/1.8, ISO 400
直射阳光下的雪景161/4000s
阳光沙滩,晴朗的一天151/2000s
典型的晴天141/1000s
阴天 / 多云121/250s
浓云 / 下雨111/125s
开阔阴影处(人在阴影中,背景被日光照亮)91/30s
日落 / 黄金时段71/8s
明亮的室内办公室81/15s
家中起居室,仅靠灯光41/2s
昏暗的餐厅内部22s
夜间的城市街道(霓虹灯)14s
夜间风景,远处的城市灯光−230s
月光下的风景(满月)−31 分钟
星空,无月亮−68 分钟

你可以针对你手机自动曝光实际选择的数值来验证这些近似值。启动 Android Camera Parameters 应用,进入实时预览,并观察当你从阳光明媚处走到暗室时 SENSOR_EXPOSURE_TIMESENSOR_SENSITIVITY 的变化 —— 你会看到映射到此表的真实数值。


综合:等效曝光

假设你想要相同的总曝光量 (EV 12 = 阴天,f/1.8 智能手机)。以下是产生相同传感器亮度的三个有效组合:

组合ISO快门速度观感与质感
干净且锐利1001/500s噪声最少,对动作的冻结最清晰
折中方案4001/125s轻微噪声,良好的平衡
平滑运动16001/30s可见噪声;移动主体会有轻微模糊

三者都落在相同的 EV。三者看起来同样亮。但质感(噪声噪点)和运动刻画是完全不同的。这就是曝光的艺术。

如果我两者都需要呢?

这就是计算摄影大放异彩的地方。手机处于"夜间模式"时不是拍摄一张 2 秒的照片 —— 它捕获了几十张 1/60s 的帧(在每一张中冻结动作),然后通过计算进行对齐和平均。结果在大约获得长曝光集光能力的同时,没有运动模糊的惩罚。

一旦你理解了 Camera2 级别的手动曝光,你就可以自己实现类似的技术。


小结

在本章中,我们涵盖了摄影基础知识,而没有触及任何一行 Android 代码:

  • 曝光三角: 快门速度(时间)、ISO(传感器增益)和光圈(开口大小)结合起来控制总光量。每一个都有创意权衡。
  • 数字摄影中的 ISO = 模拟传感器增益。低 ISO = 干净,高 ISO = 噪点。智能手机通常支持带有 OEM 降噪的 ISO 100–6400+。
  • 快门速度 是曝光时间(秒)。快速快门 (1/1000s) 冻结动作;慢速快门 (1s+) 创造运动模糊。180° 快门法则适用于视频。
  • 光圈 是由 f 值控制的镜头开口。大多数智能手机光圈固定,因此我们仅依靠 ISO + 快门。
  • EV (曝光值) 是对数档位刻度,每个 ±1 步长使光量加倍/减半。EV 0 = 1s @ f/1.0 ISO 100。
  • 阳光 16 法则 和 EV 参考表让你无需测光即可估算曝光。
  • 正确曝光 平衡了中间调细节,避免压死阴影和溢出高光。RAW 保留了恢复空间。

下一章

第 14 章:Camera2 中的手动曝光中,我们将把这套概念模型转化为具体的 Camera2 API 调用。你将学习:

  • 如何禁用自动曝光管线 (CONTROL_MODE = OFF, CONTROL_AE_MODE = OFF)
  • 如何将 ISO 值映射到 SENSOR_SENSITIVITY
  • 如何在人类可读的秒 ↔ 纳秒之间转换 SENSOR_EXPOSURE_TIME
  • 完整的 Kotlin 代码,用于固定间隔拍摄曝光、夜间长曝光和 3 张连拍的曝光包围序列
  • 关于关闭 3A 时 OEM 降噪会被禁用的关键警告

准备好你的思考帽 —— 代码部分马上开始。