图像传感器与ISP流水线:从光子到数字图像

各位同学,欢迎来到第二章。上一章我们聊了AWB和AE联动调优的整体思路,今天得先把底层的硬件基础讲清楚——图像传感器和ISP流水线。

说白了,你调的白平衡和曝光,最终都是作用在传感器采集到的原始数据上。不了解传感器怎么工作、ISP各模块在干什么,你调参就是瞎调。我见过太多工程师拿着AE/AWB的代码改来改去,效果就是上不去,最后发现是传感器配置阶段就出了问题。

2.1 从光子到数字信号:传感器的工作原理

图像传感器的核心任务,就是把光子转换成电子,再量化成数字值。这个过程大致分三步:

  1. 光电转换:每个像素上的感光二极管吸收光子,产生光生电子。
  2. 电荷积累:曝光时间内,电子不断积累在像素的浮置扩散区。
  3. 量化输出:通过ADC(模数转换器)把电压值变成数字码值。

嗯,这里有个关键概念——满阱容量。每个像素能装多少电子是有限的,装满了就饱和了。我在项目中遇到过一款传感器,满阱容量只有8000个电子,拍高亮场景时一片死白,怎么压曝光都没用。后来换了满阱容量更大的传感器,问题才解决。

核心指标速查表

参数含义对AWB/AE的影响
满阱容量像素能容纳的最大电子数决定高光溢出阈值,AE需避免饱和
量子效率光子转电子的效率影响低光信噪比,AE需补偿增益
暗电流无光照时产生的噪声电子影响暗区色偏,AWB需做暗电流校正
ADC位深量化后的比特数(如10bit/12bit)决定动态范围,AWB精度受限于量化步长

你想想看,如果ADC位深只有8bit,那R/G/B三个通道各自只有256个灰度级。做白平衡时,增益系数乘上去,量化误差就会被放大。所以我个人习惯,做AWB调优前,先确认传感器输出的是12bit还是14bit数据——位深不够,后面怎么调都白搭。

2.2 ISP流水线概览:各模块在干什么

传感器输出的原始数据叫RAW图,它还不是我们能看的图像。ISP(图像信号处理器)就是一条流水线,把RAW图一步步加工成漂亮的RGB或YUV图像。

典型的ISP流水线长这样:

RAW输入 → 黑电平校正 → 镜头阴影校正 → 坏点校正 → 
去马赛克 → 白平衡增益 → 颜色校正矩阵 → Gamma校正 → 
色调映射 → 锐化 → 降噪 → YUV输出

每个模块都有它的使命。我挑几个跟AWB/AE关系最密切的说说:

  • 黑电平校正:去掉传感器本身的暗电流偏置。不校正的话,暗区会偏色,AWB算出来的色温就不准。
  • 镜头阴影校正:补偿镜头边缘亮度衰减。AE如果只看中心区域,边缘暗了它也不知道。
  • 白平衡增益:这就是AWB的核心执行模块。对R、G、B三个通道分别乘上增益系数,让中性色变成灰色。
  • 颜色校正矩阵:把传感器光谱响应映射到标准色空间。AWB调完色温,CCM负责把颜色调准。
  • Gamma校正:调整亮度响应曲线。AE的目标亮度值,最终要经过Gamma才能映射到输出码值。

我的经验:很多新手以为AWB只跟白平衡增益模块有关。其实黑电平校正和镜头阴影校正没做好,AWB算出来的增益系数就是错的。我曾经在一个项目里,AWB怎么调都偏蓝,查了两天才发现是黑电平校正参数没烧录对。

2.3 AWB与AE在ISP中的位置

现在我们把AWB和AE放到整个ISP流水线里,看看它们到底在哪个环节起作用。

先看一张我画的流程图:

ISP流水线中AWB与AE的位置 传感器 RAW 输出 预处理模块 AE 统计 AE 控制 AE 反馈:调整曝光时间/增益 去马赛克 AWB 增益 AWB 统计 AWB 控制 AWB 反馈:调整 R/G/B 增益系数 CCM / Gamma / 锐化 YUV 输出 ⚠ AE 在预处理后、去马赛克前做统计 ⚠ AWB 在去马赛克后、CCM 前做统计 ⚠ 两者统计位置不同,反馈路径也不同

从这张图你能看到几个关键信息:

  • AE在预处理之后、去马赛克之前做统计。为什么?因为AE只需要亮度信息,不需要颜色。在RAW域直接算亮度,省掉去马赛克的计算量。
  • AWB在去马赛克之后、CCM之前做统计。因为AWB需要知道每个像素的颜色信息,去马赛克之后才有完整的RGB值。
  • 两者都有反馈回路。AE反馈回去调曝光时间和增益,AWB反馈回去调R/G/B增益系数。这就是联动的物理基础。

避坑指南:我曾经在一个项目里,AE和AWB的统计窗口没有对齐。AE统计的是画面中心区域,AWB统计的是全画面。结果AE觉得亮度够了,AWB却因为边缘偏色算错了色温。最后画面又暗又偏。所以,联动调优的第一步——确保AE和AWB的统计区域一致。

2.4 为什么AWB和AE必须联动

现在你应该明白了,AWB和AE在ISP流水线里虽然位置不同,但它们共享同一个输入——传感器RAW数据。而且,它们的调整会互相影响:

调整动作对AE的影响对AWB的影响
增加曝光时间亮度提升,信噪比提升可能引入运动模糊,色温估计偏差
提高模拟增益亮度提升,噪声放大噪声导致色温估计抖动
调整R增益R通道变亮,整体亮度微变色温校正,但可能触发AE重新统计
调整B增益B通道变亮,整体亮度微变色温校正,同样可能触发AE

说白了,你动AE的参数,AWB的统计结果会变;你动AWB的增益,AE的亮度统计也会受影响。这就是为什么不能各自为政,必须联动调优。

本章小结

  • 传感器把光子转成电子,再量化成数字值。满阱容量、量子效率、ADC位深是核心参数。
  • ISP流水线从RAW到YUV,每个模块都有特定任务。黑电平校正和镜头阴影校正是AWB的前置条件。
  • AE在预处理后、去马赛克前做统计;AWB在去马赛克后、CCM前做统计。两者位置不同,但必须联动。
  • 联动调优的第一步:对齐统计区域,理解参数互相影响的机制。