当你使用手机拍照的时候,有没有发现这种现象,在选自动白平衡的时候,图像整体色调是正常的,但是手动勾选其他光源的时候,会出现不同程度的偏色。为什么呢?
手动选择的光源色温都有很大差异,偏色就是实际环境色温与手动选择计算色温不匹配导致的。为什么选择自动白平衡的图片是正常的,它是怎么做到的呢?下面我们就来详细讲一讲平台关于白平衡色温相关的调试方法。
AWB是自动白平衡Automatic White Balance的英文缩写,图像3A算法(AWB、AE、AF)中的一个,它决定着手机拍摄图片效果的整体色调。
让相机在不同的光源环境下,都能将图片补偿成正常的颜色。简单的理解,自动白平衡就是通过算法使图像的白色与人眼看到的白色一致。
第一步-定参考
第二步-找参考
参考其实也有讲究。
如下图片,如何找到正确的色温呢?
首先我们利用工具统计出图像的判定点分布情况:
可以看到,这些点的分布很广,色温从高到低都有分布。那么如何通过调试,准确地判断出当前实际的环境色温,来做正确的白平衡计算呢?
灰区
如上图灰色部分,灰区是参考点附近范围内的有限区域,当判定点在灰区外时,给的计算权重很低,这样可以减少误差。
灰区的大小可以通过下面的参数来调节。
白平衡调整选取灰块的区域可以开出接口调节。如下图所示:
其中Outlier Distance Day、F、A、H分别控制Daylight CWF、A、H参考点右边的灰区宽度,取值范围6-32,数值越大灰区越宽。Special数组中前三个参数分别控制Daylight 参考点左边/上面以及A/H左边的灰区宽度。我们通过调节参数来看一下灰区的变化。
权重
权重主要调节模块是 Weight Vector,它是不同曝光指数范围、不同色温分区对应的权重向量。
认真的同学一定会问曝光指数是什么?曝光指数:Exposure Index可以理解为相机拍照时曝光时间和增益大小的标志位,从0开始。如下如图Index = 1对应的曝光时间是264,增益是1.031倍。一般环境亮度越高,需要的曝光时间短,增益小,Index 越小。
那色温分区又是什么呢?顾名思义,色温分区就是将不同色温进行区域划分,看下面的图你就懂啦。
懂了曝光指数范围、色温分区,我们选取Weight Vector中的一段来学习一下。
如下图第一行215,表示Index在215之后参数生效。
从AWB_DAY_D75开始到AWB_H,每个参数都是和上图从上到下的分区对应的,增加参数的数值,就会加大分区中判定点的判定权重,使最终判定点向该分区靠近
我们来看一个调试案例,下图左边是改前的效果,此时整体偏黄。
我们将图片拖入工具中,可以读出图片的3A信息,判定色温是4543,也就是下面左图中的五角星。这是商场的广告牌,一般商场中的灯光都偏黄,色温在4300以下,这张图片色温判高了,导致的Red Gain偏大和Blue Gain偏小,所以图片偏黄。在这种情况下,我们就可以加大A光分区的权重,使最终判定的色温往A光偏移。修改后,从3A信息上看,灰点下移,判定色温降低了,从效果上看图片也没有那么暗黄。
再来看一个案例:
此案例中,H光权重过高,使色温拉低到H光,整体偏冷。修改权重,加大A光的权重,可以使判定点向A光靠近,使整体色调加重
灰区和权重主要是为了减少色温判定失误,例如黄色的背景、白色的灯光、混光环境都很容易使色温误判,导致严重的偏色,优秀的权重表可以避免大多数此类问题。修改任一参数都会影响当前曝光指数下的所有场景,所以如果修改了参数,就需要对其他场景也进行测试,避免影响其他场景的效果。
灰区和权重不是万能的,有些极端的场景:纯色背景、绿植场景、低色温逆光场景等,通过灰区和权重是无法改善的。例如下方左图,绿植明显偏青,怎样使绿植更加鲜绿呢?这时就需要通过其他策略来调试了