3. Tuning 参数分类:黑电平校正、镜头阴影校正、坏点校正、去马赛克

ISP Pipeline 的 Tuning 参数按处理阶段和功能可划分为多个类别。本章聚焦于前端传感器信号处理阶段的四类核心参数:黑电平校正 (Black Level Correction, BLC)、镜头阴影校正 (Lens Shading Correction, LSC)、坏点校正 (Defect Pixel Correction, DPC) 以及 去马赛克 (Demosaic)。理解这些参数的物理意义与调整方法,是进行高质量图像调优的基础。

调优提示: 这四类参数通常按照 BLC → DPC → LSC → Demosaic 的顺序在硬件 Pipeline 中执行。错误的参数注入顺序或数值会导致后续模块产生累积误差,例如未校正的黑电平会直接影响阴影校正的增益计算。

3.1 黑电平校正参数 (BLC)

黑电平校正是 ISP 流水线的第一个关键步骤。由于传感器在无光照条件下仍会产生暗电流,导致输出信号存在一个固定的偏移量(黑电平)。BLC 参数用于减去该偏移量,恢复黑色的真实零值。

核心参数表

参数名称 数据类型 典型范围 物理意义
blc_offset_r uint16 0 – 4095 R 通道的黑电平偏移量
blc_offset_gr uint16 0 – 4095 Gr 通道的黑电平偏移量
blc_offset_gb uint16 0 – 4095 Gb 通道的黑电平偏移量
blc_offset_b uint16 0 – 4095 B 通道的黑电平偏移量
blc_clip_min uint16 0 – 1023 校正后像素值下限裁剪阈值
注入要点: 黑电平参数通常在传感器上电初始化时一次性注入。若传感器温度变化剧烈(如从低温进入高温环境),暗电流会漂移,此时需要动态更新 blc_offset_* 参数。实时注入时建议采用 逐帧更新 模式,避免帧间跳变导致闪烁。
黑电平校正 (BLC) 原理示意 校正前 RAW 数据 像素值 = 信号 + 暗电流偏移 黑色区域值 ≠ 0 减去偏移 校正后 RAW 数据 像素值 = 真实信号 黑色区域值 ≈ 0 BLC 参数需与传感器 OB (Optical Black) 区域统计值联动

3.2 镜头阴影校正参数 (LSC)

由于镜头的光学特性,图像边缘的亮度通常低于中心区域(亮度衰减)并伴随色彩偏差(色阴影)。LSC 参数通过一个二维增益矩阵对每个像素进行补偿,使画面亮度均匀。

参数结构

  • 增益网格 (Gain Grid): 一个 M×N 的二维数组,存储每个网格点的增益值。网格分辨率通常为 17×13 或 33×25。
  • 插值方式: 双线性插值或双三次插值,用于计算非网格点像素的增益。
  • 通道独立增益: R、Gr、Gb、B 四个通道分别拥有独立的增益网格。
  • 色阴影校正系数: 针对 R/B 通道的额外增益微调,用于消除色彩偏差。
常见陷阱: LSC 增益网格的注入频率不宜过高。若每帧都更新网格,会导致边缘区域出现明显的亮度闪烁(Flicker)。推荐在变焦或光圈切换时注入新网格,其他场景使用固定网格。
镜头阴影校正 (LSC) 增益网格结构 每个节点存储一个 16-bit 增益值,非节点像素通过双线性插值获得

3.3 坏点校正参数 (DPC)

传感器制造过程中不可避免地会产生坏点(死点、亮点、闪烁点)。DPC 模块负责检测并替换这些异常像素。参数分为静态校正和动态校正两类。

参数分类

参数类别 参数名称 说明
静态 DPC static_defect_table 预烧录的坏点坐标列表,最多支持 1024 个坏点
static_replacement_mode 替换模式:邻域均值 / 中值 / 特定方向插值
动态 DPC dynamic_threshold 亮点/死点检测阈值,通常为 4 – 64 个灰度级
dynamic_window_size 检测窗口大小:5×5 或 7×7
dynamic_sensitivity 检测灵敏度:低/中/高,对应不同误检率
实时注入策略: 静态坏点表通常在产线标定时写入 OTP,运行时不更新。动态 DPC 阈值建议在场景切换时(如从暗光到强光)实时注入,避免在暗光下阈值过低导致大量误检。
坏点校正 (DPC) 处理流程 RAW 输入 静态坏点检测 查表匹配 动态坏点检测 阈值比较 输出 坏点替换:邻域均值 / 中值 / 插值

3.4 去马赛克参数 (Demosaic)

Bayer 格式的 RAW 数据每个像素只包含一种颜色分量,去马赛克模块通过插值算法重建出完整的 RGB 图像。参数直接影响图像分辨率和伪彩色抑制能力。

关键参数

  • 插值算法选择: 双线性插值、边缘导向插值、自适应插值、AI 插值。不同算法对应不同的硬件资源消耗和图像质量。
  • 边缘保护阈值: 控制插值时是否沿边缘方向进行,避免边缘模糊。典型值 10 – 100。
  • 伪彩色抑制强度: 0 – 255,数值越大对高频区域的伪彩色抑制越强,但可能损失细节。
  • 色差平滑系数: 用于抑制绿色通道与红/蓝通道之间的色差噪声。
参数耦合风险: Demosaic 的伪彩色抑制参数与后续的 3A(自动白平衡)参数存在强耦合。若伪彩色抑制过强,会导致白平衡统计值偏差,产生色偏。建议在注入 Demosaic 参数后,重新触发 AWB 统计。
去马赛克 (Demosaic) 插值过程 Bayer 输入 R Gr Gb B 插值 RGB 输出 R 平面 G 平面 B 平面 每个像素位置通过插值 获得缺失的两个颜色分量

3.5 四类参数的注入优先级与依赖关系

在实际 Tuning 过程中,这四类参数并非独立调整。下表总结了它们的依赖关系和注入优先级:

参数类别 依赖前置模块 影响后续模块 注入优先级
黑电平校正 (BLC) 无 LSC、DPC、Demosaic 最高(必须先校正)
坏点校正 (DPC) BLC Demosaic(坏点不校正会导致插值伪彩色) 高
镜头阴影校正 (LSC) BLC Demosaic(阴影校正后的均匀亮度有利于插值) 中
去马赛克 (Demosaic) BLC、DPC、LSC 后续 Gamma、3A 模块 低(但参数精度要求最高)
最佳实践: 在实时注入场景中,建议按照 BLC → DPC → LSC → Demosaic 的顺序依次注入参数。若系统支持原子操作(Atomic Update),可将一组参数打包后一次性写入硬件寄存器,避免中间状态导致图像异常。