一种多光源下的白平衡处理方法和装置的制作方法

文档序号:7863543阅读:196来源:国知局
专利名称:一种多光源下的白平衡处理方法和装置的制作方法
技术领域
本发明涉及图像处理领域,尤其涉及一种多光源下的白平衡处理方法和装置。
背景技术
在不同的光源下,白光会变得偏蓝或偏红。光源色温高的情况下偏蓝,光源色温低的情况下偏红,从而不能正确反应出物体本身的颜色。色温是对光源颜色的一种定量的描述,单位为K (开尔文)。人眼有色彩恒常性的功能,即在不同光照条件下,人的视觉系统都可以还原物体本身的颜色,不受色温的影响,称为颜色恒定性。但是摄像机的成像传感器单元,例如电荷稱合元件(CCD)和金属氧化物半导体元件(CMOS)不具备这样的功能,所拍摄 图像中的景物不经过白平衡处理前,在不同色温光照下会出现偏色现象,被高色温光照颜色偏蓝,被低色温光照颜色偏红或黄。分量图像的白平衡处理就是纠正在图像中由色温而引起的色彩偏差。目前工业中使用的传感器,通常都由光线通过滤镜采样到红(R)、绿(G)、蓝(B)三个颜色分量的信号,因此,调节R、G、B三个分量的增益值就可以完成白平衡过程。白平衡处理分为手动白平衡和自动白平衡两种类型。手动白平衡的操作过程为对感兴趣光照下的无彩色信息进行成像,可以借助标准灰卡进行操作,对红色、绿色和蓝色信号中的放大增益进行调整,直到R、G、B成像画面中灰色区域的标准灰卡R、G、B分量的数值相等。由于手动白平衡存在由人引起的操作误差,并且在外部光照发生变化时,需要重新调节白平衡参数,只适合短时拍摄或室内固定光照的应用场景,因而在实际使用时更需要摄像机能跟踪外部色温变化,并对R、G、B的分量增益值进行调整,实现自动白平衡调节。目前的自动白平衡算法,可以分成两类一类是整体灰度世界估计,另一类是局部灰度世界估计。整体灰度世界估计的思路为,假设图像中所有像素点的R、G、B分量的累加值或平均值相同,即ALL_SUM_R = ALL_SUM_G = ALL_SUM_B (I)其中,ALL_SUM_F为图像中所有像素点的R分量值之和,ALL_SUM_G为图像中所有像素点的G分量值之和,ALL_SUM_B为图像中所有像素点的B分量值之和。在摄像机成像角度较广且无大片单色区域时,这种假设是成立的,误差较小。对于一种或几种组合的颜色占据图像较大区域面积时,整体灰度世界估计就不再成立。局部灰度世界估计的思路为,寻找待处理图像中属于灰色的像素点,分别统计所有灰色像素点的R、G、B分量累加值,然后据此计算各个R、G、B通道的增益值,即PART_SUM_R = PART_SUM_G = PART_SUM_B (2)其中,PART_SUM为图像中所有灰色像素点的R分量累加值,PART_SUM_G为图像中所有灰色像素点的G分量累加值,PART_SUM_B为图像中所有灰色像素点的B分量累加值。图I是现有技术的基于局部灰度世界估计的白平衡处理方法流程图。参照图1,所述白平衡处理方法包括如下步骤步骤101,获取传感器单元采集到的一帧完整的图片;
步骤102,按照预定规则搜索整幅图像中属于灰色的像素点;其中,在搜索灰色像素点之前,还可以根据预先设置的阈值去除图像中的饱和点。步骤103,分别统计所有灰色像素点的R、G、B分量的累加值;步骤104,按照R、G、B分量值相等的原则计算R、G、B分量的增益值;一般保持G分量的增益值不变,调整公式如下G_GAIN = IR_GAIN = PART_SUM_G/PART_SUM_RB_GAIN = PART_SUM_B/PART_SUM_R (3) 其中,G_GAIN为G分量的增益值,R_GAIN为R分量的增益值,B_GAIN为B分量的
增益值。步骤105,根据R、G、B分量增益值进行白平衡调节。对于每个像素点,将该像素点的R分量值与所述R分量增益值相乘,将该像素点的G分量值与所述G分量增益值相乘,将该像素点的B分量值与所述B分量增益值相乘,得到白平衡调节后的图像。在上述方案的实施过程中,图像中对灰色像素点的寻找和估计决定了白平衡算法的优劣。灰色像素点的选择可以通过把R-G和B-G的值落在设定阀值区域内这一条件进行筛选。如图2中的由阴影区域为灰色像素点范围,其可以由坐标轴上的a、b、c三个数值确定。其中,a、b、c的取值和传感器单元的物理特性相关,获取方法如下放置不带颜色的白板到灯箱中,灯箱的色温可以调节,从低色温开始调节灯箱的色温值,统计相机采集到的原始RGB格式图像对应白板区域的数值,并使用R、G、B三个分量各自的累加值计算R-G、B-G的值。根据不同色温下R-G、B-G值的大小,判断其取值范围,得到由a、b、c参数确定的待测量传感器灰色像素点范围。对于整幅图像对应一种色温的光源的情况,图像中每一个像素点在此色温下的偏差保持恒定的关系。这种情况下,只需要把把采集到的原始像素点进行R_G、B-G的运算,根据运算结果是否在阴影区域内,就可以判断出当前像素点是否属于灰点,统计出图像中所有的灰点,根据公式(3),使用局部灰度世界估计算法估计出的整幅图像的白平衡增益值,根据所述白平衡增益值对图像进行白平衡调节。对图像中只存在单个光源,整幅图像色温均匀的情况,上述方案可以较好的完成白平衡处理,但在实际场景中,常常存在两种或多种光源的情况,即图像的不同区域色温不同。如交通场景下,黄色的路灯和远处的汽车灯光常会同时存在。路灯的色温较低,而汽车灯光色温较高。在这种情况下,使用局部灰度世界统计得到的整幅图像的增益值去进行白平衡调节,既不能表现出路灯的色温,也无法准确表示图像汽车灯光的色温情况。实际上,使用上述的技术方案,即整幅图像使用固定的白平衡增益值,其白平衡效果接近图像中一部分的色温情况,但这会使得图像中属于其它色温的区域的图像偏差变得更大,会给整幅图像带来颜色上的偏差。在已有的白平衡实施方案和技术中,均无法解决此类问题。

发明内容
有鉴于此,本发明的目的是提供一种多光源下的白平衡处理方法和装置,能够对不同色温区域实现准确的白平衡调节。为实现上述目的,本发明提供技术方案如下一种多光源下的白平衡处理方法,包括将待处理图像划分成多个子块;获取各子块对应的色温值;根据各子块对应的色温值确定多个光源中心子块;获取所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益 值;根据所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值,确定每个像素点各自的白平衡增益值;根据每个像素点各自的白平衡增益值对所述待处理图像进行白平衡调节。一种多光源下的白平衡处理装置,包括子块划分模块,用于将待处理图像划分成多个子块;色温值获取模块,用于获取各子块对应的色温值;光源中心确定模块,用于根据各子块对应的色温值确定多个光源中心子块;第一增益获取模块,用于获取所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值;第二增益获取模块,用于根据所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值,确定每个像素点各自的白平衡增益值;白平衡调节模块,用于根据每个像素点各自的白平衡增益值对所述待处理图像进行白平衡调节。与现有技术中整幅图像使用固定的白平衡增益值相比,本发明的技术方案将待处理图像划分成多个子块,根据各子块对应的色温值确定多个光源中心子块,然后,根据待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值确定每个像素点各自的白平衡增益值,能够对不同色温区域实现准确的白平衡调节。


图I是现有技术的基于局部灰度世界估计的白平衡处理方法流程图;图2是现有技术的图像灰点的筛选示意图;图3是本发明实施例的多光源下的白平衡处理方法流程图;图4是本发明实施例的多光源下的白平衡处理装置结构图。
具体实施例方式以下结合附图对本发明进行详细描述。针对现有技术中存在的,在白平衡处理时整幅图像使用固定的白平衡增益值所带来的颜色偏差问题,本发明实施例提出一种多光源下的白平衡处理方法和装置,能够在多色温场景下,对图像中的不同色温区域实施准确的白平衡调节。参照图3,本发明实施例的多光源下的白平衡处理方法,可以包括如下步骤步骤301,将待处理图像划分成多个子块;
等待摄像机完成一帧图像的曝光过程后,从图像传感器中取出经过曝光后获得的一帧未经白平衡处理的RGB格式图像(拜耳(BAYER)格式的图像数据)作为待处理图像,可以将所述待处理图像划分成M*N个矩形块。其中,M和N大小可以根据需要选择,但一般M和N值范围为[32,64],取值过小则白平衡处理的效果改善不明显,取值过大则会对后续色温值估计的精度产生影响。另外,除了可以将所述待处理图像划分为多个矩形块,还可以将所述待处理图像划分为多个其他形状的子块,例如,划分为多个三角形块。步骤302,获取各子块对应的色温值;除了可以采用现有技术中的各种方式来获取各子块对应的色温值之外,本发明收实施例还提供如下的优选方式来获取各子块对应的色温值
首先,确定各子块中的灰色像素点;然后,分别获取每个子块中所有灰色像素点的R分量累加值、G分量累加值和B分量累加值;最后,根据每个子块中所有灰色像素点的R分量累加值、G分量累加值和B分量累加值,确定各子块对应的色温值。具体地,根据色温的物理意义,可以按照如下公式计算各子块对应的色温值Temp(k) = abs(PART_SUM_R(k)-PART_SUM_G(k))/ (4)abs(PART_SUM_B(k)_PART_SUM_G(k))其中,Temp (k)为第k子块对应的色温值,PART_SUM_R(k)为第k子块中所有灰色像素点的R分量累加值,PART_SUM_G(k)为第k子块中所有灰色像素点的G分量累加值,PART_SUM_B(k)为第k子块中所有灰色像素点的B分量累加值,k=l, 2,. . .,K,K为子块总数,abs O为求绝对值运算。在本步骤中,可以采用背景技术中提到的方法来确定各字块中的灰色像素点,即,分别计算各像素点的R-G值和B-G值,然后判断该像素点的R-G值和B-G值是否落在图2所示的阴影区域内,若是,则确定该像素点为灰色像素点。本领域技术人员知道,也可以采用现有技术中的其他方法来获取灰色像素点,本发明对此不做限制。步骤303,根据各子块对应的色温值确定多个光源中心子块;根据光源的强度随着距离增大而衰减的特性,处于光源处的色温值为周边子块的色温值的极值,因此,可以按照如下方式来判断某个子块是否处于光源中心,即是否为光源中心子块首先,对于每个子块,将该子块与相邻的各子块构造为一子块集合;然后,判断该子块对应的色温值是否为所述子块集合中各子块对应的色温值中的最大值或最小值,若是,则确定该子块为光源中心子块。例如,假设各子块为矩形块,对坐标值为(X,y)的子块BLOCK (X,y),将BLOCK (x, y)的色温值与对应图像中与该子块相邻的8个子块的色温值进行比较,如果BLOCK (X,y)的色温值大于相邻8个子块的色温值,或者,小于相邻8个子块的色温值,则确定BLOCK (X,y)为一个光源中心位置。如果相邻的子块位置处于图像有效区域之外,则对应的区域的色温值使用此子块本身的色温值替代。优选地,为了计算光源中心所在图像中的位置,还可以先对各个子块的色温值使用中值滤波进行处理,以去除噪声干扰和统计偏差。另外,本领域技术人员知道,也可以采用现有技术中的其他方法来获取处于光源中心位置的子块,本发明对此也不做限制。步骤304,获取所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值;可以采用局部灰度世界估计算法,来计算所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值。具体地,可以使用待处理图像中所有灰色像素点的R分量累加值、G分量累加值和B分量累加值,根据公式(3)计算出所述待处理图像的全局白平衡增益值;对于每个光源中心子块,可以使用该光源中心子块中所有灰色像素点的R分量累加值、G分量累加值和B分 量累加值,根据公式(3)计算出该光源中心子块的白平衡增益值。步骤305,根据所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值,确定每个像素点各自的白平衡增益值;具体如下首先,对于图像中每个像素点,根据图像水平和垂直坐标值计算该像素点与各光源中心子块之间的距离;然后,根据该像素点与各光源中心子块之间的距离,对所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值进行拟合,得到该像素点的白平衡增益值。所述拟合方式可以是线性插值、曲线拟合等。以线性插值为例,对坐标为(x,y)的像素点,首先计算坐标(X,y)与各光源中心子块之间的距离(可以是与各光源中心子块的重心点(x(l),y(l))、(x(2),y(2))、· · .、(x (N), y (N))之间的距离,也可以是与各光源中心子块的其他特征点之间的距离),公式如下Δ (χ-χ (I),y-y (I)) = sqrt ((y~y (I))2+ (x~x (I))2)Δ (χ-χ ⑵,y-y ⑵)=sqrt ((y-y ⑵)2+ (χ-χ (2))2) (5)......Δ (χ-χ (η),y-y (η)) = sqrt ((y-y (η))2+ (χ-χ (η))2)然后,可以按照如下公式计算图像中各像素点的白平衡增益值
权利要求
1.一种多光源下的白平衡处理方法,其特征在于,包括 将待处理图像划分成多个子块; 获取各子块对应的色温值; 根据各子块对应的色温值确定多个光源中心子块; 获取所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值; 根据所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值,确定每个像素点各自的白平衡增益值; 根据每个像素点各自的白平衡增益值对所述待处理图像进行白平衡调节。
2.如权利要求I所述的白平衡处理方法,其特征在于,所述获取各子块对应的色温值,包括 确定各子块中的灰色像素点; 分别获取每个子块中所有灰色像素点的R分量累加值、G分量累加值和B分量累加值; 根据所述R分量累加值、G分量累加值和B分量累加值,确定各子块对应的色温值。
3.如权利要求2所述的白平衡处理方法,其特征在于,按照如下公式计算各子块对应的色温值Temp(k) = abs(PART_SUM_R(k)-PART_SUM_G(k))/ abs (PART_SUM_B(k)_PART_SUM_G(k)) 其中,Temp (k为第k子块对应的色温值,PART_SUM_R(k)为第k子块中所有灰色像素点的R分量累加值,PART_SUM_G(k)为第k子块中所有灰色像素点的G分量累加值,PART_SUM_B(k)为第k子块中所有灰色像素点的B分量累加值,k=l, 2,. . .,K,K为子块总数。
4.如权利要求I所述的白平衡处理方法,其特征在于,所述根据各子块对应的色温值确定多个光源中心子块,包括 对于每个子块,将该子块与相邻的各子块构造为一子块集合; 判断该子块对应的色温值是否为所述子块集合中各子块对应的色温值中的最大值或最小值,若是,则确定该子块为光源中心子块。
5.如权利要求I所述的白平衡处理方法,其特征在于,所述根据所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值,确定每个像素点各自的白平衡增益值,包括 对于图像中每个像素点,根据图像水平和垂直坐标值计算该像素点与各光源中心子块之间的距离; 根据该像素点与各光源中心子块之间的距离,对所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值进行拟合,得到该像素点的白平衡增益值。
6.如权利要求5所述的白平衡处理方法,其特征在于,按照如下公式计算图像中各像素点的白平衡增益值
7.一种多光源下的白平衡处理装置,其特征在于,包括 子块划分模块,用于将待处理图像划分成多个子块; 色温值获取模块,用于获取各子块对应的色温值; 光源中心确定模块,用于根据各子块对应的色温值确定多个光源中心子块; 第一增益获取模块,用于获取所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值; 第二增益获取模块,用于根据所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值,确定每个像素点各自的白平衡增益值; 白平衡调节模块,用于根据每个像素点各自的白平衡增益值对所述待处理图像进行白平衡调节。
8.如权利要求7所述的白平衡处理装置,其特征在于,所述色温值获取模块具体用于 确定各子块中的灰色像素点; 分别获取每个子块中所有灰色像素点的R分量累加值、G分量累加值和B分量累加值; 根据所述R分量累加值、G分量累加值和B分量累加值,确定各子块对应的色温值。
9.如权利要求8所述的白平衡处理装置,其特征在于,所述色温值获取模块进一步用于,按照如下公式计算各子块对应的色温值Temp(k) = abs(PART_SUM_R(k)_PART_SUM_G(k))/ abs (PART_SUM_B(k)_PART_SUM_G(k)) 其中,Temp (k为第k子块对应的色温值,PART_SUM_R(k)为第k子块对应的R分量累加值,PART_SUM_G(k)为第k子块对应的G分量累加值,PART_SUM_B (k)为第k子块对应的B分量累加值,k=l, 2,…,K,K为子块总数。
10.如权利要求7所述的白平衡处理装置,其特征在于,所述光源中心确定模块具体用于 对于每个子块,将该子块与相邻的各子块构造为一子块集合; 判断该子块对应的色温值是否为所述子块集合中各子块对应的色温值中的最大值或最小值,若是,则确定该子块为光源中心子块。
11.如权利要求6所述的白平衡处理装置,其特征在于,所述第二增益获取模块具体用于 对于图像中每个像素点,根据图像水平和垂直坐标值计算该像素点与各光源中心子块之间的距离; 根据该像素点与各光源中心子块之间的距离,对所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值进行拟合,得到该像素点的白平衡增益值。
12.如权利要求11所述的白平衡处理装置,所述第二增益获取模块进一步用于,按照如下公式计算图像中各像素点的白平衡增益值
全文摘要
本发明提供一种多光源下的白平衡处理方法和装置,属于图像处理领域。所述白平衡处理方法包括将待处理图像划分成多个子块;获取各子块对应的色温值;根据各子块对应的色温值确定多个光源中心子块;获取所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值;根据所述待处理图像的全局白平衡增益值以及各光源中心子块的白平衡增益值,确定每个像素点各自的白平衡增益值;根据每个像素点各自的白平衡增益值对所述待处理图像进行白平衡调节。本发明能够对不同色温区域实现准确的白平衡调节。
文档编号H04N9/73GK102892010SQ20121040420
公开日2013年1月23日 申请日期2012年10月22日 优先权日2012年10月22日
发明者朱旭东 申请人:浙江宇视科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1