自动白平衡方法及装置的制作方法

文档序号:7967482阅读:206来源:国知局
专利名称:自动白平衡方法及装置的制作方法
技术领域
本发明涉及一种基于先验知识的快速迭代自动白平衡方法。本发明还 涉及一种用于实现所述自动白平衡方法的装置。
技术背景人的视觉系统能够通过确保白色物体呈现白色来变换发光源。在不同 的光源环境下,红、绿、蓝三种基色成分的强度有较大的变化,日光中蓝 色成分比冷白色荧光中的蓝光成分要多。人的视觉系统能平衡红、绿、蓝 光的成分,以确保白色物体不论在日光中还是在荧光中都呈现白色。这种 技术称为白平衡。图像获取系统中的自动白平衡装置使用自动白平衡算法 来模拟人的视觉系统,从而在不同类型照明源中再现图像中白色的物体的 真实白色。RGB色彩成分的强度在不同光照条件下有较大的变化,在曰光 (Sunlight)中的蓝光成分远比冷白色荧光(CWF, cool white fluorescent)中的蓝光成分要多。色温较高的如日光,其具有较多的蓝 光成分,而色温较低的如白炽光(incandescence light),则其红光成分 较多。现有的技术中, 一种自动白平衡的方法是假定整个图像需要白平衡。 这种假定导致在计算RGB平均值时过多地包含了图像中所有像素的RGB 值。由该RGB平均值进行线性颜色空间转换得到的YCbCr用于调整在获取
图像中的色彩增益。也即,应用于每一彩色信道的色彩增益值是基于RGB 平均值之上。当所有像素的RGB值都包含用来计算RGB平均值时,那么也 包括了高饱和度色彩所带来的不必要的影响。当高饱和度色彩的物体进入 或离开某一场景时,它的影响会使RGB平均值偏斜。高饱和度色彩在RGB平均值计算中的作用会最终导致校正后的物体色彩失真。例如,当蓝色物 体进入到蓝色背景的景象时,图像会有一个占支配地位的蓝色值,该蓝色 会严重地影响该图像的RGB平均值,以致增益调整上的偏差可导致物体色 彩失真。现有的技术所公开的另一种自动白平衡方法是采用单一的白色像素 判断准则来判断白色像素,可防止图像中高饱和度色彩像素的影响。这种 方法用白色像素判断准则来识别图像中的白色像素。如果某一像素满足白 色像素判断准则,那么它就被确定为白色像素,而且它的RGB值所对应的 Y, Cb, Cr值会用来计算色彩增益调整的色差Cb, Cr平均值。采用单一的白色像素判断准则的缺点是不可用来确定图像的发光源, 因为所有类型照明源的单一的白色像素判断准则不具备足够的信息,来支 持进一步的分析,以获得等同的发光源。此外,上述的方法也对发光源的 变化不具有快速的响应能力,因为色彩增益值的调整过程会很长。因此,有必要提供一种可消除高饱和度色彩影响的、并对发光源变换 具有快速响应能力的自动白平衡方法和装置。发明内容本发明要解决的技术问题是提供一种自动白平衡方法,能够消除因图 像包含大块高饱和度的物体时所产生的物体色彩失真,实现当达到白平衡
时,白色物体即使在不同的发光源场景下都能表现为白色;另一方面还能 快速调整各种光源条件下的红、绿、蓝三基色成分的白平衡增益值。为此 本发明还提供一种用于实现所述方法的自动白平衡装置。为解决上述技术问题,本发明提供一种自动白平衡方法,包括将捕获到的图像分割成像素块的步骤;确定图像的发光源的步骤;迭代计算白平衡增益值的步骤,用于迭代计算图像的白平衡增益值, 以获得一合适白平衡增益值;使用所述合适白平衡增益值对整个图像中的像素点进行白平衡校正 的步骤。本发明还提供一种自动白平衡装置,包括 图像分割模块,用于将捕获到的图像分割成像素块; 图像校正模块,用于对整个图像中的像素点进行白平衡校正; 图像发光源确定模块;白平衡增益迭代计算模块,用于迭代计算图像的白平衡增益值,以求 得一合适的白平衡增益值。本发明由于采用了上述技术方案,具有这样的有益效果,即(1) 可很好的进行色温估计,并在图像充满大范围的彩色时,也能 得到很好的RGB三基色的白平衡增益值;(2) 可以快速的调整各种光源条件下的红、绿、蓝三基色成分的白 平衡增益;(3) 在同一光源条件下,能保持红、绿、蓝三基色成分白平衡增益 的稳定;(4)由于预设光源和阈值均为可调参数,因此提高了系统灵活性。


下面结合附图与具体实施方式
对本发明作进一步详细的说明 图1是本发明所述自动白平衡方法的流程示意图; 图2示出了将一示例性输入图像进行分割后的示意图; 图3是根据本发明的一用于自动白平衡方法的一图像中块位置权重 的分布示意图;图4是本发明所述自动白平衡装置的结构示意图。
具体实施方式
如图1所示是本发明所述自动白平衡方法的流程示意图。首先,在步骤101,将图像捕获装置捕获到的当前图像分割成像素块, 如可分割成m^个像素块,其中m的选择取决于图像的高度和宽度,为本 领域的技术人员所熟悉的是,其中每个像素块包括一个或多个像素点。如 图2所示,为将一捕获到的图像分割成64 (8*8=64)块的示例。随后,进入步骤102,分别求取分割所得的各个像素块中所含像素点 的R、 G、 B的平均值。在步骤103,将各像素块的颜色空间从(R, G, B)线性转换成由亮 度信号(Y)和两个色差信号(Cb, Cr)组合而成的空间,即(Y, Cb, Cr)。 在一个实施例中所述线性转换关系可以由如下表达式来表示<formula>formula see original document page 9</formula>
随后,在步骤104,对转换所得的各像素块的(Y, Cb, Cr)值,根据白点判断准则,判断当前像素块是否属于白点块,若属于白点块则进入 步骤105,否则直接进入步骤107;在一个实施例中,可采用如下准则进 行判断,即,若一像素块的(Y, Cb, Cr)空间满足下式,则说明该像素 块属于白点块-其中,-是预定义的阈值,如可取-=50。例如,对于一 (R, G, B)值为 R=105、 G二IOO、 B=112的像素块,根据步骤306中的公式,其转换后的(Y、 Cb、 Cr)值为Y二102、 Cb=0、 Cr=2,因此按照上式所表示的白点判断准则, 可知该像素块属于白点块;而当一像素的(R, G, B)值为R二225、 G=10、 B二10时,其转换后的(Y、 Cb、 Cr)的结果是Y二75, Cb=-32, Cr=108,因 此经过判断,该像素块不满足白点判断准则,因此不属于白点块。随后进入步骤105,对判断为属于白点块的像素块分别求取与各预定 义发光源间的欧式距离,而对于那些不属于白点块的像素块则不参与所述 欧式距离的计算,因为如果这些不属于白点块的RGB值也被纳入计算,则 会使其他像素的真实色彩偏移失真,结果导致图像偏色。其中,所述预定 义发光源可以是如下形式的组合(Rg, Gg, Bg, Cb, Cr),其中,Rg、 Gg 和Bg分别表示该预定义发光源对应于R、 G、 B三基色的白平衡增益值。 如日光下的光源可预定义为(1.18, 1,0.81, 17,-12),荧光灯的光源可预 定义为(1. 51, 1, 0. 91, 9, -15);所述预定义的发光源都是可调的。欧式距 离可依据如下表达式进行计算Distance:(Cbl-Cb2)*(Cbl-Cb2) + (Cbl-Cb2)*(Crl-Cr2) + (Cr1-Cr2)* (Crl<formula>formula see original document page 11</formula>其中,Cbl和Crl为预定义光源的色差信号,Cb2和Cr2为属于白点 块的像素块的色差信号;在步骤106,对由步骤105计算所得的各个欧式 距离用块位置权重w分别进行修正,其中,该修正过程可依据如下表达式 进行计算,艮卩Distance二Distsance氺w 如图3所示,为当前图像上对应于各像素块所取的块位置权重w的分布示 意图。随后进入步骤107,判断是否当前图像中所有的像素块都完成了步骤 102至步骤106的操作,若是则进入步骤108,否则回到步骤102对下一 个像素块进行相应的操作。在步骤108,对各个预定义的发光源进行欧式距离的累计,得到各个 预定义发光源的累计欧式距离,对各个预定义光源的累计欧式距离进行比 较,从而得到最小欧式距离。将该最小欧式距离所对应的预定义发光源确 定为发光源,并用所该被确定发光源所对应的白平衡增益值作为后续迭代 计算的初始白平衡增益值。在步骤109,使用当前白平衡增益值Rg、 Gg和Bg对像素块进行校正。 其中,该校正过程可依据如下表达式进行计算,艮P:新的块平均R值二块平均R值4 Rg;新的块平均G值=块平均6值* Gg;新的块平均B值=块平均B值本Bg;随后进入步骤110和步骤111,对该校正后的像素块进行从(R, G,B)到(Y, Cb, Cr)颜色空间的转换,并依据白点判断准则判断各校正后 的像素块是否属于白点块。如果属于白点块,则进入步骤112,否则直接 进入歩骤113。这两个步骤的实现方式分别与步骤103和歩骤104相同。 在步骤112,将当前属于白色块的像素块的色差Cb和Cr累计到总色 差Cb,和Crz中,而对不属于白色块的像素块的色差则不累计到总色差Cbz 和Crz中。在步骤113,判断是否当前图像中的所有像素块都完成了步骤110到 步骤112的操作,若是则进入步骤114,否则,回到步骤110继续对下一 个像素块进行颜色空间的转换。在步骤114,即当当前图像的所有的像素块都分析完之后,对最后计 算所得的总色差Cb,和Ci^进行平均,求取平均色差5和5的值。在步骤115,判断所述平均色差5和5的绝对值和是否小于预先定 义的阚值,若是则该跳出迭代白平衡计算,表示完成了整个自动白平衡增 益值计算过程;否则进入步骤116。其中,在一个实施例中,所述预先定 义的阈值可取为2。在步骤116,根据平均色差5和5来调整当前的白平衡增益值。在 一个实施例中,可以按照下面的规则来调整当前的白平衡增益值(1) 当5的绝对值大于5的绝对值时,如果5大于0,则按一定 的步长减小B彩色分量的白平衡增益,否则按一定的步长增加B彩色分量 的白平衡增益;(2) 当5的绝对值小于5的绝对值时,如果5大于0,则按一定的 步长减小R彩色分量的白平衡增益,否则按一定的步长增加R分量的白平
衡增益。经过步骤116之后,得到新的白平衡增益值。利用该新的白平衡增益 值,回到步骤109进行新一轮的迭代白平衡计算,直到满足步骤115判断 条件后退出迭代计算,从而得到合适的RGB各自的白平衡增益值。完成对所述合适自动白平衡值的计算后,使用该合适自动白平衡值对 整个图像所包括的所有像素点进行校正,从而实现了对整个图像的自动白 平衡过程。为了实现上述方法,本发明可以使用如图4所示的自动白平衡装置400 来实现。该自动白平衡装置400包括图像分割模块401、图像发光源确 定模块402、白平衡增益迭代计算模块403和图像校正模块404。其中,图像分割模块401,用于将由图像捕获输入模块300获取的图 像分割成像素块,如分割成由ir^m个像素块,并可得到每一个像素块的图 像信息,如R, G, B的平均值。而图像发光源确定模块402,还进一步包括颜色空间转换模块,用于将像素块的颜色空间由(R, G, B)线性转 换成(Y, Cb, Cr);欧式距离计算模块,用于计算属于白点块的像素块与各预定义发光源 间的欧式距离;发光源确定模块,用于将最小欧式距离所对应的预定义发光源确定为 发光源。白平衡增益迭代计算模块403,用于迭代计算图像的白平衡增益值, 以求得一合适的白平衡增益值,进一步包括
像素块校正模块,用于使用当前白平衡增益值来校正前图像中的所有像素块;颜色空间转换模块;白点块判断模块,用于判断像素块是否属于白点块; 平均色差计算模块,用于计算平均色差(5, 5); 白平衡增益调整模块,用于利用所述平均色差(5, 5)调整当前 白平衡增益值。图像校正模块404,通过将整个图像中的所有像素点的RGB颜色分量 值乘以由白平衡增益调整模块最终求得的合适的白平衡增益值,并将该乘 积送入白平衡输出模块500中,从而实现对图像的白平衡校正。
权利要求
1、一种自动白平衡方法,包括将捕获到的图像分割成像素块的步骤;其特征在于,还包括确定图像的发光源的步骤;迭代计算白平衡增益值的步骤,用于迭代计算图像的白平衡增益值,以获得一合适白平衡增益值;及使用所述合适白平衡增益值对整个图像中的像素点进行白平衡校正的步骤。
2、 根据权利要求l所述的自动白平衡方法,其特征在于,所述获取 图像发光源的步骤包括计算所述像素块R、 G、 B的平均值的步骤;将所述像素块的颜色空间由(R, G, B)线性转换成(Y, Cb, Cr)的 步骤,其中Y为亮度信号,Cb和Cr为色差信号;将所述像素块依据白点判断准则进行判断的步骤;分别计算属于白点块的像素块与各预定义发光源间的欧式距离的步 骤;及将最小欧式距离所对应的预定义发光源确定为所述图像的发光源的 步骤。
3、 根据权利要求2所述的自动白平衡方法,其特征在于,所述最小 欧式距离通过以下方法计算对各个预定义发光源进行欧式距离的累计, 求得各个预定义发光源的累计欧式距离,然后对所述各个预定义光源的累 计欧式距离进行比较,从而得到最小欧式距离。
4、 根据权利要求l所述的自动白平衡方法,其特征在于,所述迭代计算白平衡增益值的步骤包括使用当前白平衡增益值来校正前图像中像素块的步骤; 对校正后的像素块进行从(R, G, B)到(Y, Cb, Cr)颜色空间转换 的步骤;将所述像素块依据白点判断准则进行判断的步骤; 计算平均色差(5, 5)的步骤;利用所述平均色差(S, 5)调整当前白平衡增益值的步骤。
5、 根据权利要求2或4所述的自动白平衡方法,其特征在于,所述 白点判断准则为若一像素块的(Y, Cb, Cr)空间满足公式 yHC6HO^-,则说明所述像素块属于白点块,其中-是预定义的阈值。
6、 根据权利要求4所述的自动白平衡方法,其特征在于,所述迭代 计算白平衡增益值的步骤中后续迭代的初始白平衡增益值取所述被确定 发光源所对应的白平衡增益值。
7、 根据权利要求4或6所述的自动白平衡方法,其特征在于,当所 述平均色差(5, 5)的绝对值和是否小于预先定义的阈值时,说明此 时的白平衡增益值是所求的合适的白平衡增益值,跳出所述迭代计算白平 衡增益值的步骤。
8、 根据权利要求4或6所述的自动白平衡方法,其特征在于,所述计算平均色差(5, 5)的步骤包括使用属于白点块的像素块计算总色差(Cbz, Crz);对总色差(Cbz, Crz)进行平均,求得平均色差(5, 5)。
9、 根据权利要求4或6所述的自动白平衡方法,其特征在于,所述 利用所述平均色差(5, 5)调整当前白平衡增益值的步骤中使用如下 方法来对当前白平衡增益值进行调整(1) 当5的绝对值大于5的绝对值时,如果5大于0,则按一定 的步长减小B彩色分量的白平衡增益,否则按一定的步长增加B彩色分量 的白平衡增益;(2) 当5的绝对值小于5的绝对值时,如果5大于0,则按一定的 步长减小R彩色分量的白平衡增益,否则按一定的步长增加R分量的白平 衡增益。
10、 一种自动白平衡装置,包括图像分割模块,用于将捕获到的图像分割成像素块;图像校正模块,用于对整个图像中的像素点进行白平衡 校正;其特征在于,还包括 图像发光源确定模块;白平衡增益迭代计算模块,用于迭代计算图像的白平衡增益值,以求 得一合适的白平衡增益值。
11、 根据权利要求10所述的自动白平衡装置,其特征在于,所述图像发光源确定模块包括颜色空间转换模块,用于将像素块的颜色空间由(R, G, B)线性转 换成(Y, Cb, Cr);白点块判断模块,用于依据白点判断准则判断当前像素块是否属于白 点块;欧式距离计算模块,用于计算属于白点块的像素块与各预定义发光源 间的欧式距离;发光源确定模块,用于将最小欧式距离所对应的预定义发光源确定为 发光源。
12、根据权利要求10所述的自动白平衡装置,其特征在于,所述白 平衡增益迭代计算模块包括-像素块校正模块,用于使用当前白平衡增益值来校正前图像中的像素块;颜色空间转换模块;白点块判断模块,用于判断像素块是否属于白点块; 平均色差计算模块,用于计算平均色差(5, 5); 白平衡增益调整模块,用于利用所述平均色差(5, 5)调整当前 白平衡增益值。
全文摘要
本发明公开了一种自动白平衡方法和装置,可消除因图像包含大块高饱和度的物体时所产生的物体色彩失真,并能快速调整各种光源条件下的红、绿、蓝三基色成分的白平衡增益值。所述自动白平衡方法包括将捕获到的图像分割成像素块的步骤;确定图像的发光源的步骤;迭代计算白平衡增益值的步骤,用于迭代计算图像的白平衡增益值,以获得一合适白平衡增益值;使用所述合适白平衡增益值对整个图像中的像素点进行白平衡校正的步骤。所述自动白平衡装置包括图像分割模块、图像发光源确定模块、白平衡增益迭代计算模块和图像校正模块。
文档编号H04N9/73GK101166285SQ20061011716
公开日2008年4月23日 申请日期2006年10月16日 优先权日2006年10月16日
发明者冯晓光, 林福辉, 罗小伟 申请人:展讯通信(上海)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1