3、色彩与亮度基础:颜色空间(RGB/YCbCr/HSV)、亮度与照度、人眼视觉特性
在3A算法(自动对焦AF、自动曝光AE、自动白平衡AWB)与ISP图像处理链路中,色彩与亮度是所有后续处理的基础。无论是传感器输出的RAW数据,还是最终显示在屏幕上的图像,其本质都是对光信号与颜色信息的数字化表达。理解颜色空间的数学表达、亮度与照度的物理区别,以及人眼视觉系统的非线性感知特性,是设计曝光策略、白平衡校正算法和色彩还原流程的前提。本章将系统梳理这三块核心知识,并建立它们与3A算法之间的工程映射关系。
3.1 颜色空间:从传感器RAW到显示输出的数学桥梁
3.1.1 核心原理:三种颜色空间的本质与适用场景
颜色空间是描述颜色的数学模型。在ISP链路中,不同阶段使用不同颜色空间,原因在于各空间对信息的组织方式与硬件特性、人眼感知特性匹配度不同。
- RGB空间:传感器(CMOS/CCD)的每个像素通过Bayer滤色阵列输出R/G/G/B原始值,这是最接近物理光响应的线性空间。RGB空间适合做去马赛克、镜头阴影校正等传感器相关处理,但其三个分量高度相关,且对亮度变化敏感,不适合做压缩和传输。
- YCbCr空间:将RGB分解为亮度Y和两个色度分量Cb(蓝色差)、Cr(红色差)。人眼对亮度分辨率远高于色度分辨率,因此YCbCr允许对色度进行下采样(如4:2:0),在视觉无损的前提下减少数据量。ISP输出端、视频编码(H.264/H.265)均使用该空间。
- HSV空间:色调H(0°-360°)、饱和度S(0-1)、明度V(0-1)。HSV将颜色属性与人眼直觉分离,便于做色彩检测、肤色分割、图像编辑。在AWB算法中,HSV常用于统计色偏方向(如偏黄、偏蓝)。
3.1.2 转换方法与工程实现
ISP中RGB与YCbCr的转换通常采用BT.601或BT.709标准矩阵。以BT.601(标清)为例,RGB(0-255)转YCbCr的近似公式为:
Y = 0.299R + 0.587G + 0.114B
Cb = 128 - 0.1687R - 0.3313G + 0.5B
Cr = 128 + 0.5R - 0.4187G - 0.0813B
在硬件实现中,为避免浮点运算,通常将系数放大为整数(如乘以256),用移位代替除法。RGB转HSV则需先归一化到[0,1],再通过max/min计算V和S,H根据max分量所在通道分段计算。
3.1.3 案例拆解:AWB色温估计中的YCbCr统计
某手机摄像头在室内白炽灯(约2800K)下拍摄灰卡,RAW图像偏橙。AWB模块将图像转换到YCbCr空间后,统计Cb和Cr的均值:Cb均值偏低(-15),Cr均值偏高(+20),判断色偏方向为橙黄色。随后算法在RGB空间调整R/B增益(R增益降至0.85,B增益升至1.15),使灰卡RGB三通道均值接近(R=128, G=130, B=127)。若直接在RGB空间统计,R和B通道受亮度影响大,难以分离色偏与曝光偏差;而YCbCr将亮度Y独立后,色度统计更稳定。
3.1.4 常见误区与总结
| 颜色空间 | 分量含义 | 主要用途 | 与3A关联 |
|---|---|---|---|
| RGB | 红/绿/蓝三原色 | 传感器输出、显示驱动 | AWB增益调整 |
| YCbCr | 亮度Y+色度Cb/Cr | 视频编码、图像分析 | AE亮度统计、AWB色偏判断 |
| HSV | 色调/饱和度/明度 | 色彩检测、图像分割 | AWB色温分类、肤色识别 |
3.2 亮度与照度:物理量与感知量的工程区分
3.2.1 核心原理:照度是输入,亮度是感知结果
照度(Illuminance)是单位面积上接收到的光通量,单位为勒克斯(lux),描述“有多少光照射到物体上”。亮度(Luminance)是单位面积上反射或发射的光强,单位为坎德拉每平方米(cd/m²),描述“人眼看到物体有多亮”。同一照度下,黑色物体(反射率5%)与白色物体(反射率90%)的亮度相差18倍。AE算法本质上是在估计场景照度,并设定曝光参数使输出图像亮度映射到目标范围(通常以18%灰卡为基准)。
3.2.2 判断方法:AE曝光三角与亮度统计
AE通过调整曝光时间(T)、光圈(F数)、ISO增益(G)来控制传感器接收的光量。曝光值EV与三者的关系为:
EV = log2(N² / T) 其中N为光圈F数,T为曝光时间(秒)
亮度输出 ≈ (K × L × T) / N² K为传感器常数
ISP中AE统计模块通常将图像分为M×N个区域(如15×15),计算每个区域的Y均值,再按权重(中央重点、平均、点测光)合成全局亮度。若全局亮度低于目标值(如128/255),则增加曝光时间或ISO;若高于目标,则反之。
3.2.3 实战场景:逆光场景的AE策略
场景:户外逆光人像,背景天空照度100000lux,人脸照度仅200lux。若使用全局平均测光,背景亮度占主导,AE会降低曝光,导致人脸过暗(亮度值仅40/255)。解决方案:
- 人脸检测优先:通过AF模块检测到人脸区域,将人脸区域的亮度权重提升至70%。
- 动态范围压缩:若人脸与背景亮度差超过传感器动态范围(如12bit传感器约72dB),启用多帧HDR(短帧+长帧合成),短帧保留背景细节,长帧提亮人脸。
- 局部亮度映射:在ISP中做局部tone mapping,将人脸区域亮度提升至120/255,背景压暗至180/255,保留层次。
结果:人脸亮度从40提升至110,背景从250降至200,主观画质显著改善。代价是HDR合成可能引入运动鬼影,需配合运动检测补偿。
3.2.4 常见误区与总结
3.3 人眼视觉特性:感知非线性的工程启示
3.3.1 核心原理:对数感知与色彩恒常
人眼对亮度的感知遵循韦伯-费希纳定律:可感知的最小亮度差与背景亮度成正比(ΔL/L≈常数)。这意味着在暗部,人眼能分辨很小的亮度差;在亮部,需要更大的差才能感知。因此,ISP中的gamma校正(通常γ=1/2.2)将线性光信号映射为感知均匀的信号,使8bit量化能更高效地利用码值。色彩恒常性是人脑自动消除光源色温影响的能力——同一张白纸在日光下和烛光下,人眼都感知为白色。AWB算法正是模拟这一机制,通过估计光源色温并调整RGB增益,使白色物体在所有光源下都呈现中性色。
3.3.2 判断方法:对比度敏感函数(CSF)与MTF
人眼对不同空间频率的对比度敏感度不同,呈带通特性:中频(2-5 cpd)最敏感,高频和低频敏感度下降。这解释了为什么AF算法通常使用中频边缘的对比度(如Sobel梯度)作为对焦评价函数,而非高频噪声或低频平坦区域。在ISP中,锐化(Sharpening)也需遵循CSF,过度锐化高频会放大噪声,而人眼对高频噪声的容忍度较低。
3.3.3 案例拆解:gamma校正与AWB的协同
某安防摄像头在夜间模式下,红外灯开启,图像为黑白。由于红外光下人眼感知亮度与可见光不同,直接使用标准gamma会导致暗部噪声放大。调试过程:
- 初始现象:图像暗部噪点明显,亮部过曝。
- 分析:红外光下传感器量子效率在850nm处较高,但人眼对该波段不敏感,导致RAW数据分布与可见光不同。
- 调整:将gamma曲线改为分段函数——暗部(0-64)使用γ=0.45压缩噪声,亮部(128-255)使用γ=0.25保留细节;同时将AWB关闭(黑白模式无需白平衡),避免错误色偏。
- 结果:暗部SNR提升6dB,亮部细节保留,主观评分从3.2提升至4.1(满分5)。
3.3.4 常见误区与总结
| 人眼特性 | 数学描述 | ISP/3A应用 |
|---|---|---|
| 韦伯-费希纳定律 | ΔL/L = k | gamma校正、tone mapping |
| 色彩恒常性 | 感知颜色不随光源变化 | AWB色温估计与增益调整 |
| CSF带通特性 | 中频敏感度最高 | AF对焦评价、锐化强度控制 |
| 亮度适应 | 暗适应慢、亮适应快 | AE策略中的曝光平滑过渡 |
综上所述,颜色空间、亮度/照度、人眼视觉特性三者构成了3A算法的理论基础。颜色空间决定了算法处理的数据组织方式,亮度/照度定义了AE的物理约束,人眼视觉特性则提供了感知质量的评价标准。在实际ISP调试中,这三者并非孤立,而是通过统计模块、增益控制、非线性映射紧密耦合。理解这些基础,才能在设计AE曝光策略时兼顾物理正确性与感知舒适性,在AWB中平衡色彩还原与场景适应性,在AF中利用人眼对比度敏感特性优化对焦速度与精度。