自动曝光(AE)基础:曝光三要素与18%灰
曝光,说白了就是让多少光落到传感器上。你想想看,拍一张照片,太亮叫过曝,太暗叫欠曝。手机相机里那个自动曝光(AE)模块,就是替你做决定的那个家伙。
我个人习惯把AE比作一个水桶接水。光圈是水龙头开多大,快门是接水时间多长,ISO是水桶的灵敏度——嗯,这个比喻不太严谨,但初学者好理解。
曝光三要素:光圈、快门、ISO
这三个参数共同决定了最终图像的亮度。我见过不少刚入行的Tuning工程师,上来就调AE曲线,却连三要素的物理意义都没吃透。结果调出来的效果,要么夜景噪点炸裂,要么白天运动模糊。
| 参数 | 物理含义 | 手机上的典型值 | 对画质的影响 |
|---|---|---|---|
| 光圈(Aperture) | 镜头通光孔径的大小 | f/1.4 ~ f/2.4(固定居多) | 影响景深和进光量 |
| 快门(Shutter) | 传感器感光的时间长度 | 1/8000s ~ 30s | 影响运动模糊和手持稳定性 |
| ISO(感光度) | 传感器对光的放大增益 | 50 ~ 6400+ | 影响噪点水平和动态范围 |
注意: 手机镜头大多是固定光圈(比如f/1.8),所以AE实际能调的只有快门和ISO。我曾经在项目里遇到一个坑——硬件同事说光圈是f/1.8,结果模组实测只有f/2.0,导致整个AE标定全偏了。所以拿到模组后,第一件事就是实测光圈值,别信规格书。
曝光模型与18%灰
相机怎么知道当前场景是亮还是暗?它靠的是18%灰这个基准。
18%灰,说白了就是反光率18%的中性灰卡。相机默认认为:你把画面里所有物体的亮度平均一下,应该等于18%灰的亮度。如果实际平均亮度比这个高,相机就认为过曝了,会压快门或降ISO;反之则提亮。
这个模型在大多数场景下都管用。但遇到极端场景——比如雪景(反光率90%+)或夜景(反光率5%以下),AE就会犯错。雪景拍出来发灰,就是因为相机强行把90%的反射率压到了18%。
核心公式: 曝光值(EV)= log₂(光圈² / 快门速度)
实际应用: 每增加1EV,进光量翻倍。Tuning时我们经常说“+0.3EV补偿”,就是让画面亮一点点。
实际应用: 每增加1EV,进光量翻倍。Tuning时我们经常说“+0.3EV补偿”,就是让画面亮一点点。
亮度统计直方图
这是AE模块的眼睛。传感器采集完数据后,ISP会统计每个像素的亮度值,然后画出一张直方图。
横轴是亮度(0~255,8bit数据),纵轴是像素数量。我习惯把直方图分成三个区:
- 暗部区(0~85): 阴影细节所在,太挤说明欠曝
- 中间区(86~170): 主体亮度集中区,AE主要盯这里
- 亮部区(171~255): 高光区域,太挤说明过曝
你想想看,如果直方图左边贴墙,右边空荡荡——那就是欠曝了。反过来右边贴墙左边空——过曝。好的曝光,直方图应该像一座山,中间高两边低,不贴墙。
我的调试习惯: 在Tuning工具里打开实时直方图,对着灰卡拍一张,看峰值是否在128附近(8bit的18%灰对应值)。如果偏了,先检查AE目标亮度配置,别急着改曲线。
AE的核心流程(SVG图)
实际Tuning中的避坑指南
我在项目里踩过不少AE的坑,挑几个典型的说说:
- 场景切换闪烁: 从室内走到室外,画面突然闪一下。这是因为AE的收敛速度太快,增益跳变太大。我后来把AE的阻尼系数调大,让参数平滑过渡,问题就解决了。
- 夜景过曝: 路灯场景拍出来一片白。原因是AE把路灯区域当成主体,拼命压曝光。解决方案是开启局部测光或人脸优先,别让高亮区域主导全局。
- 运动模糊: 拍小孩总是糊。检查发现AE在暗光下把快门降到了1/15s。我强制设了一个快门下限(1/30s),宁可提ISO噪点,也不能糊片。
曾经踩过的坑: 有一次客户反馈手机拍文档,中间亮四周暗。我查了半天,发现是AE的权重矩阵没配好——中心权重太高,边缘权重太低。相机以为中心曝光正常,其实四周已经欠曝了。后来我把权重改成均匀分布,问题解决。
总结一下本章核心
曝光三要素是AE的物理基础,18%灰是AE的参考基准,直方图是AE的反馈信号。这三样东西搞明白了,后面调AE曲线、配权重、做场景识别,才有根可循。