一种白平衡的处理方法和装置的制作方法

文档序号:7851711阅读:208来源:国知局
专利名称:一种白平衡的处理方法和装置的制作方法
技术领域
本发明涉及图像处理领域,特别涉及一种白平衡的处理方法和装置。
背景技术
白平衡(Auto White Balance)是指在不同的色温下,使传感器(Sensor)采集的图像接近人眼所看的真实画面,也就是使白色的物体在不同的色温下拍摄得到的图像也是白色的。原始数据(RAW DATA)是未经处理、也未经压缩的数据,是传感器将捕捉到的光源信号转化为数字信号的原始数据。上述传感器可以是 互补金属氧化物半导体(Complementary Metal Oxide Semiconductor, CMOS)的传感器也可以是电荷稱合兀件(Charge-coupled Device)的传感器。CMOS传感器或CCD传感器可输出多种数据格式,例如YUV422、RGB565、RAff等,YUV,中"Y"表示明亮度(Luminance或Luma),也就是灰阶值;是个基带信号。而"U"和"V"表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。U和V不是基带信号,它俩是被正交调制了的。由于RAW最大限度的记录了真实的影像数据,经过后端(例如手机平台)处理后就可以的提高其画质,由于输出RAW数据格式的摄像头价格较低,越来越多的Sensor厂及客户都选择输出RAW格式的Sensor和摄像头。发明人在实现本发明的实施例过程中发现RAW DATA是从CXD或CMOS的Sensor直接输出的数据,没经过处理。由于半导体加工工艺的原因会导致Sensor输出图像颜色不一致而出现偏色,不同模组之间的差异导致有的可能偏红,有的可能偏蓝。

发明内容
本发明实施例提供了一种白平衡的处理方法和装置,用于解决图像偏色的问题。一种白平衡的处理方法,包括获取待矫正摄像头的模组在预定光源下获取的画面,并计算画面设定范围内红R、绿G、蓝B的平均值,并通过平均值计算与白平衡标准值对应的白平衡实际值;所述白平衡标准值通过使用标准模组在预定光源下获取画面并计算画面设定范围内红、绿、蓝的平均值,然后通过平均值计算得到;通过所述白平衡实际值与所述白平衡标准值,计算得到白平衡红、绿、蓝的增益;将所述白平衡红、绿、蓝的增益写入所述待矫正的摄像头的传感器的控制寄存器。一种白平衡的处理装置,包括图像获取单元,用于获取待矫正摄像头的模组在预定光源下获取的画面;白平衡计算单元,用于计算图像获取单元获取的画面设定范围内红R、绿G、蓝B的平均值,并通过平均值计算与白平衡标准值对应的白平衡实际值;所述白平衡标准值通过使用标准模组在预定光源下获取画面并计算画面设定范围内红、绿、蓝的平均值,然后通过平均值计算得到;
增益计算单元,用于通过所述白平衡实际值与所述白平衡标准值,计算得到白平衡红、绿、蓝的增益;增益写入单元,用于将所述白平衡红、绿、蓝的增益写入所述待矫正的摄像头的传感器的控制寄存器。从以上技术方案可以看出,本发明实施例具有以下优点通过对摄像头输出的RAWDATA加入适当白平衡校正处理,解决单个模组的偏色和不同模组间的色彩一致性问题,解决了图像偏色的问题。


为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其 他的附图。图I为本发明实施例方法流程示意图;图2为本发明实施例另一方法流程示意图;图3为本发明实施例装置结构示意图。
具体实施例方式为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。本发明实施例提供了一种白平衡的处理方法,如图I所示,包括101 :获取待矫正摄像头的模组在预定光源下获取的画面,并计算画面设定范围内红R、绿G、蓝B的平均值,并通过平均值计算与白平衡标准值对应的白平衡实际值;上述白平衡标准值通过使用标准模组在预定光源下获取画面并计算画面设定范围内红、绿、蓝的平均值,然后通过平均值计算得到;以上实施例基于标准模组已经确定的情况,若标准模组没有确定,那么在101之前还包括在标准光源下使用传感器的标准参数采集图像,选取白平衡效果最优的传感器对应的模组作为标准模组。后续实施例将就此作更详细说明。具体地,上述标准光源为色温为6500K的标准光源,或者,色温为5100K的均匀标准光源。例如D65光源(Artificial Daylight 6500K),D65光源是标准光源中常用的人工日光,其色温为6500K。DNP光源(Dai Nippon Printing),DNP光源是一种均匀光源,可以发出5100K或者6500K色温的均匀光源。具体地,上述设定范围为画面中心区域的1/5宽*1/5高的范围。需要说明的是,如果是其他区域也是可以的,以上优选区域不应理解为对本发明实施例的限定。优选地,由于人眼对绿色G分量最敏感,COMS Sensor中输出的G分量最多,用G作为基准精度比较高,那么上述计算画面设定范围内红、绿、蓝的平均值,然后通过平均值计算得到白平衡标准值包括计算画面设定范围内R、G、B的平均值1'_3¥8、8_3¥8、13_3¥8 ;然后计算得到白平衡的标准值 golden_rg和 golden_bg ;其中 golden_rg=r_avg/g_avg, golden_bg=b_avg/g_avg ;相应地,上述通过平均值计算与白平衡标准值对应的白平衡实际值包括通过R、G、B的平均值r_avg*、g_avg*、b_avg*计算得到白平衡的实际值current_rg和current_bg ;其中 current_rg=r_avg*/g_avg*, currerit_bg=b_avg氺/g_avg氺。102:通过上述白平衡实际值与上述白平衡标准值,计算得到白平衡红、绿、蓝的增

优选地,基于101中优选方案,本发明实施例还进一步提供了 R\G\B增益的计算方案通过上述白平衡实际值与上述白平衡标准值,计算得到白平衡红、绿、蓝的增益包括计算白平衡实际值与白平衡标准值的差异cmp_rg和cmp_bg ;其中cmp_rg=l. 0*current_rg/golden_rg, cmp_bg=l. O*current_bg/golden_bg ;若cmp_rg和cmp_bg均小于I,则以G通道为基准,R和B的增益ratio_r和ratio_b 分另Ij为ratio_r=l/cmp_rg, ratio_b=l/cmp_bg ;若cmp_rg大于I并且cmp_rg大于cmp_bg,则以R通道为基准,G和B的增益ratio_g 和 ratio_b 分别为ratio_g=cmp_rg, ratio_b=cmp_rg/cmp_bg;若cmp_bg大于I,并且cmp_bg大于cmp_rg,则以B通道为基准,G和R的增益ratio_g 和 ratio_r 分另Ij为ratio_g=cmp_bg, ratio_r=cmp_bg/cmp_;rg。103 :将上述白平衡红、绿、蓝的增益写入上述待矫正的摄像头的传感器的控制寄存器。可选地,上述将上述白平衡红、绿、蓝的增益写入上述待矫正的摄像头的传感器的控制寄存器包括通过一次性可编程写入内存OTP将R、G、B的增益写入上述待矫正的摄像头的传感器的控制寄存器。本发明实施例通过一次性可编程写入内存(One-timeprogrammable memory, OTP)将R、G、B的增益写入上述待矫正的摄像头的传感器的控制寄存器。Sensor内部自带存储空间,只能写入一次。需要说明的是,写入控制寄存器的方式是可以被其他方式取代的,并不影响本发明实施例的实现,本发明实施例对此不予限定。本发明实施例提供的白平衡原理如下在传感器(Sensor)内部有一组寄存器(控制寄存器)用来分别调整R、G、B (红Red JfGreerui Blue)的增益,通过控制这三个通道的放大比例达到白平衡。以上实施例通过对摄像头输出的RAW DATA加入适当白平衡校正处理,解决单个模组的偏色和不同模组间的色彩一致性问题,解决了图像偏色的问题。本发明实施例还给出了以上实施例的举例说明,本实施例的后端以手机为例,具体如图2所示,包括201 :选取标准模组(Golden Sample)准备30 50个摄像头样品,在D65或者5100K DNP光源下,通过Sensor厂提供的标准参数(是由Sensor厂提供的一套寄存器设置,以便Sensor能正常工作,输出图像。),采集图像,选取没有偏色或者白平衡比较好的一个模组作为标准模组,(这个模组可以提供给后端平台商,后端针对这个模组把影像效果调到最好)。202 :计算标准模组的R/G和B/G,作为白平衡纠正中R/G和B/G的标准值即golden_rg和golden_bg ;在065或者DNP光源下,待预览画面曝光稳定后,计算画面中心区域 l/5Width*l/5Height 所有点的 R、G、B 的平均值即 r_avg、g_avg、b_avg ;golden_rg=r_avg/g_avg, golden_bg=b_avg/g_avgD需要说明的是201和202是预置的过程,对于白平衡处理的流程而言以上两个步骤并不需要每次都执行。203 :计算待矫正的摄像头模组的R/G和B/G,即current_rg和current_bg。current_rg和current_bg的计算方法与202方法相同(需要在同样的光源环境下)。可以通过OTP把current_rg和current_bg写输入到Sensor本身自带的存储空间,以便后端手机平台读取这些数据来做白平衡算法。204 :手机平台添加Raw Data白平衡算法通过比较当前摄像头R/G和B/G值(即步骤3中计算得到的)与标准摄像头R/G和 B/G值(步骤2得到的)的差异,计算Sensor手动白平衡R、G、B的增益,使当前使用的摄像头和标准摄像头的R/G和B/G值一样。double rati or, ratio—g,ratiob; //R.、G、B 的增益
double cmp rg, cmp bg; //当前值,手机通过OTP读取上面303写入控制寄存器的值。
//计算当前值与标准值的差异
cmp rg = 1.0 * current—rg / golden—rg;
cmp bg = 1.0 * current—bg / golden bg;
增益确定方法如下:
if ((crnp_rg< I) && (crnp—bg<l))
{
//如果R/G的值和B/G的值都比标准值小,则G的增益设为I,按反比增加R和B的增益
ratio—g= I;//用G通道为基准 ratio—r = I / cmp rg;
I atio b = I / cmp bg;
}
else if (cmp rg > cmp—bg)
{
//如果R/G的值大于标准值,并且R/G的差异大于B/G的差异,则R的增益设为I,按反比增加G、B的增益ratio—r = I;//用R通道为基准rati o_g = cmprg;ratio b = cmp rg / cmp bg;
}
else
{
//如果B/G的值大于标准值,并且B/G的差异大于R/G的差异,则B的增益设为I,按反比增加G、R的增益 ratio—b= I;//用B通道为基准ratio—g = cmpbg;

ratio—r = cmp bg / cmp rg;
}205 :将R、G、B的增益值写入Sensor相应的控制寄存器经过校正后,当前模组的效果均接近于标准模组,从而解决了一致性的问题比如0V5647/0V5650增益计算和写入
Mefme GAIN RH ADDR0x5186//R 通道高位地址
Mefme GAIN—RL—ADDR0x5187//R 通道低位地址
Mefme GAIN GH ADDR0x51 88//G 通道高位地址
Mefine GAIN—GL—ADDR0x5189//G 通道低位地址
Mefme GAIN—BH—ADDR0x518A//B 通道高位地址
#defme GAIN—BL—ADDR0x5 18B//G 通道低位地址
Mefine GAIN_DEFAULT_VALUE 0x0400 //增益默认值if (rati or != I)
{
gain—i,= (kal—umt16)(GAIN—DEFAULT—VALUE * ratio」’);OV5647_write_cmos_Sensor(GAIN_RH_ADDR. gain—I’ 8);OV5647—write—cmos—Sensoi’(GAIN_RL—ADDR, gain—r & OxOOff);
}
if (ratio—g != I)
/
'i
gain—g = (kal—uim 16)((;AiN—DEFAULT—VALUE * ratio g);OV5647_write_cmos_Sensor(GAIN_GH_ADDR, gain—g 8);
O.V5647—write—cmos—Sensor(GAIN—GL—ADDR, gain—g & OxOOff);
}
if (ratio b != I)
gain—b = (kal_uint!6)(GAIN_DEFAULT_VALUE * ratio b);
O.V5647—write—cmos—Sensor(GAIN_BH—ADDR, gain—b 8);
OV5647_write_cmos_Sensor(GAIN BL ADDR, gain—t) & OxOOff);以上实施例通过对摄像头输出的RAW DATA加入适当白平衡校正处理,解决单个模组的偏色和不同模组间的色彩一致性问题,解决了图像偏色的问题。
本发明实施例还提供了一种白平衡的处理装置,如图3所示,包括图像获取单元301,用于获取待矫正摄像头的模组在预定光源下获取的画面;白平衡计算单元302,用于计算图像获取单元301获取的画面设定范围内红R、绿G、蓝B的平均值,并通过平均值计算与白平衡标准值对应的白平衡实际值;上述白平衡标准值通过使用标准模组在预定光源下获取画面并计算画面设定范围内红、绿、蓝的平均值,然后通过平均值计算得到;增益计算单元303,用于通过上述白平衡实际值与上述白平衡标准值,计算得到白平衡红、绿、蓝的增益;增益写入单元304,用于将上述白平衡红、绿、蓝的增益写入上述待矫正的摄像头的传感器的控制寄存器。以上实施例通过对摄像头输出的RAW DATA加入适当白平衡校正处理,解决单个模组的偏色和不同模组间的色彩一致性问题,解决了图像偏色的问题。优选地,上述计算画面设定范围内红、绿、蓝的平均值,然后通过平均值计算得到白平衡标准值包括计算画面设定范围内R、G、B的平均;然后计算得到白平衡的标准值 golden_rg 和 golden_bg ;其中 golden_rg=r_avg/g_avg, golden_bg=b_avg/g_avg ;上述白平衡计算单元302,具体用于计算图像获取单元获取的画面设定范围内红R、绿G、蓝B的平均值,并通过R、G、B的平均值r_avg*、g_avg*、b_avg*计算得到白平衡的实际值 current_rg 和 current_bg ;其中 current_rg=r_avg*/g_avg*, current_bg=b_avg*/g_avg*0优选地,上述增益计算单元303,具体用于计算白平衡实际值与白平衡标准值的差异 cmp_rg 矛口 cmp_bg ;其中 cmp_rg=l. 0*current_rg/golden_rg, cmp_bg=l. 0氺current_bg/golden_bg ;若cmp_rg和cmp_bg均小于I,则以G通道为基准,R和B的增益ratio_r和ratio_b 分另Ij为ratio_r=l/cmp_rg, ratio_b=l/cmp_bg ;
若cmp_rg大于I并且cmp_rg大于cmp_bg,则以R通道为基准,G和B的增益ratio_g 矛口 ratio_b 分另Ij为ratio_g=cmp_rg,ratio_b=cmp rg/cmp_bg;若cmp_bg大于I,并且cmp_bg大于cmp_rg,则以B通道为基准,G和R的增益ratio_g 和 ratio_r 分另Ij为ratio_g=cmp_bg, ratio_r=cmp_bg/cmp_;rg。值得注意的是,上述设备实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。另外,本领域普通技术人员可以理解实现上述各方法实施例中的全部或部分步骤是可以通过程序来指令相关的硬件完成,相应的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
权利要求
1.一种白平衡的处理方法,其特征在于,包括 获取待矫正摄像头的模组在预定光源下获取的画面,并计算画面设定范围内红R、绿G、蓝B的平均值,并通过平均值计算与白平衡标准值对应的白平衡实际值;所述白平衡标准值通过使用标准模组在预定光源下获取画面并计算画面设定范围内红、绿、蓝的平均值,然后通过平均值计算得到; 通过所述白平衡实际值与所述白平衡标准值,计算得到白平衡红、绿、蓝的增益; 将所述白平衡红、绿、蓝的增益写入所述待矫正的摄像头的传感器的控制寄存器。
2.根据权利要求I所述方法,其特征在于,还包括 在标准光源下使用传感器的标准参数采集图像,选取白平衡效果最优的传感器对应的模组作为标准模组。
3.根据权利要求I所述方法,其特征在于,所述标准光源为色温为6500K的标准光源,或者,色温为5100K的均匀标准光源。
4.根据权利要求I至3任意一项所述方法,其特征在于,计算画面设定范围内红、绿、蓝的平均值,然后通过平均值计算得到白平衡标准值包括 计算画面设定范围内R、G、B的平均值r_avg、g_avg、b_avg ;然后计算得到白平衡的标准值 golden_rg 和 golden_bg ;其中 golden_rg=r_avg/g_avg, golden_bg=b_avg /g_avg ;所述通过平均值计算与白平衡标准值对应的白平衡实际值包括 通过R、G、B的平均值r_avg*、g_avg*、b_avg*计算得到白平衡的实际值current_rg矛口 current_bg ;$中 current_rg=r_avg*/g_avg*, current_bg=b_avg氺/g_avg*。
5.根据权利要求4所述方法,其特征在于,所述设定范围为画面中心区域的1/5宽*1/5高的范围。
6.根据权利要求4所述方法,其特征在于,通过所述白平衡实际值与所述白平衡标准值,计算得到白平衡红、绿、蓝的增益包括 计算白平衡实际值与白平衡标准值的差异cmp_rg和cmp_bg ;其中cmp_rg=l. 0*current_rg/golden_rg, cmp_bg=l. O氺current_bg/golden_bg ; 若cmp_rg和cmp_bg均小于1,则以G通道为基准,R和B的增益ratio_r和ratio_b分另1J为ratio_r=l/cmp_rg, ratio_b=l/cmp_bg ; 若cmp_rg大于I并且cmp_rg大于cmp_bg,则以R通道为基准,G和B的增益ratio_g和 ratio_b 分别为ratio_g=cmp_rg, ratio_b=cmp_rg/cmp_bg; 若cmp_bg大于I,并且cmp_bg大于cmp_rg,则以B通道为基准,G和R的增益ratio_g 和 ratio_r 分别为ratio_g=cmp_bg, ratio_r=cmp_bg/cmp_rg。
7.根据权利要求I所述方法,其特征在于,所述将所述白平衡红、绿、蓝的增益写入所述待矫正的摄像头的传感器的控制寄存器包括 通过一次性可编程写入内存OTP将R、G、B的增益写入所述待矫正的摄像头的传感器的控制寄存器。
8.一种白平衡的处理装置,其特征在于,包括 图像获取单元,用于获取待矫正摄像头的模组在预定光源下获取的画面; 白平衡计算单元,用于计算图像获取单元获取的画面设定范围内红R、绿G、蓝B的平均值,并通过平均值计算与白平衡标准值对应的白平衡实际值;所述白平衡标准值通过使用标准模组在预定光源下获取画面并计算画面设定范围内红、绿、蓝的平均值,然后通过平均值计算得到; 增益计算单元,用于通过所述白平衡实际值与所述白平衡标准值,计算得到白平衡红、绿、蓝的增益; 增益写入单元,用于将所述白平衡红、绿、蓝的增益写入所述待矫正的摄像头的传感器的控制寄存器。
9.根据权利要求8所述装置,其特征在于,所述计算画面设定范围内红、绿、蓝的平均值,然后通过平均值计算得到白平衡标准值包括计算画面设定范围内R、G、B的平均值r_avg、g_avg、b_avg ;然后计算得到白平衡的标准值golden_rg和golden_bg ;其中golden_rg=r_avg/g_avg, golden_bg=b_avg /g_avg ; 所述白平衡计算单元,具体用于计算图像获取单元获取的画面设定范围内红R、绿G、蓝B的平均值,并通过R、G、B的平均值r_avg*、g_avg*、b_avg*计算得到白平衡的实际.1 current_rg 矛口 current_bg ;其中 current_rg=r_avg*/g_avg*, current_bg=b_avg氺/g_avg* o
10.根据权利要求9所述装置,其特征在于, 所述增益计算单元,具体用于计算白平衡实际值与白平衡标准值的差异cmp_rg和cmp_bg ;其中 cmp_rg=l. 0*current_rg/golden_rg, cmp_bg=l. 0氺current_bg/golden_bg ; 若cmp_rg和cmp_bg均小于1,则以G通道为基准,R和B的增益ratio_r和ratio_b分另1J为ratio_r=l/cmp_rg, ratio_b=l/cmp_bg ; 若cmp_rg大于I并且cmp_rg大于cmp_bg,则以R通道为基准,G和B的增益ratio_g和 ratio_b 分别为ratio_g=cmp_rg, ratio_b=cmp_rg/cmp_bg; 若cmp_bg大于I,并且cmp_bg大于cmp_rg,则以B通道为基准,G和R的增益ratio_g 和 ratio_r 分别为ratio_g=cmp_bg, ratio_r=cmp_bg/cmp_rg。
全文摘要
本发明实施例公开了一种白平衡的处理方法和装置,其中方法包括获取待矫正摄像头的模组在预定光源下获取的画面,并计算画面设定范围内红R、绿G、蓝B的平均值,并通过平均值计算与白平衡标准值对应的白平衡实际值;上述白平衡标准值通过使用标准模组在预定光源下获取画面并计算画面设定范围内红、绿、蓝的平均值,然后通过平均值计算得到;通过上述白平衡实际值与上述白平衡标准值,计算得到白平衡红、绿、蓝的增益;将上述白平衡红、绿、蓝的增益写入上述待矫正的摄像头的传感器的控制寄存器。通过对摄像头输出的RAW DATA加入适当白平衡校正处理,解决单个模组的偏色和不同模组间的色彩一致性问题,解决了图像偏色的问题。
文档编号H04N9/73GK102685513SQ20121015934
公开日2012年9月19日 申请日期2012年5月21日 优先权日2012年5月21日
发明者张博, 张粦钢, 李建华 申请人:信利光电(汕尾)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1