一、AE概述与行业背景

1.1 什么是自动曝光(AE)?

自动曝光,说白了就是让相机自己决定「拍多亮」。

你按下快门之前,AE 模块会做一件事:测量当前场景的亮度,然后调整曝光参数——快门速度、光圈、增益——让最终图像既不暗成一片,也不亮到过曝。

我刚开始做手机摄像头调试时,总觉得 AE 不就是个亮度闭环嘛,有什么难的?后来发现,真正落地时坑多得很。同一个场景,有人觉得亮才好看,有人觉得暗才有氛围。AE 要做的,是在各种光线条件下,给出一个「大多数人能接受」的亮度。

核心目标: 让输出图像的亮度稳定在目标值附近,且在不同场景下切换平滑、不闪烁、不震荡。

1.2 AE在相机系统中的位置

一个完整的相机 ISP 流水线里,AE 不是孤立的。它和 AWB(自动白平衡)、AF(自动对焦)并称「3A」,三者互相影响。

举个例子:你调高了曝光增益,图像变亮了,但颜色饱和度也会跟着变——这时候 AWB 就得重新算白平衡。同样,AE 在低光下会拉长曝光时间,如果画面里有运动物体,AF 就得考虑是不是该切换到短曝光模式。

模块 职责 与AE的耦合
AE 控制亮度 —
AWB 控制色温 AE 增益变化 → 颜色偏移 → AWB 需重新收敛
AF 控制清晰度 AE 曝光时间变化 → 运动模糊 → AF 需调整策略

我在项目中遇到过最头疼的情况:AE 和 AWB 同时收敛,结果两个环路互相拉扯,画面亮度刚稳定,颜色又开始漂;颜色稳了,亮度又跳了。后来我们加了「收敛优先级」——先让 AE 稳定,再启动 AWB 的精细调整。嗯,这个顺序很重要。

1.3 AE的行业标准与挑战

行业内对 AE 的要求,其实可以归纳成三个字:快、准、稳。

  • 快:场景切换后,AE 要在几帧内收敛到目标亮度。用户从室内走到室外,你总不能让画面亮暗闪烁好几秒吧?
  • 准:亮度误差控制在 ±0.3 EV 以内。我见过一些低端方案,误差能到 ±1 EV,拍出来的照片一张亮一张暗,用户体验极差。
  • 稳:收敛后不能有周期性抖动。尤其是视频录制,AE 一旦震荡,画面就会「呼吸」——忽明忽暗,非常明显。

但实际落地时,有三个老大难问题:

动态范围

真实场景的亮度范围,远大于传感器能记录的。比如逆光人像:人脸暗到接近 0,背景亮到接近饱和。AE 该保人脸还是保背景?

行业里常见的做法是分区测光——把人脸区域权重提高,背景适当过曝也不管。但如果你做的是安防摄像头,人脸和车牌都得看清,那就得用 HDR 合成。AE 在这里的角色,是决定每帧的曝光参数,让合成后的图像动态范围最大化。

我的经验: 做 AE 策略时,先搞清楚产品定义。手机拍照和行车记录仪,AE 的权重完全不同。前者优先人脸,后者优先全局细节。

闪烁(Flicker)

这个坑我踩过。在 50Hz 交流电环境下,日光灯每秒闪烁 100 次。如果曝光时间不是 10ms 的整数倍,画面就会出现明暗条纹——这就是闪烁。

解决办法?强制曝光时间对齐到电网频率的整数倍。50Hz 地区用 10ms、20ms、30ms……60Hz 地区用 8.33ms、16.67ms……

注意: 自动曝光算法如果没做防闪烁处理,在室内灯光下拍视频,画面条纹会非常明显。我曾经在客户现场被这个问题折腾了两天,最后发现只是曝光时间没对齐。

延迟(Latency)

从场景变化到 AE 收敛,中间有多少帧延迟?

  • 传感器读出延迟:1~2 帧
  • ISP 统计计算延迟:1 帧
  • AE 算法计算延迟:几乎可忽略
  • 参数生效延迟:1~2 帧

加起来,最少也要 3~5 帧。如果算法收敛速度慢,延迟会更大。对于手机拍照,用户能容忍半秒的延迟;但对于自动驾驶摄像头,延迟超过 100ms 就可能出事故。

所以,AE 的收敛速度,本质上是在「稳定性」和「响应速度」之间做 trade-off。你调快了,容易震荡;调慢了,用户嫌卡顿。我个人的习惯是:先保证不震荡,再逐步加快收敛步长。

1.4 AE系统框架图

下面这张图,是我自己画的一个 AE 系统框架。它展示了从场景亮度到最终曝光参数的完整链路。

自动曝光(AE)系统框架 真实场景 图像传感器 ISP 亮度统计 AE 算法引擎 曝光参数(快门/增益/光圈) 反馈控制 关键延迟节点 • 传感器读出:1~2帧 • ISP统计:1帧 • 参数生效:1~2帧

你看,从场景到参数输出,中间经过传感器、ISP、算法引擎,最后还要反馈回传感器。这个闭环的每一环,都可能引入延迟和误差。做 AE 落地,本质上就是在跟这些延迟和误差打交道。

1.5 小结

这一章我们聊了:

  • AE 是什么——亮度闭环控制
  • AE 在 3A 中的位置——与 AWB、AF 互相耦合
  • 行业三大挑战——动态范围、闪烁、延迟

嗯,这些都是基础。但基础往往是最容易出问题的地方。我见过太多方案,算法理论完美,一到真实场景就崩——要么闪烁没处理好,要么收敛太慢。所以,后面的章节我们会深入每个细节,从统计方法到控制策略,一步步把 AE 落地讲透。