3. AWB 算法核心原理:灰度世界假设、完美反射假设与色域映射法
自动白平衡(AWB)的核心任务是从图像中估计场景光源的颜色,并对其进行校正,使白色物体在图像中呈现为中性白。本章深入剖析三种最经典的 AWB 算法原理:灰度世界假设(Grey World)、完美反射假设(White Patch)以及色域映射法(Gamut Mapping)。理解这些算法是进行后续 AWB 调试与色彩还原优化的理论基础。
3.1 灰度世界假设(Grey World)
灰度世界假设是最基础、应用最广泛的 AWB 算法之一。其核心思想是:在一幅色彩丰富的自然图像中,所有像素颜色的平均值趋向于灰色(即 R、G、B 三个通道的平均值相等)。
3.1.1 算法原理与数学表达
假设输入图像为 \( I \),其尺寸为 \( M \times N \)。算法首先计算每个颜色通道的像素平均值:
R_avg = (1 / (M * N)) * Σ Σ I_R(i, j)
G_avg = (1 / (M * N)) * Σ Σ I_G(i, j)
B_avg = (1 / (M * N)) * Σ Σ I_B(i, j)
根据灰度世界假设,理想情况下 \( R_{avg} = G_{avg} = B_{avg} \)。因此,我们可以计算每个通道的增益系数,将平均值调整到同一水平(通常以绿色通道为基准或使用三者平均值):
K_R = G_avg / R_avg
K_B = G_avg / B_avg
最后,将增益系数应用于原始图像的每个像素,得到校正后的图像 \( I' \):
I'_R(i, j) = I_R(i, j) * K_R
I'_G(i, j) = I_G(i, j) * 1.0
I'_B(i, j) = I_B(i, j) * K_B
3.1.2 算法流程与适用场景
下图展示了灰度世界算法的完整处理流程:
3.2 完美反射假设(White Patch)
完美反射假设,又称“白点法”或“最大RGB法”。其核心思想是:图像中最亮的像素点(即 R、G、B 值都接近最大值)对应于场景中的白色或镜面反射区域,这些区域的颜色应被校正为纯白。
3.2.1 算法原理与数学表达
算法首先在图像中寻找“完美反射点”。最简单的实现是分别找出每个颜色通道的最大值:
R_max = max(max(I_R))
G_max = max(max(I_G))
B_max = max(max(I_B))
然后,以这些最大值为基准计算增益系数,将最亮点映射为白色:
K_R = G_max / R_max
K_B = G_max / B_max
与灰度世界类似,将增益应用于原始图像即可完成校正。更稳健的实现会寻找满足 \( R > T_R, G > T_G, B > T_B \) 的像素集合,并取其平均值作为参考白点,其中 \( T \) 为预设阈值。
3.2.2 算法对比与改进方向
| 对比维度 | 灰度世界假设 | 完美反射假设 |
|---|---|---|
| 基本假设 | 图像平均色为灰色 | 图像最亮点为白色 |
| 计算依据 | 全局像素均值 | 局部或全局像素最大值 |
| 对噪声敏感度 | 低(均值抗噪) | 高(最大值易受噪点影响) |
| 典型失效场景 | 大面积单色场景 | 无高光或高光区域非白色 |
| 计算复杂度 | 低 | 低 |
下图展示了完美反射假设在寻找白点时的空间分布概念:
3.3 色域映射法(Gamut Mapping)
色域映射法是一种基于统计学习的 AWB 算法,由 Forsyth 于 1990 年提出。其核心思想是:在特定光源下,图像中所有可能出现的颜色(色域)是有限的。通过将输入图像的色域与已知标准光源下的色域进行匹配,可以估计出当前场景的光源颜色。
3.3.1 算法原理与流程
色域映射法通常分为两个阶段:
- 离线训练阶段:在已知标准光源(如 D65、A 光源、D50)下,拍摄大量色卡或自然图像,统计并存储每种光源下的“规范色域”(Canonical Gamut)。
- 在线映射阶段:对于输入图像,提取其“图像色域”(Image Gamut),然后寻找一个映射矩阵,使得图像色域与某个规范色域最匹配。该映射矩阵即为光源估计结果。
下图展示了色域映射法的整体架构:
3.3.2 色域匹配的数学基础
色域匹配的核心是寻找一个对角映射矩阵 \( M = diag(r, g, b) \),使得映射后的图像色域 \( M \cdot G_{img} \) 完全包含在某个规范色域 \( G_{canon} \) 内。通常通过求解以下优化问题实现:
目标:最大化映射后色域与规范色域的交集
约束:映射矩阵 M 为对角阵,且元素为正
求解:通常使用凸包(Convex Hull)算法表示色域边界,
然后通过迭代或线性规划寻找最优 M
3.4 三种算法的工程适用性对比
| 评估指标 | 灰度世界 | 完美反射 | 色域映射 |
|---|---|---|---|
| 计算资源消耗 | 极低 | 低 | 高 |
| 对场景依赖性 | 高(依赖色彩丰富度) | 中(依赖高光存在) | 低(依赖训练数据) |
| 低光照性能 | 较差(噪声放大) | 差(噪声导致误检) | 较好(统计鲁棒) |
| 实现复杂度 | 简单 | 简单 | 复杂 |
| 典型应用场景 | 入门级摄像头、视频预览 | 高动态范围场景 | 高端相机、专业影像设备 |