2、曝光三角与光物理基础:光圈、快门、增益(ISO)的物理意义与数学关系。曝光量(EV)的定义与计算。
各位同学,欢迎来到第二章。
上一章我们聊了AE要解决的核心问题——让图像亮度稳定在目标值。但要想真正理解AE怎么收敛,你得先搞明白一件事:曝光到底是怎么控制的?
说白了,相机就是一个装光的盒子。光进来多少,进来多久,进来之后怎么放大,这三个变量决定了最终图像的亮度。这就是经典的曝光三角:光圈、快门、增益(ISO)。
2.1 光圈(Aperture):光的“水龙头”
光圈是镜头里一个可调节的孔。孔径越大,单位时间进光量就越多。
但光圈值(F-number)不是直接标孔径大小的。它是个比值:
F = 焦距 / 有效孔径直径
所以F值越小,光圈反而越大。我刚开始做嵌入式相机时,经常被这个反比关系搞晕。后来我给自己编了个口诀:“F小孔大,光多”。
关键数学关系:
光圈面积与F值的平方成反比。F值每增大√2倍(约1.4倍),进光量减半。
标准光圈档位:F1.0 → F1.4 → F2.0 → F2.8 → F4.0 → F5.6 → F8.0
每档之间进光量差一倍。
2.2 快门(Shutter Speed):光的“闸门时间”
快门控制传感器感光的时间长短。时间越长,积累的光子越多。
这个很好理解,线性关系:曝光时间翻倍,进光量翻倍。
但要注意,快门速度通常用秒的分数表示:1/30s、1/60s、1/120s……数值越大,实际时间越短。
工程经验:
我在做手机摄像头AE时,发现一个常见坑:卷帘快门(Rolling Shutter)下的频闪问题。
如果你在50Hz交流电环境下用1/100s快门,刚好能避开频闪。但用1/120s?画面会有一条条明暗条纹。我曾经因为这个bug被测试部门追着改了一周……
所以,AE算法里通常要加一个防频闪(Anti-Flicker)模块,把快门速度锁定在工频周期的整数倍上。
2.3 增益(ISO/Gain):光的“放大器”
增益是传感器读出信号后的电子放大倍数。它不改变实际进光量,但改变信号的最终强度。
数学上很简单:
输出亮度 = 原始信号 × 增益
但代价是什么?噪声也被放大了。
注意:
ISO不是物理感光度。数字传感器的感光度是固定的,ISO只是后级模拟/数字增益的映射。
我见过不少算法工程师把ISO当成物理参数来建模,结果标定出来的AE曲线完全不对。记住:ISO是增益,不是灵敏度。
2.4 曝光量(EV)的定义与计算
曝光量(Exposure Value, EV)是一个综合指标,用来描述“场景亮度”或“相机设置对应的曝光水平”。
标准定义:
EV = log₂(F² / T)
其中F是光圈值,T是快门速度(秒)。
举个例子:
- F2.8, 1/60s → EV = log₂(2.8² / (1/60)) = log₂(7.84 × 60) ≈ log₂(470.4) ≈ 8.9
- F4.0, 1/125s → EV = log₂(16 / 0.008) = log₂(2000) ≈ 11.0
EV值每增加1,曝光量减半。EV值越大,画面越暗。
完整曝光公式(含ISO):
实际亮度 ∝ (1/F²) × T × ISO
或者写成对数形式:
EV = log₂(F² / T) - log₂(ISO / 100)
这个公式是AE算法里做曝光补偿和亮度预测的基础。
2.5 曝光三角的工程约束
理论上,你可以任意组合光圈、快门、ISO来达到相同EV。但工程上,每个参数都有边界:
| 参数 | 下限约束 | 上限约束 |
|---|---|---|
| 光圈 | 镜头物理最大孔径(F值最小) | 衍射极限(F值太大画质下降) |
| 快门 | 帧率限制(如30fps下最长1/30s) | 运动模糊容忍度 |
| ISO | 基础ISO(通常100或200) | 噪声容忍度(ISO越高噪点越明显) |
所以AE算法的本质,就是在这些约束下,找到一组最优的(光圈、快门、ISO)组合,使图像亮度接近目标值。
2.6 知识结构图:曝光三角与EV
下面这张图总结了本章的核心逻辑:
2.7 本章小结
曝光三角是AE算法的物理基础。你不需要成为光学专家,但必须理解:
- 光圈、快门、ISO各自如何影响亮度
- 它们之间的数学关系(特别是平方反比和对数关系)
- EV的定义和计算方式
- 每个参数的工程边界
下一章,我们会把这些物理量映射到数字域,看看亮度值(Luma)是怎么从RAW数据里算出来的。到时候你会明白,为什么AE算法里用的“亮度”和你在屏幕上看到的“亮度”不是一回事。
个人建议:
如果你手边有开发板或者手机,试着手动调一下相机参数。固定场景下,分别改变光圈、快门、ISO,观察图像亮度和噪声的变化。这种手感比看一百页文档都有用。