3. AE算法架构:统计直方图、亮度权重映射、目标亮度设定
自动曝光(AE)算法的核心任务是在复杂多变的场景中,将图像亮度稳定在视觉舒适且细节丰富的范围内。本章深入解析AE算法的三大支柱:统计直方图的采集、亮度权重映射的构建以及目标亮度的设定逻辑。理解这三层架构,是进行AE与WDR联合调试的理论基础。
3.1 统计直方图:场景亮度的原始数据
AE算法的第一步是获取当前帧的亮度分布信息。ISP硬件模块会统计每一帧图像的亮度(Y分量)直方图,作为后续所有决策的原始输入。
3.1.1 直方图统计原理
直方图将亮度范围(通常为0~255,对应8bit数据)划分为若干个连续的区间(Bin),统计落在每个Bin内的像素数量。常见的配置为256个Bin(每个Bin对应一个灰度级)或更少的32/64个Bin(用于降低硬件开销)。
| 参数 | 典型值 | 说明 |
|---|---|---|
| Bin数量 | 32 / 64 / 256 | Bin越多,亮度分辨率越高,但计算量增大 |
| 统计区域 | 全图 / 自定义窗口 | 通常支持全图统计,也可配置忽略边缘区域 |
| 数据位宽 | 16bit / 32bit | 用于存储每个Bin的像素计数,防止溢出 |
3.1.2 直方图的可视化与解读
下图展示了一个典型的低照度场景直方图与一个过曝场景直方图的对比。左侧直方图数据集中在低亮度区(0~80),右侧直方图数据堆积在高亮度区(200~255)。
3.2 亮度权重映射:区分“重要”区域
全图平均亮度并不能反映人眼对场景的真实感知。例如,在逆光场景中,背景天空很亮,但主体人脸很暗。如果直接取全图平均,AE会认为画面偏亮而降低曝光,导致人脸更暗。因此,需要引入亮度权重映射机制。
3.2.1 权重映射的核心思想
权重映射为图像的不同区域分配不同的“重要性”系数。AE算法在计算最终亮度统计值时,不是简单平均,而是加权平均。权重通常由以下因素决定:
- 空间位置权重:图像中心区域(ROI)通常被赋予更高权重,因为主体往往位于画面中央。
- 亮度值权重:对中间调(如肤色、中性灰)赋予高权重,对极暗和极亮区域赋予低权重,避免极端值干扰。
- 人脸检测权重:如果检测到人脸,人脸区域权重会被显著提升。
3.2.2 典型权重映射矩阵
下表展示了一个5x5的权重矩阵示例,中心区域权重最高,边缘权重最低。实际应用中,矩阵尺寸可扩展至15x15或更大。
| 1 | 2 | 3 | 2 | 1 |
|---|---|---|---|---|
| 2 | 4 | 6 | 4 | 2 |
| 3 | 6 | 9 | 6 | 3 |
| 2 | 4 | 6 | 4 | 2 |
| 1 | 2 | 3 | 2 | 1 |
3.3 目标亮度设定:AE的“靶心”
目标亮度(Target Luminance)是AE算法期望达到的平均亮度水平。算法通过调整曝光时间、增益和光圈,使当前帧的加权平均亮度逼近目标亮度。
3.3.1 目标亮度的设定依据
目标亮度并非固定值,而是根据场景类型和用户偏好动态调整的。常见的设定策略包括:
- 固定目标:设定一个全局目标值(如110/255),适用于光照稳定的室内场景。
- 场景自适应:根据直方图分布自动调整目标。例如,暗场景适当降低目标,避免噪声放大;亮场景适当提高目标,保持画面通透。
- 用户偏好:通过EV补偿(Exposure Value Compensation)接口,允许用户微调目标亮度。
3.3.2 目标亮度与WDR的协同
在WDR开启时,目标亮度的设定需要额外考虑:
- 避免过曝合并:WDR合成后,高亮区域容易出现过曝。目标亮度应适当降低,为高光留出余量。
- 暗部提亮补偿:WDR会提亮暗部,因此目标亮度可以比非WDR模式略低,防止整体画面发灰。
- 帧间平滑:WDR场景切换时,目标亮度变化应平滑,避免闪烁。
3.4 三层架构的协同流程
下图展示了从直方图统计到目标亮度追踪的完整AE算法流程。
3.5 实战调试参数对照
下表总结了AE三层架构中常见的可调参数及其对图像质量的影响。
| 层级 | 参数名称 | 推荐范围 | 调试影响 |
|---|---|---|---|
| 直方图 | Bin数量 | 32 ~ 256 | Bin少则统计粗,响应快;Bin多则精度高,但噪声敏感 |
| 直方图 | 统计区域掩码 | 全图 / 中心窗口 | 排除边缘干扰,聚焦主体区域 |
| 权重映射 | 中心权重系数 | 1.0 ~ 4.0 | 系数越大,AE越优先保证中心曝光 |
| 权重映射 | 人脸权重提升 | 2.0 ~ 8.0 | 提升人脸区域权重,改善逆光人脸亮度 |
| 目标亮度 | 基础目标值 | 80 ~ 140 (0~255) | 值越高画面越亮,但高光易过曝 |
| 目标亮度 | EV补偿步长 | -3 ~ +3 (0.25步进) | 用户微调接口,覆盖自动决策 |