ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

灰度世界白平衡算法

灰度世界白平衡算法 一、灰度世界法概述1.gray_world灰度世界法是白平衡中基础的算法2.白平衡的目的是消除光源色温的影响使得白色物体在图像中呈现白色3.灰度世界法的假设条件就是这张图像的色彩要足够丰富R,G,B三通道的平均值接近相等。也就是假设图像平均是灰色的R_meanG_meanB_mean;4.灰度世界法不要求图像存在白色像素而是要求全图R/G/B三通道均值相等,图像整体平均反射率为灰色的二、灰度世界法是如何对图像进行白平衡校正1.读取被校正图像2.对图像进行去噪--》下采样---》排除过曝/欠曝像素----》排除高饱和/低饱和区域3.计算R,G,B通道的均值4.计算目标灰度值5.计算各个通道增益6.输出图像注意如何让计算的各个通道增益值比较合理是非常重要的一件事情。mean_R, mean_G, mean_B R.mean(), G.mean(), B.mean()mean_gray (mean_R mean_G mean_B) / 3.0gain_R mean_gray / (mean_R eps)gain_G mean_gray / (mean_G eps)gain_B mean_gray / (mean_B eps)三、灰度世界法的缺陷1.单色场景容易失效蓝天、草地2、大色块、饱和度低、过曝欠曝容易失效3、混合光源下容易失效4、夜景容易失效四、改进灰度世界法1.将RGB域通过颜色空间转到YUV域或者Lab域进行处理2.结合鲁棒性统计比如中位数或者截尾均值以及区域选择排除高亮或者暗部或者低饱和度3.可以结合白点检测4.动态阈值5.理想情况的白平衡应该是在RAW来进行增益的计算五、白平衡增益校正参数计算方法1.平均法\bar gray (\bar R\bar G\bar B)/3使亮度保持平均。2.绿色法\bar gray \bar G使绿色通道不变因为人眼对绿色敏感且绿色通常包含最多亮度信息。3.亮度法\bar gray 0.299\bar R0.587\bar G0.114\bar B但校正后三通道均值等于该亮度可能不直观。4.最大法\bar gray max(\bar R,\bar G,\bar B)避免增益1不如果目标最大增益都≤1不会溢出但整体变暗。六、灰度世界法的总结1.不需要检测白点2.对色彩丰富包含大量中性色的场景效果比较好3.假设条件优点苛刻需要色彩丰富并且包含大量中性色彩的场景或者色彩平均灰度接近灰色4.混合光源下效果会比较差5.大面积高饱和色块会导致校正出问题适用场景1.适用室内彩色场景2.消费类相机快速白平衡3.作为比较粗糙的图像白平衡校正不适用场景1.大面积蓝天、草地、雪地2.单色或低色彩丰富度场景3.夜景、混合光源4.对颜色准确性要求极高的场景七、灰度世界法的本质1.假设的是场景的平均反射率接近灰色ˉ​2.一切画面的平均反射率接近灰色的场景是适合适用灰度世界法的3.灰度世界法不是要求画面色彩丰富而是色彩丰富的画面更加接近场景的平均放射率接近灰色这个条件4.画面颜色丰富也就是说没有某一种颜色长期作为绝对主导地位。八、灰度世界法的多融合策略算法1.核心思路是引入额外的信息或者约束来弥补灰度世界假设的不足2.将灰度世界法 白点检测结合3.将灰度世界法 完美反射法结合4.图像特征自适应选择和融合算法5.自适应控制流程首先判断图像是否有明显白色区域是否色彩足够丰富来判断是否采用灰度世界法是否合适如果灰度世界法不合适就转而采用基于白点检测的完美反射法6.算法会同时计算完美反射法得到的白点平均色度Cw_ave和灰度世界法得到的参考点平均色度Ch_ave并以两者之比作为调整因子K对两种算法的结果进行加权融合从而实现更平滑的过渡7.灰度世界法和色温估计法融合算法灰度世界法完美反射色温估计融合算法灰度世界法完美反射色温估计色温曲线法融合算法《一种CMOS图像传感器信号处理自动白平衡算法》​九、灰度世界法注意事项1.灰度世界法必须在线性域进行处理可以在RAW域线性RGB空间域线性YUV域来处理不要在SRGB域或者Gamma之后处理。2.尽量不要使用全局均值鲁棒性太差全图均值容易被异常像素带偏所以要做些像素的过滤和排除比如过曝像素欠曝相机高饱和度像素插值伪影紫边污染等。如果镜头有暗角区域这个最好做阴影校正。3.均值统计鲁棒性灰度世界法默认用算术平均但均值对极端值非常敏感。大面积单色、高光、死黑都会严重拉偏均值。更鲁棒的选择中位数截尾均值去掉最高/最低若干百分比再平均低饱和像素均值M 估计等鲁棒统计4.时域稳定性
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进