4. 自动曝光(AE)原理
自动曝光(AE)是3A算法中与图像亮度直接相关的闭环控制模块。其核心任务是在场景光照变化时,通过调节镜头光圈、传感器曝光时间和模拟/数字增益,使输出图像的亮度统计值稳定在预设的“目标亮度”附近。本章将深入剖析AE的物理基础、统计方法、目标设定逻辑以及收敛策略。
4.1 曝光三角:光圈、快门、增益
曝光量由三个物理参数共同决定,称为“曝光三角”。在海思ISP的AE控制中,这三个参数分别对应不同的硬件单元和调节粒度。
| 参数 | 物理含义 | 海思ISP控制方式 | 调节范围 | 副作用 |
|---|---|---|---|---|
| 光圈 (Aperture) | 镜头通光孔径大小,用F数表示(F1.2, F2.0等) | 通常由镜头驱动IC(VCM)控制,ISP通过I2C下发光圈值 | F1.0 ~ F16(取决于镜头模组) | 影响景深;大光圈(小F数)景深浅,边缘解析力下降 |
| 快门 (Shutter) | 传感器感光时间,即曝光时间,单位为行(line)或毫秒(ms) | ISP配置传感器寄存器,控制曝光行数(VTS) | 1行 ~ 若干帧周期(如33ms@30fps) | 影响运动模糊;快门越慢,拖影越明显 |
| 增益 (Gain) | 模拟增益(Analog Gain)和数字增益(Digital Gain) | ISP通过传感器寄存器控制模拟增益,通过ISP内部模块控制数字增益 | 1x ~ 若干倍(如16x) | 增益越高,信噪比(SNR)越低,噪声越明显 |
下图展示了曝光三角的协同关系与调节顺序:
4.2 亮度统计直方图
AE算法需要量化当前画面的亮度分布,最常用的工具是亮度统计直方图。海思ISP硬件模块(如VI或ISP统计单元)会实时计算每一帧的亮度统计信息,并上报给AE算法。
4.2.1 统计区域划分
海思平台通常将画面划分为 M × N 个统计块(如 15×15 或 33×33),每个块独立统计亮度均值。这种分块方式允许AE对不同区域赋予不同权重,实现“区域测光”。
- 全局平均测光:所有块权重相同,适用于光照均匀的场景。
- 中央重点测光:中心区域权重高,边缘权重低,适用于人像或主体居中的场景。
- 点测光:仅使用中心一个或少数几个块,适用于逆光或高对比场景。
4.2.2 直方图数据结构
每个统计块输出一个256级的亮度直方图(0~255),AE算法通过分析直方图的分布特征来判断当前曝光状态:
| 直方图特征 | 曝光状态 | 典型表现 |
|---|---|---|
| 峰值集中在左侧(0~50) | 欠曝 | 画面偏暗,暗部细节丢失 |
| 峰值集中在右侧(200~255) | 过曝 | 画面偏亮,高光溢出(饱和) |
| 峰值集中在中间(80~180) | 正常曝光 | 亮度适中,细节丰富 |
| 左右两端均有峰值 | 高动态范围场景 | 同时存在暗区和亮区,需HDR或局部调光 |
下图展示了一个典型的亮度统计直方图结构:
4.3 目标亮度设定
目标亮度(Target Luminance)是AE闭环控制的参考点。在海思ISP中,目标亮度通常以统计块的平均亮度值或加权平均亮度值的形式给出,取值范围为0~255。
4.3.1 目标亮度设定方法
- 固定目标值:直接设定一个全局目标亮度,如120(对应8位亮度值)。适用于光照稳定的室内场景。
- 自适应目标值:根据场景内容动态调整目标亮度。例如,在暗场景中适当降低目标亮度以保留暗部细节,在亮场景中提高目标亮度以增强通透感。
- 基于人脸的目标值:当检测到人脸时,以人脸区域的亮度统计值为主要参考,确保人脸亮度在合理范围(如140~180)。
4.3.2 目标亮度与曝光指数的关系
曝光指数(Exposure Index, EI)是AE算法内部使用的归一化曝光量,计算公式为:
EI = Shutter_Time × Gain × (Aperture_Area / Reference_Area)
AE算法通过调整曝光三角参数,使当前帧的统计亮度 Y_avg 逼近目标亮度 Y_target。当 Y_avg < Y_target 时,AE增加EI;反之则减少EI。
4.4 AE收敛策略
AE收敛策略决定了算法从当前曝光状态过渡到目标曝光状态的速度和稳定性。收敛过快会导致画面闪烁(Flicker),收敛过慢则无法适应快速变化的光照。
4.4.1 收敛速度控制
| 策略 | 实现方式 | 适用场景 |
|---|---|---|
| 快速收敛 | 大步长调整曝光参数,每帧变化量较大 | 光照突变场景(如从室内走到室外) |
| 慢速收敛 | 小步长调整,使用IIR滤波平滑曝光变化 | 光照稳定场景,避免微小波动引起闪烁 |
| 自适应收敛 | 根据亮度误差大小动态调整步长 | 通用场景,兼顾响应速度和稳定性 |
4.4.2 防闪烁机制
在50Hz或60Hz交流电光源下,快门时间必须与光源频率同步,否则画面会出现明暗条纹(Flicker)。海思ISP的AE模块内置了防闪烁检测与同步功能:
- 检测:通过分析连续帧的亮度波动,判断是否存在闪烁。
- 同步:将快门时间限制为光源周期的整数倍(如50Hz下为10ms的整数倍)。
4.4.3 收敛流程图
下图展示了AE从统计到收敛的完整闭环流程:
4.5 本章小结
- 曝光三角(光圈、快门、增益)是AE的物理基础,调节优先级为光圈优先→快门次之→增益兜底。
- 亮度统计直方图是AE的“眼睛”,通过分块统计和直方图分布判断曝光状态。
- 目标亮度设定需结合场景自适应,避免固定值导致过曝或欠曝。
- 收敛策略需平衡响应速度和稳定性,防闪烁机制是室内场景的必备功能。