2. 图像处理基础

在自动对焦(AF)、自动曝光(AE)、自动白平衡(AWB)三大算法的调优过程中,所有决策都建立在“图像数据如何产生、如何表示、如何被处理”这一基础之上。如果对色彩空间、传感器特性和 ISP 流水线缺乏清晰认识,调优往往会变成盲目试参数。本节从数据源头出发,梳理这三者之间的依赖关系,为后续算法调优建立统一的认知框架。

一、色彩空间:算法看到的“颜色坐标系”

色彩空间是描述颜色的数学模型。同一幅场景,在不同色彩空间中的数值表达完全不同,而 AF/AE/AWB 各自依赖的统计量也来自不同空间。

  • RAW(Bayer 域):传感器原始输出,每个像素只有 R、G、B 中的一个分量,保留最完整的线性光信息,是 AWB 增益计算和 AE 亮度统计的首选域。
  • RGB:线性或伽马编码后的三通道数据,便于显示与色彩运算,但通道间高度相关,直接做白平衡容易引入色偏。
  • YUV / YCbCr:亮度 Y 与色度 UV 分离。AF 的对比度/相位检测、AE 的亮度直方图通常工作在 Y 通道,AWB 则在 Cb、Cr 平面上判断色温倾向。
  • HSV / HSL:色相、饱和度、明度分离,适合做肤色检测、场景分类等辅助判断,但一般不作为主处理域。
调优经验:AWB 的统计点应尽量取自 RAW 或线性 RGB,避免在伽马编码后的 YUV 上直接估计色温,否则高光与暗部会被非线性压缩,导致灰世界假设失效。

二、图像传感器:数据的物理起点

图像传感器决定了图像的动态范围、噪声水平和色彩还原上限。调优时必须理解以下关键特性:

  • Bayer 阵列:RGGB、BGGR、GRBG、GBRG 四种排布,决定 ISP 去马赛克的方向与 AWB 统计窗口的采样方式。
  • 量子效率与光谱响应:不同传感器对 R/G/B 的响应曲线不同,直接影响 AWB 的色温映射表标定。
  • 动态范围与满阱容量:决定 AE 在强逆光下是否必须依赖 HDR 合成,以及曝光策略的上限。
  • 读出噪声与暗电流:低照度下噪声会污染 AF 的对比度评价函数,也会让 AWB 统计点漂移。
  • 卷帘/全局快门:卷帘快门在运动场景下产生果冻效应,影响 AF 追踪与 AE 闪烁判断。

三、ISP 流水线:算法运行的“轨道”

ISP(Image Signal Processor)把 RAW 数据逐级加工为可显示、可编码的图像。AF/AE/AWB 并非独立运行,而是嵌入在流水线的不同阶段,形成“统计—决策—反馈”的闭环。

ISP 流水线中的 AF / AE / AWB 统计与反馈 Sensor RAW Bayer 数据 黑电平/线性化 BLC + LSC AWB 增益 R/B 通道校正 去马赛克 Demosaic Gamma / CCM 色彩校正 YUV / 输出 编码与显示 AE 统计 亮度直方图 / 均值 来自 RAW 或 Y 通道 AWB 统计 灰点 / 白点检测 Cb-Cr 平面聚类 AF 统计 对比度 / 相位差 Y 通道高频能量 3A 决策 曝光/增益/马达 色温/对焦位置 橙色反馈路径:3A 决策结果回写至 AWB 增益、曝光控制与对焦马达 红色虚线:统计模块从流水线不同阶段采集数据 调优核心:统计窗口位置、采样域、反馈延迟共同决定 3A 收敛速度与稳定性

四、三者的协同关系与调优要点

色彩空间、传感器、ISP 流水线并非孤立知识点,而是共同决定了 3A 算法的输入质量与响应速度。下表总结了各阶段与 3A 的对应关系:

ISP 阶段 数据形态 主要 3A 统计 调优关注点
Sensor RAW Bayer 线性 AWB 灰点、AE 亮度 黑电平、镜头阴影、坏点
AWB 增益后 线性 RGB AWB 收敛判断 增益边界、色温映射表
Demosaic 后 RGB AF 对比度 锐化强度、噪声抑制
Gamma / YUV 非线性 YUV AE 直方图、AF 相位 伽马曲线、目标亮度

五、常见误区与复盘

误区一:在 YUV 域直接做 AWB 统计。伽马编码会压缩高光,导致灰世界假设在亮部失效,画面容易偏暖或偏冷。应回到 RAW 或线性 RGB 域统计。

误区二:忽略传感器光谱响应差异。同一套 AWB 参数换到另一颗传感器上往往失效,必须重新标定色温曲线与增益表。

误区三:把 AF 统计点放在锐化之后。锐化会放大噪声,使对比度评价函数出现假峰,导致对焦抖动。应在去马赛克后、锐化前采样。

误区四:忽视反馈延迟。ISP 流水线通常有 2~5 帧延迟,AE 收敛过快会引起亮度振荡,AWB 过快会导致色温来回跳变,需加入阻尼与迟滞。

# 典型 3A 调优参数片段(示意)
ae:
  target_luma: 118        # 目标亮度(0-255)
  convergence_frames: 4   # 收敛帧数,抑制振荡
  metering: center_weighted
awb:
  stats_domain: raw       # 统计域:raw / linear_rgb
  gray_threshold: 0.12    # 灰点判定阈值
  gain_limit: [0.5, 3.5]  # R/B 增益边界
af:
  stats_stage: post_demosaic
  contrast_metric: tenengrad
  search_step: 3          # 马达步进

理解色彩空间决定了“在哪里统计”,理解传感器决定了“统计是否可信”,理解 ISP 流水线决定了“统计何时可用、反馈何时生效”。这三者构成了 3A 调优的底层坐标系,后续所有参数调整都应在这个坐标系内进行定位与验证。