基于白平衡的单个闪光灯补偿方法、装置、设备和介质转让专利

申请号 : CN201911085795.X

文献号 : CN110944116B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杨培杉池晓芳

申请人 : 瑞芯微电子股份有限公司

摘要 :

本发明提供一种基于白平衡的单个闪光灯补偿方法、装置、设备和介质,方法包括:S1、标定闪光灯下白平衡增益;S2、打开相机,获取环境光下的白平衡增益及环境亮度;S3、打开预闪光灯,计算并应用初始的白平衡增益;S4、曝光较稳定时,计算并应用预闪过程中的白平衡增益;S5、曝光收敛,聚焦收敛,白平衡收敛;S6、关闭预闪光灯,打开主闪光灯,根据公式(3)计算并应用主闪开后的的白平衡增益后结束。本发明解决了单颗白光LED灯拍出来的图片色调偏冷的问题,同时还能实现闪光灯阶段快速白平衡收敛的目的。

权利要求 :

1.一种基于白平衡的单个闪光灯补偿方法,其特征在于:包括:S1、开始,标定闪光灯下白平衡增益WbGainPreFlashing;

S2、打开相机,获取环境光下的白平衡增益WbGainOffFlash及环境亮度LvValueOffFlash;

S3、打开预闪光灯,根据公式(1)计算并应用初始的白平衡增益AwbGainStart;

AwbGainStart=(1‑PreWeight1)×WbGainOffFlash+PreWeight1×WbGainPreFlashing    (1);

式中PreWeight1为预闪光灯权重,由预闪前环境亮度LvValueOffFlash与LvValueOffFlash‑PreWeight1分段直线得到:建立预闪前环境亮度LvValueOffFlash与预闪光灯权重PreWeight1的坐标系LvValueOffFlash‑PreWeight1,预设两组预闪前环境亮度值TH1和TH2,当预闪前环境亮度LvValueOffFlash小于等于TH1时,闪光灯占主导,初始的白平衡增益AwbGainStart与标定的闪光灯白平衡增益WbGainPreFlashing接近,PreWeight1为1;当预闪前环境亮度LvValueOffFlash大于等于TH2时,打开闪光灯,环境光占主导,则初始的白平衡增益AwbGainStart与标定的闪光灯白平衡增益WbGainOffFlash接近,PreWeight1为0;当预闪前环境亮度LvValueOffFlash由TH1增大到TH2时,PreWeight1由1线性减小为0;

S4、曝光较稳定时,根据公式(2)计算并应用预闪过程中的白平衡增益AwbGainP;

AwbGainP=(1‑PreWeight2)*AwbGainAlg+PreWeight2*WbGainPreFlashing      (2);

其中,AwbGainAlg为自动白平衡算法算出来的白平衡增益;PreWeight2为预闪光灯权重,根据闪关灯打开前后的环境亮度比LvValRatio与LvValRatio‑PreWeight2分段直线得到:建立环境亮度比LvValRatio与预闪光灯权重PreWeight2的坐标系LvValRatio‑PreWeight2,预设两组环境亮度比TH3和TH4,TH3小于TH4;当闪关灯亮度比较小时,环境亮度比LvValRatio小于等于TH3,环境光占主导,预闪过程的白平衡增益AwbGainP与自动白平衡算法算出来的白平衡增益AwbGainAlg接近,PreWeight2为0;当闪关灯亮度比较大时,环境亮度比LvValRatio大于等于TH4,闪光灯占主导,预闪过程的白平衡增益AwbGainP与标定的闪光灯白平衡增益WbGainPreFlashing接近,PreWeight2为1;环境亮度比LvValRatio在TH3和TH4之间,PreWeight2由0到1线性增大;

S5、曝光收敛,聚焦收敛,白平衡收敛;

S6、关闭预闪光灯,打开主闪光灯,根据公式(3)计算并应用主闪开后的白平衡增益AwbGainM,结束:

AwbGainM=(1‑PreWeight3)*AwbGainP+PreWeight3*WbGainMainFlashing       (3);

其中,WbGainMainFlashing为标定的主闪打开时的白平衡增益,PreWeight3为主闪光灯权重,根据主闪打开和预闪打开时的环境亮度比LvValRatio3与LvValRatio3‑PreWeight3分段直线得到:建立环境亮度比LvValRatio3与闪光灯权重PreWeight3的坐标系LvValRatio3‑PreWeight3,预设两组环境亮度比值TH5和TH6,TH5小于TH6,当主闪打开时,主闪时闪光灯会比预闪时的闪光灯亮度高,导致闪光灯占比发生变化,当所述环境亮度比LvValRatio3小于TH5时,PreWeight3为0,当环境亮度比LvValRatio3为TH6时,PreWeight3为1;当所述环境亮度比LvValRatio3由TH5增大到TH6时,PreWeight3由0线性增大为1。

2.根据权利要求1所述的基于白平衡的单个闪光灯补偿方法,其特征在于:所述S1中,WbGainPreFlashing的标定方法是:在全黑的环境中,打开闪光灯,在相机距离灰卡或其他中性场景20~30cm,获取raw图;

基于Raw图统计红色,绿色,蓝色通道的累加和,蓝色通道与绿色通道的比值为绿色通道的白平衡校正增益,红色通道与绿色通道的比值为红色通道的白平衡校正增益。

3.根据权利要求1所述的基于白平衡的单个闪光灯补偿方法,其特征在于:所述S3中,所述预闪前环境亮度LvValueOffFlash为:LvValue=MeanLuma/Exposure                            (4);

其中,MeanLuma为图像平均亮度值,Exposure为曝光时间和曝光增益的乘积。

4.根据权利要求1所述的基于白平衡的单个闪光灯补偿方法,其特征在于:所述S4中,所述闪关灯打开前后的环境亮度比LvValRatio为:LvValRatio=LvValuePreFlshing/LvValueOffFlsh                     (5);

其中LvValueOffFlash是闪光灯关闭时的图像曝光稳定后计算的亮度,若设定一帧以内所有图像isp统计出来的亮度值MeanValue的方差小于设定的阈值,则认为曝光较稳定。

5.一种基于白平衡的单个闪光灯补偿装置,其特征在于:包括:标定模块,用于标定闪光灯下白平衡增益WbGainPreFlashing;

获取模块,在打开相机时,获取环境光下的白平衡增益WbGainOffFlash及环境亮度LvValueOffFlash;

第一计算模块,在打开预闪光灯时,根据公式(1)计算并应用初始的白平衡增益AwbGainStart;

AwbGainStart=(1‑PreWeight1)*AwbGainOffFlash+PreWeight1*Wb GainPreFlashing   (1);

式中PreWeight1为预闪光灯权重由预闪前环境亮度LvValueOffFlash,由预闪前环境亮度LvValueOffFlash与LvValue‑PreWeight1分段直线得到:建立预闪前环境亮度LvValueOffFlash与预闪光灯权重PreWeight1的坐标系LvValues‑PreWeight1,预设两组预闪前环境亮度值TH1和TH2,当预闪前环境亮度LvValueOffFlash小于等于TH1时,闪光灯占主导,初始的白平衡增益AwbGainStart与标定的闪光灯白平衡增益WbGainPreFlashing接近,PreWeight1为1;当预闪前环境亮度LvValueOffFlash大于等于TH2时,打开闪光灯,环境光占主导,则初始的白平衡增益AwbGainStart与标定的闪光灯白平衡增益WbGainOffFlash接近,PreWeight1为0;当预闪前环境亮度LvValueOffFlash由TH1增大到TH2时,PreWeight1由1线性减小为0;

第二计算模块,在曝光较稳定时,根据公式(2)计算并应用预闪过程中的白平衡增益AwbGainP;

AwbGainP=(1‑PreWeight2)*AwbGainAlg+PreWeight2*WbGainPreFlashing      (2);

其中,AwbGainAlg为自动白平衡算法算出来的白平衡增益;

PreWeight2为预闪光灯权重,根据闪关灯打开前后的环境亮度比LvValRatio与LvValRatio‑PreWeight2分段直线得到:建立环境亮度比LvValRatio与预闪光灯权重PreWeight2的坐标系LvValRatio‑PreWeight2,预设两组环境亮度比TH3和TH4,TH3小于TH4;

当闪关灯亮度比较小时,环境亮度比LvValRatio小于等于TH3,环境光占主导,预闪过程的白平衡增益AwbGainP与自动白平衡算法算出来的白平衡增益AwbGainAlg接近,PreWeight2为

0;当闪关灯亮度比较大时,环境亮度比LvValRatio大于等于TH4,闪光灯占主导,预闪过程的白平衡增益AwbGainP与标定的闪光灯白平衡增益WbGainPreFlashing接近,PreWeight2为1;

环境亮度比LvValRatio在TH3和TH4之间,PreWeight2由0到1线性增大;

收敛模块,用于曝光收敛,聚焦收敛和白平衡收敛;

第三计算模块,在关闭预闪光灯,打开主闪光灯时,根据公式(3)计算并应用主闪开后的白平衡增益AwbGainM,结束:

AwbGainM=(1‑PreWeight3)*AwbGainP+PreWeight3*WbGainMainFlashing       (3);

其中,PreWeight3为主闪光灯权重,根据主闪打开和预闪打开时的环境亮度比LvValRatio3与LvValRatio3‑PreWeight3分段直线得到:建立环境亮度比LvValRatio3与闪光灯权重PreWeight3的坐标系LvValRatio3‑PreWeight3,预设两组环境亮度比值TH5和TH6,TH5小于TH6,当主闪打开时,主闪时闪光灯会比预闪时的闪光灯亮度高,导致闪光灯占比发生变化,当所述环境亮度比LvValRatio3小于TH5时,PreWeight3为0,当环境亮度比LvValRatio3为TH6时,PreWeight3为1;当所述环境亮度比LvValRatio3由TH5增大到TH6时,PreWeight3由0线性增大为1。

6.根据权利要求5所述的基于白平衡的单个闪光灯补偿装置,其特征在于:所述标定模块标定WbGainPreFlashing的过程是:在全黑的环境中,打开闪光灯,在相机距离灰卡或其他中性场景20~30cm左右,获取raw图;

基于Raw图统计红色,绿色,蓝色通道的累加和,蓝色通道与绿色通道的比值为绿色通道的白平衡校正增益,红色通道与绿色通道的比值为红色通道的白平衡校正增益。

7.根据权利要求5所述的基于白平衡的单个闪光灯补偿装置,其特征在于:所述预闪前环境亮度LvValueOffFlash为:

LvValue=MeanLuma/Exposure                           (4);

其中,MeanLuma为图像平均亮度值,Exposure为曝光时间和曝光增益的乘积。

8.根据权利要求5所述的基于白平衡的单个闪光灯补偿装置,其特征在于:所述闪关灯打开前后的环境亮度比LvValRatio为:

LvValRatio=LvValuePreFlshing/LvValueOffFlsh                    (5);

其中LvValueOffFlash是闪光灯关闭时的图像曝光稳定后计算的亮度,若设定一帧以内所有图像isp统计出来的亮度值MeanValue的方差小于设定的阈值,则认为曝光较稳定。

9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至4任一项所述的方法。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至4任一项所述的方法。

说明书 :

基于白平衡的单个闪光灯补偿方法、装置、设备和介质

技术领域

[0001] 本发明涉及计算机技术领域,特别涉及一种基于白平衡的单个闪光灯补偿方法、装置、设备和介质。

背景技术

[0002] 白平衡是电视摄像领域一个非常重要的概念,通过它可以解决色彩还原和色调处理的一系列问题。白平衡是随着电子影像再现色彩真实而产生的,在专业摄像领域白平衡
应用的较早,家用电子产品(家用摄像机、数码照相机)中也广泛地使用。它是实现摄像机图
像能精确反映被摄物的色彩状况,有手动白平衡和自动白平衡等方式。许多人在使用数码
摄像机拍摄的时候都会遇到这样的问题:在日光灯的房间里拍摄的影像会显得发绿,在室
内钨丝灯光下拍摄出来的景物就会偏黄,而在日光阴影处拍摄到的照片则莫名其妙地偏
蓝,其原因就在于"白平衡"的设置上。
[0003] 而为了弥补在黑暗环境下拍出的照片亮度不足的问题,手机摄像头会增加闪光灯。LED灯有低功耗,体积小,频闪速度快,光品质高等优点被用于做闪光灯。出于成本等因
素的考虑,目前智能手机上单颗白光LED闪光灯还是占主流。该白光是采用蓝色LED+荧光粉
来产生的,这会导致光谱中蓝色分量较多,红色和绿色分量较少,拍出来的图片人眼感知色
调偏冷。
[0004] 因此为了能在单颗白光LED闪光灯和条件下仍能拍出暖色调的图片,可以基于白平衡的方式来实现。

发明内容

[0005] 本发明要解决的技术问题,在于提供一种基于白平衡的单个闪光灯补偿方法、装置、设备和介质,以解决单颗白光LED灯拍出来的图片色调偏冷的问题,同时还能实现闪光
灯阶段快速白平衡收敛的目的。
[0006] 第一方面,本发明提供了一种基于白平衡的单个闪光灯补偿方法,包括下述步骤:
[0007] S1、开始,标定闪光灯下白平衡增益WbGainPreFlashing;
[0008] S2、打开相机,获取环境光下的白平衡增益WbGainOffFlash及环境亮度LvValueOffFlash;
[0009] S3、打开预闪光灯,根据公式(1)计算并应用初始的白平衡增益AwbGainStart;
[0010] AwbGainStart=(1‑PreWeight1)×WbGainOffFlash+PreWeight1×WbGainPreFlashing (1);
[0011] 式中PreWeight1为预闪光灯权重,由预闪前环境亮度LvValueOffFlash与LvValueOffFlash‑PreWeight1分段直线得到:建立预闪前环境亮度LvValueOffFlash与预闪光灯
权重PreWeight1的坐标系LvValueOffFlash‑PreWeight1,预设两组预闪前环境亮度值TH1和
TH2,当预闪前环境亮度LvValueOffFlash小于等于TH1时,闪光灯占主导,初始的白平衡增益
AwbGainStart与标定的闪光灯白平衡增益WbGainPreFlashing接近,PreWeight1为1;当预闪前环
境亮度LvValueOffFlash大于等于TH2时,打开闪光灯,环境光占主导,则初始的白平衡增益
AwbGainStart与标定的闪光灯白平衡增益WbGainOffFlash接近,PreWeight1为0;当预闪前环境
亮度LvValueOffFlash由TH1增大到TH2时,PreWeight1由1线性减小为0;
[0012] S4、曝光较稳定时,根据公式(2)计算并应用预闪过程中的白平衡增益AwbGainP;
[0013] AwbGainP=(1‑PreWeight2)*AwbGainAlg+PreWeight2*WbGainPreFlashing    (2);
[0014] 其中,AwbGainAlg为自动白平衡算法算出来的白平衡增益;PreWeight2为预闪光灯权重,根据闪关灯打开前后的环境亮度比LvValRatio与LvValRatio‑PreWeight2分段直线
得到:建立环境亮度比LvValRatio与预闪光灯权重PreWeight2的坐标系LvValRatio‑
PreWeight2,预设两组环境亮度比TH3和TH4,TH3小于TH4;当闪关灯亮度比较小时,环境亮
度比LvValRatio小于等于TH3,环境光占主导,预闪过程的白平衡增益AwbGainP与自动白平
衡算法算出来的白平衡增益AwbGainAlg接近,PreWeight2为0;当闪关灯亮度比较大时,环境
亮度比LvValRatio大于等于TH4,闪光灯占主导,预闪过程的白平衡增益AwbGainP与标定的
闪光灯白平衡增益WbGainPreFlashing接近,PreWeight2为1;环境亮度比LvValRatio在TH3和
TH4之间,PreWeight2由0到1线性增大;
[0015] PreWeight2为预闪光灯权重,根据闪关灯打开前后的环境亮度比LvValRatio与LvValRatio‑PreWeight2分段直线得到;
[0016] S5、曝光收敛,聚焦收敛,白平衡收敛;
[0017] S6、关闭预闪光灯,打开主闪光灯,根据公式(3)计算并应用主闪开后的白平衡增益AwbGainM,结束:
[0018] AwbGainM=(1‑PreWeight3)*AwbGainP+PreWeight3*WbGainMainFlashing    (3);
[0019] 其中,WbGainMainFlashing为标定的主闪打开时的白平衡增益,PreWeight3为主闪光灯权重,根据主闪打开和预闪打开时的环境亮度比LvValRatio3与LvValRatio3‑PreWeight3
分段直线得到:建立环境亮度比LvValRatio3与闪光灯权重PreWeight3的坐标系
LvValRatio3‑PreWeight3,预设两组环境亮度比值TH5和TH6,TH5小于TH6,当主闪打开时,主
闪时闪光灯会比预闪时的闪光灯亮度高,导致闪光灯占比发生变化,当所述环境亮度比
LvValRatio3小于TH5时,PreWeight3为0,当环境亮度比LvValRatio3为TH6时,PreWeight3为
1;当所述环境亮度比LvValRatio3由TH5增大到TH6时,PreWeight3由0线性增大为1。
[0020] 第二方面,本发明提供了一种基于白平衡的单个闪光灯补偿装置,其特征在于:包括:
[0021] 标定模块,用于标定闪光灯下白平衡增益WbGainPreFlashing;
[0022] 获取模块,在打开相机时,获取环境光下的白平衡增益WbGainOffFlash及环境亮度LvValueOffFlash;
[0023] 第一计算模块,在打开预闪光灯时,根据公式(1)计算并应用初始的白平衡增益AwbGainStart;
[0024] AwbGainStart=(1‑PreWeight1)×WbGainOffFlash+PreWeight1×WbGainPreFlashing  (1);
[0025] 式中PreWeight1为预闪光灯权重,由预闪前环境亮度LvValueOffFlash与LvValueOffFlash‑PreWeight1分段直线得到:建立预闪前环境亮度LvValueOffFlash与预闪光灯
权重PreWeight1的坐标系LvValueOffFlash‑PreWeight1,预设两组预闪前环境亮度值TH1和
TH2,当预闪前环境亮度LvValueOffFlash小于等于TH1时,闪光灯占主导,初始的白平衡增益
AwbGainStart与标定的闪光灯白平衡增益WbGainPreFlashing接近,PreWeight1为1;当预闪前环
境亮度LvValueOffFlash大于等于TH2时,打开闪光灯,环境光占主导,则初始的白平衡增益
AwbGainStart与标定的闪光灯白平衡增益WbGainOffFlash接近,PreWeight1为0;当预闪前环境
亮度LvValueOffFlash由TH1增大到TH2时,PreWeight1由1线性减小为0;
[0026] 第二计算模块,在曝光较稳定时,根据公式(2)计算并应用预闪过程中的白平衡增益AwbGainP;
[0027] AwbGainP=(1‑PreWeight2)*AwbGainAlg+PreWeight2*WbGainPreFlashing     (2);
[0028] 其中,AwbGainAlg为自动白平衡算法算出来的白平衡增益;PreWeight2为预闪光灯权重,根据闪关灯打开前后的环境亮度比LvValRatio与LvValRatio‑PreWeight2分段直线
得到:建立环境亮度比LvValRatio与预闪光灯权重PreWeight2的坐标系LvValRatio‑
PreWeight2,预设两组环境亮度比TH3和TH4,TH3小于TH4;当闪关灯亮度比较小时,环境亮
度比LvValRatio小于等于TH3,环境光占主导,预闪过程的白平衡增益AwbGainP与自动白平
衡算法算出来的白平衡增益AwbGainAlg接近,PreWeight2为0;当闪关灯亮度比较大时,环境
亮度比LvValRatio大于等于TH4,闪光灯占主导,预闪过程的白平衡增益AwbGainP与标定的
闪光灯白平衡增益WbGainPreFlashing接近,PreWeight2为1;环境亮度比LvValRatio在TH3和
TH4之间,PreWeight2由0到1线性增大;
[0029] 收敛模块,用于曝光收敛,聚焦收敛和白平衡收敛;
[0030] 第三计算模块,在关闭预闪光灯,打开主闪光灯时,根据公式(3)计算并应用主闪开后的白平衡增益AwbGainM,结束:
[0031] AwbGainM=(1‑PreWeight3)*AwbGainP+PreWeight3*WbGainMainFlashing     (3);
[0032] 其中,WbGainMainFlashing为标定的主闪打开时的白平衡增益,PreWeight3为主闪光灯权重,根据主闪打开和预闪打开时的环境亮度比LvValRatio3与LvValRatio3‑PreWeight3
分段直线得到:建立环境亮度比LvValRatio3与闪光灯权重PreWeight3的坐标系
LvValRatio3‑PreWeight3,预设两组环境亮度比值TH5和TH6,TH5小于TH6,当主闪打开时,主
闪时闪光灯会比预闪时的闪光灯亮度高,导致闪光灯占比发生变化,当所述环境亮度比
LvValRatio3小于TH5时,PreWeight3为0,当环境亮度比LvValRatio3为TH6时,PreWeight3为
1;当所述环境亮度比LvValRatio3由TH5增大到TH6时,PreWeight3由0线性增大为1。
[0033] 第三方面,本发明提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所述的方法。
[0034] 第四方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述的方法。
[0035] 本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:本申请实施例提供的方法、装置、系统、设备和介质,采用根据闪光灯与环境灯占比来控制成
像时应用的白平衡增益,利用白平衡参数和补光灯色温信息(本发明技术方案中计算的所
有的Wbgain参数都是色温信息),预算出当前场景色温(AwbGainM),从而指导白平衡工作,
利用单个补光灯实现前后背景不同色温的补偿控制,从而解决单颗白光LED灯拍出来的图
片色调偏冷的问题和实现闪光灯阶段快速白平衡收敛(计算出AwbGain start就是用来快
速收敛白平衡)的目的。
[0036] 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够
更明显易懂,以下特举本发明的具体实施方式。

附图说明

[0037] 下面参照附图结合实施例对本发明作进一步的说明。
[0038] 图1为本发明实施例一中方法的流程图;
[0039] 图2为本发明中预闪前环境亮度LvValueOffFlash与LvValue‑PreWeight1分段直线示意图。
[0040] 图3为本发明中闪关灯打开前后的环境亮度比LvValRatio与LvValRatio‑PreWeight2的分段直线示意图。
[0041] 图4为本发明中主闪打开和预闪打开时的环境亮度比LvValRatio3与LvValRatio3‑PreWeight3分段直线示意图。
[0042] 图5为本发明实施例二中装置的结构示意图;
[0043] 图6为本发明实施例三中电子设备的结构示意图;
[0044] 图7为本发明实施例四中介质的结构示意图。

具体实施方式

[0045] 本申请实施例通过提供一种基于白平衡的单个闪光灯补偿方法、装置、设备及介质,采用根据闪光灯与环境灯占比来控制成像时应用的白平衡增益,从而解决单颗白光LED
灯拍出来的图片色调偏冷的问题和实现闪光灯阶段快速白平衡收敛的目的。
[0046] 由于主闪时闪光灯的亮度比较高,但硬件限制高亮度可以持续的时间有限。预闪的闪光灯亮度稍低,可以持续发光的时间长。因此在预闪的阶段需完成自动聚焦、自动曝光
控制,和自动白平衡。在主闪的时候换算成主闪所需要的自动聚焦、自动曝光控制,和自动
白平衡信息然后进行成像。因此本申请实施例中的技术方案,总体思路如下:利用白平衡参
数和补光灯色温信息,预算出当前场景色温,从而指导白平衡工作,利用单个补光灯实现前
后背景不同色温的补偿控制,调整图像的蓝色掉往暖的方向偏,通过阈值可以调整偏的幅
度,另外可同时手动修改闪光灯白平衡增益进一步改变成像的冷暖色调。同时基于亮度信
息计算闪光灯占环境光的比例可辅助自动白平衡算法快速收敛。
[0047] 实施例一
[0048] 本实施例提供一种基于白平衡的单个闪光灯补偿方法,如图2所示,包括:
[0049] S1、开始,标定闪光灯下白平衡增益WbGainPreFlashing;标定方法是:
[0050] 在全黑的环境中,打开闪光灯,在相机距离灰卡或其他中性场景20~30cm,获取raw图;
[0051] 基于Raw图统计红色,绿色,蓝色通道的累加和,蓝色通道与绿色通道的比值为绿色通道的白平衡校正增益,红色通道与绿色通道的比值为红色通道的白平衡校正增益。则
绿色通道的白平衡校正增益和红色通道的白平衡校正增益即为闪光灯下白平衡增益
WbGainPreFlashing。
[0052] S2、打开相机,获取环境光下的白平衡增益WbGainOffFlash及环境亮度LvValueOffFlash;
[0053] S3、打开预闪光灯,根据公式(1)计算并应用初始的白平衡增益AwbGainStart;
[0054] AwbGainStart=(1‑PreWeight1)×WbGainOffFlash+PreWeight1×WbGainPreFlashing  (1);
[0055] 式中PreWeight1为预闪光灯权重,由预闪前环境亮度LvValueOffFlash与LvValueOffFlash‑PreWeight1分段直线得到:建立预闪前环境亮度LvValueOffFlash与预闪光灯
权重PreWeight1的坐标系LvValueOffFlash‑PreWeight1,预设两组预闪前环境亮度值TH1和
TH2,当预闪前环境亮度LvValueOffFlash小于等于TH1时,闪光灯占主导,初始的白平衡增益
AwbGainStart与标定的闪光灯白平衡增益WbGainPreFlashing接近,PreWeight1为1;当预闪前环
境亮度LvValueOffFlash大于等于TH2时,打开闪光灯,环境光占主导,则初始的白平衡增益
AwbGainStart与标定的闪光灯白平衡增益WbGainOffFlash接近,PreWeight1为0;当预闪前环境
亮度LvValueOffFlash由TH1增大到TH2时,PreWeight1由1线性减小为0;该分段直线如图2所
示。
[0056] 由图2可以看出,当环境亮度很暗时,闪光灯打开时,闪光灯将占主导,初始的白平衡增益AwbGainStart与标定的闪光灯白平衡增益WbGainPreFlashing接近。当环境亮度已经很亮
时,闪光灯打开时,环境光仍占主导,AwbGainStart与WbGainOffFlash接近。
[0057] 其中,所述预闪前环境亮度LvValueOffFlash的计算公式为:
[0058] LvValue=MeanLuma/Exposure                 (4);
[0059] 其中,MeanLuma为图像平均亮度值,Exposure为曝光时间和曝光增益的乘积。图2中,TH1和TH2为预设的两组环境亮度值。MeanLuma除了和环境亮度有关,还和自动曝光模块
设置的Exposure信息有关,所以用MeanLuma和Exposure的比值反映环境亮度。
[0060] S4、曝光较稳定时,根据公式(2)计算并应用预闪过程中的白平衡增益AwbGainP;
[0061] AwbGainP=(1‑PreWeight2)*AwbGainAlg+PreWeight2*WbGainPreFlashing    (2);
[0062] 式(2)中,AwbGainAlg为自动白平衡算法算出来的白平衡增益;PreWeight2为预闪光灯权重,根据闪关灯打开前后的环境亮度比LvValRatio与LvValRatio‑PreWeight2分段
直线得到:建立环境亮度比LvValRatio与预闪光灯权重PreWeight2的坐标系LvValRatio‑
PreWeight2,预设两组环境亮度比TH3和TH4,TH3小于TH4;当闪关灯亮度比较小时,环境亮
度比LvValRatio小于等于TH3,环境光占主导,预闪过程的白平衡增益AwbGainP与自动白平
衡算法算出来的白平衡增益AwbGainAlg接近,PreWeight2为0;当闪关灯亮度比较大时,环境
亮度比LvValRatio大于等于TH4,闪光灯占主导,预闪过程的白平衡增益AwbGainP与标定的
闪光灯白平衡增益WbGainPreFlashing接近,PreWeight2为1;环境亮度比LvValRatio在TH3和
TH4之间,PreWeight2由0到1线性增大;该分段直线如图3所示。
[0063] 其中,所述闪关灯打开前后的环境亮度比LvValRatio的计算公式为:
[0064] LvValRatio=LvValuePreFlshing/LvValueOffFlsh        (5);
[0065] 其中LvValueOffFlash是图像曝光稳定后计算的亮度,若设定帧(通常设定10帧即可满足要求)内MeanValue的方差小于设定的阈值(具体数值跟所选是图像传感器有关系)则
认为曝光较稳定。图3中的TH3和TH4为预设的两组亮度比值。当亮度比较小时,环境光仍占
主导,AwbGainP与AwbGainAlg接近。当亮度比较大时,说明闪光灯占主导,预闪过程的白平衡
增益AwbGainP与标定的闪光灯白平衡增益WbGainPreFlashing接近。
[0066] S5、曝光收敛,聚焦收敛,白平衡收敛。
[0067] S6、关闭预闪光灯,打开主闪光灯,根据公式(3)计算并应用主闪开后的白平衡增益AwbGainM:
[0068] AwbGainM=(1‑PreWeight3)*AwbGainP+PreWeight3*WbGainMainFlashing    (3);
[0069] 式(3)中,PreWeight3为主闪光灯权重,根据主闪打开和预闪打开时的环境亮度比LvValRatio3与LvValRatio3‑PreWeight3分段直线得到:建立环境亮度比LvValRatio3与闪
光灯权重PreWeight3的坐标系LvValRatio3‑PreWeight3,预设两组环境亮度比值TH5和TH6,
TH5小于TH6,当主闪打开时,主闪时闪光灯会比预闪时的闪光灯亮度高,导致闪光灯占比发
生变化,当所述环境亮度比LvValRatio3小于TH5时,PreWeight3为0,当环境亮度比
LvValRatio3为TH6时,PreWeight3为1;当所述环境亮度比LvValRatio3由TH5增大到TH6时,
PreWeight3由0线性增大为1。该分段直线如图4所示,图4中的TH5和TH6为预设的两组亮度
比值,WbGainMainFlashing为标定的主闪打开时的白平衡增益,通过实验发现同一颗LED亮度不
同时,色温变化很小,所以WbGainMainFlashing可以用WbGainPreFlashing取代。但是一般主闪时闪
光灯会比预闪时的闪光灯亮度高,导致闪光灯占比发生变化,所以主闪阶段需要根据预闪
的结果进行换算。
[0070] S7、结束。由于LED闪关灯光谱中蓝色分量较多,红色和绿色分量较少,所以标定的闪光灯白平衡增益中红色通道的增益比较多,蓝色通道的增益比较少,采用上述S3和S4中
的加权方法可以调整图像的冷色调往暖色调的方向偏转,通过阈值可以调整偏转的幅度,
该方案可以有效的指导单颗LED闪光灯电子摄像设备的白平衡色调调整,使其更符合人眼
感知。同时基于亮度信息计算闪光灯占环境光的比例(闪关灯打开前后的环境亮度比
LvValRatio)可辅助自动白平衡算法快速收敛。
[0071] 基于同一发明构思,本申请还提供了与实施例一中的方法对应的装置,详见实施例二。
[0072] 实施例二
[0073] 在本实施例中提供了一种基于白平衡的单个闪光灯补偿装置,如图5所示,包括:
[0074] 标定模块,用于标定闪光灯下白平衡增益WbGainPreFlashing;
[0075] 获取模块,在打开相机时,获取环境光下的白平衡增益WbGainOffFlash及环境亮度LvValueOffFlash;
[0076] 第一计算模块,在打开预闪光灯时,根据公式(1)计算并应用初始的白平衡增益AwbGainStart;
[0077] AwbGainStart=(1‑PreWeight1)×WbGainOffFlash+PreWeight1×WbGainPreFlashing  (1);
[0078] 式中PreWeight1为预闪光灯权重,由预闪前环境亮度LvValueOffFlash与LvValueOffFlash‑PreWeight1分段直线得到:建立预闪前环境亮度LvValueOffFlash与预闪光灯
权重PreWeight1的坐标系LvValueOffFlash‑PreWeight1,预设两组预闪前环境亮度值TH1和
TH2,当预闪前环境亮度LvValueOffFlash小于等于TH1时,闪光灯占主导,初始的白平衡增益
AwbGainStart与标定的闪光灯白平衡增益WbGainPreFlashing接近,PreWeight1为1;当预闪前环
境亮度LvValueOffFlash大于等于TH2时,打开闪光灯,环境光占主导,则初始的白平衡增益
AwbGainStart与标定的闪光灯白平衡增益WbGainOffFlash接近,PreWeight1为0;当预闪前环境
亮度LvValueOffFlash由TH1增大到TH2时,PreWeight1由1线性减小为0;该分段直线如图2所
示;
[0079] 第二计算模块,在曝光较稳定时,根据公式(2)计算并应用预闪过程中的白平衡增益AwbGainP;
[0080] AwbGainP=(1‑PreWeight2)*AwbGainAlg+PreWeight2*WbGainPreFlashing    (2);
[0081] 其中,AwbGainAlg为自动白平衡算法算出来的白平衡增益;PreWeight2为预闪光灯权重,根据闪关灯打开前后的环境亮度比LvValRatio与LvValRatio‑PreWeight2分段直线
得到:建立环境亮度比LvValRatio与预闪光灯权重PreWeight2的坐标系LvValRatio‑
PreWeight2,预设两组环境亮度比TH3和TH4,TH3小于TH4;当闪关灯亮度比较小时,环境亮
度比LvValRatio小于等于TH3,环境光占主导,预闪过程的白平衡增益AwbGainP与自动白平
衡算法算出来的白平衡增益AwbGainAlg接近,PreWeight2为0;当闪关灯亮度比较大时,环境
亮度比LvValRatio大于等于TH4,闪光灯占主导,预闪过程的白平衡增益AwbGainP与标定的
闪光灯白平衡增益WbGainPreFlashing接近,PreWeight2为1;环境亮度比LvValRatio在TH3和
TH4之间,PreWeight2由0到1线性增大;该分段直线如图3所示;
[0082] 收敛模块,用于曝光收敛,聚焦收敛和白平衡收敛;
[0083] 第三计算模块,在关闭预闪光灯,打开主闪光灯时,根据公式(3)计算并应用主闪开后的的白平衡增益AwbGainM,结束:
[0084] AwbGainM=(1‑PreWeight3)*AwbGainP+PreWeight3*WbGainMainFlashing     (3);
[0085] 其中,PreWeight3为主闪光灯权重,根据主闪打开和预闪打开时的环境亮度比LvValRatio3与LvValRatio3‑PreWeight3分段直线得到:建立环境亮度比LvValRatio3与闪
光灯权重PreWeight3的坐标系LvValRatio3‑PreWeight3,预设两组环境亮度比值TH5和TH6,
TH5小于TH6,当主闪打开时,主闪时闪光灯会比预闪时的闪光灯亮度高,导致闪光灯占比发
生变化,当所述环境亮度比LvValRatio3小于TH5时,PreWeight3为0,当环境亮度比
LvValRatio3为TH6时,PreWeight3为1;当所述环境亮度比LvValRatio3由TH5增大到TH6时,
PreWeight3由0线性增大为1。该分段直线如图4所示。
[0086] 其中,
[0087] 所述标定模块标定WbGainPreFlashing的过程是:
[0088] 在全黑的环境中,打开闪光灯,在相机距离灰卡或其他中性场景20~30cm,获取raw图;
[0089] 基于Raw图统计红色,绿色,蓝色通道的累加和,蓝色通道与绿色通道的比值为绿色通道的白平衡校正增益,红色通道与绿色通道的比值为红色通道的白平衡校正增益。则
绿色通道的白平衡校正增益和红色通道的白平衡校正增益即为闪光灯下白平衡增益
WbGainPreFlashing。
[0090] 所述预闪前环境亮度LvValueOffFlash为:
[0091] LvValue=MeanLuma/Exposure            (4);
[0092] 其中,MeanLuma为图像平均亮度值,Exposure为曝光时间和曝光增益的乘积。
[0093] 所述闪关灯打开前后的环境亮度比LvValRatio为:
[0094] LvValRatio=LvValuePreFlshing/LvValueOffFlsh          (5);
[0095] 其中LvValueOffFlash是图像曝光稳定后计算的亮度,若设定帧内MeanValue的方差小于设定的阈值则认为曝光较稳定。
[0096] 由于本发明实施例二所介绍的装置,为实施本发明实施例一的方法所采用的装置,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该装置的具体结构
及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的装置都属于本发明所欲
保护的范围。
[0097] 基于同一发明构思,本申请提供了实施例一对应的电子设备实施例,详见实施例三。
[0098] 实施例三
[0099] 本实施例提供了一种电子设备,如图6所示,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,可以实现实施例一中任
一实施方式。该电子设备还可包括摄像头和闪光灯,摄像头和闪光灯均与处理器连接。
[0100] 由于本实施例所介绍的电子设备为实施本申请实施例一中方法所采用的设备,故而基于本申请实施例一中所介绍的方法,本领域所属技术人员能够了解本实施例的电子设
备的具体实施方式以及其各种变化形式,所以在此对于该电子设备如何实现本申请实施例
中的方法不再详细介绍。只要本领域所属技术人员实施本申请实施例中的方法所采用的设
备,都属于本申请所欲保护的范围。
[0101] 基于同一发明构思,本申请提供了实施例一对应的存储介质,详见实施例四。
[0102] 实施例四
[0103] 本实施例提供一种计算机可读存储介质,如图7所示,其上存储有计算机程序,该计算机程序被处理器执行时,可以实现实施例一中任一实施方式。
[0104] 本申请实施例中提供的技术方案,至少具有如下技术效果或优点:本申请实施例提供的方法、装置、设备及介质,采用根据闪光灯与环境灯占比来控制成像时应用的白平衡
增益,利用白平衡参数和补光灯色温信息,预算出当前场景色温,从而指导白平衡工作,利
用单个补光灯实现前后背景不同色温的补偿控制,从而解决单颗白光LED灯拍出来的图片
色调偏冷的问题和实现闪光灯阶段快速白平衡收敛的目的。
[0105] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产
品的形式。
[0106] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流
程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实
现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0107] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
[0108] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
[0109] 虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本
领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的
权利要求所保护的范围内。