CN105430367B - 一种自动白平衡的方法和装置 - Google Patents
一种自动白平衡的方法和装置 Download PDFInfo
- Publication number
- CN105430367B CN105430367B CN201511024504.8A CN201511024504A CN105430367B CN 105430367 B CN105430367 B CN 105430367B CN 201511024504 A CN201511024504 A CN 201511024504A CN 105430367 B CN105430367 B CN 105430367B
- Authority
- CN
- China
- Prior art keywords
- point
- clustering cluster
- statistics
- cluster
- clustering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/46—Colour picture communication systems
- H04N1/56—Processing of colour picture signals
- H04N1/60—Colour correction or control
- H04N1/6077—Colour balance, e.g. colour cast correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
- H04N23/84—Camera processing pipelines; Components thereof for processing colour signals
- H04N23/88—Camera processing pipelines; Components thereof for processing colour signals for colour balance, e.g. white-balance circuits or colour temperature control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/183—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a single remote source
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/64—Circuits for processing colour signals
- H04N9/73—Colour balance circuits, e.g. white balance circuits or colour temperature control
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Color Television Image Signal Generators (AREA)
- Processing Of Color Television Signals (AREA)
Abstract
本发明提供一种自动白平衡的方法和装置,该方法包括:获得自动白平衡的白区;针对待检测图像的每个统计点,确定位于白区内的所有统计点;对位于白区内的所有统计点进行聚类,形成聚类簇;针对每个聚类簇,如果所述聚类簇内的统计点数量大于预设阈值,则确定位于所述聚类簇内的统计点均为白点;如果所述聚类簇内的统计点数量不大于所述预设阈值,则确定位于所述聚类簇内的统计点均为非白点;基于白点的聚类簇,利用位于所述聚类簇内的统计点计算所述待检测图像的白平衡增益。通过本发明的技术方案,有效分离白点与干扰点,并将干扰点确定为非白点,从而剔除落入白区内的干扰点,提高复杂场景下自动白平衡处理的精度与稳定性。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种自动白平衡的方法和装置。
背景技术
人眼的可见光线是由7种色彩的光谱叠加组成,当人们使用肉眼观看世界时,在不同的光线下,对相同颜色的感觉基本是相同的。例如,在早晨旭日初升时,观看一个白色的物体时,感到它是白的;在夜晚昏黄的灯光下,观看一个白色的物体时,感到它仍然是白的。这是由于人类从出生以后的成长过程中,人的大脑已经对不同光线下的物体的色彩还原有了适应性。
但是,视频监控系统的前端设备(如模拟摄像机、网络摄像机、数码相机等)并没有人眼的适应性,由于不同色温的光颜色成分不同,如高色温光线多偏蓝绿,而低色温光线多偏红黄,因此,针对同一物体,在不同色温的光线下,前端设备采集到图像的颜色并不相同。具体的,前端设备会按照R(红色)、G(绿色)、B(蓝色)三个分量采集图像,而采集到的各分量与物体本身颜色、环境光色温、光学滤镜及传感器对各分量光的感光性能等有关,最终采集到图像的颜色可能与物体实际效果不符。为了使前端设备采集到图像的颜色最大程度接近人眼对色彩的感受,就需要对图像进行白平衡等处理。
白平衡就是白色的平衡,通俗的理解就是让白色的图像依然为白色,调整白平衡的过程叫做白平衡调整,而AWB(Automatic White Balance,自动白平衡)是白平衡调整的一个重要方式。其中,AWB通常为前端设备的默认配置,且AWB通过调节三基色分量(红色、绿色、蓝色),使得在实际场景中,原本白色的部分依然被显示为白色,也就是对白色物体的还原过程。
目前,基于先验知识的AWB算法,通过设置一个白区,并将落入该白区的统计点作为白点,而未落入该白区的统计点作为非白点。基于这样的方式,可以确定出统计点是白点,即认为该统计点对应的物体实际颜色为白色。
但是,在实际使用场景中,由于光源色温的变化、多个光源同时补光、局部彩色景物等因素的干扰,落入白区的统计点可能并不是白点,彩色区域可能被当作白点进行计算,从而导致白平衡偏色。例如,晴天室外有一黄色物体,该黄色物体被当作低色温下的白点时,会导致白色区域偏蓝,黄色区域泛白。
发明内容
本发明提供一种自动白平衡的方法,所述方法包括以下步骤:
获得自动白平衡的白区;
针对待检测图像的每个统计点,确定位于所述白区内的所有统计点;
对位于所述白区内的所有统计点进行聚类,形成聚类簇;
针对每个聚类簇,如果所述聚类簇内的统计点数量大于预设阈值,则确定位于所述聚类簇内的统计点均为白点;如果所述聚类簇内的统计点数量不大于所述预设阈值,则确定位于所述聚类簇内的统计点均为非白点;
基于白点的聚类簇,利用位于所述聚类簇内的统计点计算所述待检测图像的白平衡增益。
所述白区由多个子白区组成,每个子白区包括多个子区域;所述对位于所述白区内的所有统计点进行聚类,形成聚类簇的过程,具体包括:
统计每个子区域内的统计点数量;以每个子区域的中心作为聚类对象,以每个子区域内的统计点数量作为聚类对象的密度,并采用基于密度的空间聚类算法将子区域进行聚类,形成聚类簇;
针对所述白区内的每个统计点,确定所述统计点所属的子区域,并确定所述子区域所属的聚类簇,并将所述统计点归类到所述聚类簇。
所述利用位于所述聚类簇内的统计点计算所述待检测图像的白平衡增益的过程,具体包括:获得所述聚类簇的聚类特征和位于所述聚类簇的统计点的三基色信息;利用所述聚类特征为位于所述聚类簇的统计点分配权重值;
利用位于所述聚类簇的统计点的权重值以及位于所述聚类簇的统计点的三基色信息,计算所述待检测图像的白平衡增益。
所述利用所述聚类特征为位于所述聚类簇的统计点分配权重值的过程,具体包括:当所述聚类特征是只存在一个包含白点的聚类簇时,则为所述聚类簇内的每个统计点分配相同的权重值;或者,当所述聚类特征是存在至少两个包含白点的聚类簇时,则为同一个聚类簇内的每个统计点分配相同的权重值,并利用每个聚类簇对应的权重参数为不同聚类簇内的统计点分配不同的权重值;聚类簇对应的权重参数包括以下之一或者任意组合:聚类簇内的统计点数量、聚类簇的中心位置对应的色温、聚类簇的中心位置与黑体轨迹曲线的距离关系;
其中,当聚类簇内的统计点数量越多时,则所述聚类簇内的统计点分配到的权重值越大;当聚类簇的中心位置对应的色温越靠近采样光源色温中间段时,则所述聚类簇内的统计点分配到的权重值越大;当聚类簇的中心位置与黑体轨迹曲线之间的距离越近时,则所述聚类簇内的统计点分配到的权重值越大。
所述统计点的三基色信息具体包括:所述统计点的G分量响应值、R分量响应值、B分量响应值,所述利用位于所述聚类簇的统计点的权重值以及位于所述聚类簇的统计点的三基色信息,计算所述待检测图像的白平衡增益的过程,具体包括:利用如下公式计算所述待检测图像的R通道增益CrAvg:利用如下公式计算所述待检测图像的B通道增益CbAvg:计算所述待检测图像的G通道增益CgAvg为指定数值;
其中,i表示聚类簇内的统计点,W(i)表示聚类簇内的第i个统计点的权重值,Cr(i)表示聚类簇内的第i个统计点的G分量响应值/R分量响应值,Cb(i)表示聚类簇内的第i个统计点的G分量响应值/B分量响应值。
本发明提供一种自动白平衡的装置,所述装置具体包括:获得模块,用于获得自动白平衡的白区;确定模块,用于针对待检测图像的每个统计点,确定位于所述白区内的所有统计点;聚类模块,用于对位于所述白区内的所有统计点进行聚类,形成聚类簇;分离模块,用于针对每个聚类簇,如果所述聚类簇内的统计点数量大于预设阈值,则确定位于所述聚类簇内的统计点均为白点;如果所述聚类簇内的统计点数量不大于所述预设阈值,则确定位于所述聚类簇内的统计点均为非白点;计算模块,用于基于白点的聚类簇,利用位于所述聚类簇内的统计点计算所述待检测图像的白平衡增益。
所述白区由多个子白区组成,且每个子白区包括多个子区域;
所述聚类模块,具体用于在对位于所述白区内的所有统计点进行聚类,形成聚类簇的过程中,统计每个子区域内的统计点数量;以每个子区域的中心作为聚类对象,以每个子区域内的统计点数量作为聚类对象的密度,并采用基于密度的空间聚类算法将子区域进行聚类,形成聚类簇;针对所述白区内的每个统计点,确定所述统计点所属的子区域,并确定所述子区域所属的聚类簇,并将所述统计点归类到所述聚类簇。
所述计算模块,具体用于在利用位于所述聚类簇内的统计点计算所述待检测图像的白平衡增益的过程中,获得所述聚类簇的聚类特征和位于所述聚类簇的统计点的三基色信息;利用所述聚类特征为位于所述聚类簇的统计点分配权重值;利用位于所述聚类簇的统计点的权重值以及位于所述聚类簇的统计点的三基色信息,计算所述待检测图像的白平衡增益。
所述计算模块,具体用于在利用所述聚类特征为位于所述聚类簇的统计点分配权重值的过程中,当所述聚类特征是只存在一个包含白点的聚类簇时,则为所述聚类簇内的每个统计点分配相同的权重值;或者,当所述聚类特征是存在至少两个包含白点的聚类簇时,则为同一个聚类簇内的每个统计点分配相同的权重值,并利用每个聚类簇对应的权重参数为不同聚类簇内的统计点分配不同的权重值;其中,聚类簇对应的权重参数包括以下之一或者任意组合:聚类簇内的统计点数量、聚类簇的中心位置对应的色温、聚类簇的中心位置与黑体轨迹曲线的距离关系;
其中,当聚类簇内的统计点数量越多时,则所述聚类簇内的统计点分配到的权重值越大;当聚类簇的中心位置对应的色温越靠近采样光源色温中间段时,则所述聚类簇内的统计点分配到的权重值越大;当聚类簇的中心位置与黑体轨迹曲线之间的距离越近时,则所述聚类簇内的统计点分配到的权重值越大。
所述统计点的三基色信息具体包括:所述统计点的G分量响应值、R分量响应值、B分量响应值;所述计算模块,具体用于在利用位于所述聚类簇的统计点的权重值以及位于所述聚类簇的统计点的三基色信息,计算所述待检测图像的白平衡增益的过程中,利用如下公式计算待检测图像的R通道增益CrAvg:利用如下公式计算所述待检测图像的B通道增益CbAvg:计算所述待检测图像的G通道增益CgAvg为指定数值;
其中,i表示聚类簇内的统计点,W(i)表示聚类簇内的第i个统计点的权重值,Cr(i)表示聚类簇内的第i个统计点的G分量响应值/R分量响应值,Cb(i)表示聚类簇内的第i个统计点的G分量响应值/B分量响应值。
基于上述技术方案,本发明实施例中,通过对落入白区的统计点进行聚类,从而有效分离白点与干扰点,并将干扰点确定为非白点,从而剔除落入白区内的干扰点。在计算白平衡增益时,可以剔除干扰点对白平衡的影响,剔除局部彩色景物与多光源补光、运动物体、混合色温等对白平衡的影响,使得自动白平衡能够适用于存在局部彩色景物与多光源补光、存在运动彩色物体、混合色温等复杂场景下,提高复杂场景下自动白平衡处理的精度与稳定性。
附图说明
图1是本发明一种实施方式中的自动白平衡的方法的流程图;
图2A-图2G是本发明一种实施方式中的黑体轨迹曲线的示意图;
图3A-图3C是本发明一种实施方式中的对统计点进行聚类的示意图;
图4是本发明一种实施方式中的前端设备的硬件结构图;
图5是本发明一种实施方式中的自动白平衡的装置的结构图。
具体实施方式
针对现有技术中存在的问题,本发明实施例中提出一种自动白平衡(即AWB)的方法,该自动白平衡的方法可以应用在视频监控系统的前端设备(如模拟摄像机、网络摄像机、数码相机等)上,如可以应用在前端设备的图像传感器上。如图1所示,该自动白平衡的方法具体可以包括以下步骤:
步骤101,获得自动白平衡的白区。
为了判断统计点所对应物体的实际颜色是否为白色,可以在坐标系统(该坐标系统可以为G/R_G/B坐标系统或者r-b坐标系统,后续以r-b坐标系统为例进行说明)中绘制一个白区,统计点落入白区内即认为满足白点要求,该统计点为白点。在实际应用中,所有符合黑体辐射曲线的光源的白点,在r-b坐标系统中表现为基本落在一个曲线(即黑体轨迹曲线)上,该曲线的两端分别为色温较高与色温较低的区域。基于此,与该曲线距离较小的统计点可以被认为是白点。由于该曲线的位置及形状不固定,无法使用有效的数学表达式来表示该曲线,因此难以使用统计点与曲线的距离大小来绘制白区。
在此基础上,本发明实施例中,可以沿着色温变化方向划分多个子白区,每个子白区可以为一个多边形,为了方便描述,后续以子白区是四边形为例进行说明,且多个子白区组成该白区,这样就可以绘制出相应的白区。其中,使用两对斜率分别为正与负的直线来描述四边形的子白区,如果一个统计点的值落在该子白区的四边形内,则认为该统计点落在白区内。如果一个统计点的值未落在该子白区的四边形内,则认为该统计点未落在白区内。进一步的,还可以绘制子白区对应的外接四边形,该外接四边形由两条水平直线和两条垂直直线组成,当统计点位于两条水平直线之间,且位于两条垂直直线之间时,则判断统计点是否位于子白区的四边形内。当统计点不位于两条水平直线之间,和/或,不位于两条垂直直线之间时,则直接确定统计点不位于子白区的四边形内。
在一种可行的方式中,获得自动白平衡的白区的方式可以包括但不限于:
步骤1,采集N个不同色温的符合黑体辐射特性光源下的标准灰卡图像,并获得每个标准灰卡图像的三基色信息。其中,N的数值通常可以为大于等于3的正整数。在实际应用中,也可以采集其它类型的图像,如室外阳光下的图像,对此不再赘述,以符合黑体辐射特性光源下的标准灰卡图像为例进行说明。
为了能够拟合N个不同色温的符合黑体辐射特性光源下的标准灰卡图像对应的黑体轨迹曲线,采集N个不同色温的满足黑体辐射特性的光源下灰色物体的标准灰卡图像,即图像传感器输出的图像。其中,色温(Tc)表示光源光色的尺度,单位是K(开尔文)。色温越高,短波成分越多,图像偏蓝绿色,色温越低,长波成分越多,图像偏红黄色。色温只表示光源的光谱成分,而不表明发光的强弱。光源的色温是通过对比它的色彩和理论的热黑体辐射来确定。热黑体辐射体与光源的色彩相匹配时的开尔文温度,就是那个光源的色温,与普朗克黑体辐射定律相联系。
假设N的取值为5,并采集色温(Tc)为3000K的标准灰卡图像、色温(Tc)为4000K的标准灰卡图像、色温(Tc)为5000K的标准灰卡图像、色温(Tc)为6000K的标准灰卡图像、色温(Tc)为7000K的标准灰卡图像。
本发明实施例中,该三基色信息具体可以包括但不限于以下之一或者任意组合:r值、b值、g值。基于此,获得标准灰卡图像的三基色信息的过程,具体可以包括但不限于如下方式:统计该标准灰卡图像的R分量平均值、B分量平均值、G分量平均值。计算r值为R分量平均值/(R分量平均值+G分量平均值+B分量平均值),即计算b值为B分量平均值/(R分量平均值+G分量平均值+B分量平均值),即计算g值为G分量平均值/(R分量平均值+G分量平均值+B分量平均值),即进一步的,可以将r值和b值确定为三基色信息,或者,可以将r值和g值确定为三基色信息,或者,可以将b值和g值确定为三基色信息。
在实际应用中,三基色信息为r值和b值的处理,与三基色信息为r值和g值的处理,与三基色信息为b值和g值的处理均相同,为了方便描述,在本发明实施例的后续过程中,以三基色信息为r值和b值为例进行说明。
在获得5个标准灰卡图像的三基色信息时,假设针对色温(Tc)为3000K的标准灰卡图像,r值为0.6,b值为0.2。针对色温(Tc)为4000K的标准灰卡图像,r值为0.5,b值为0.25。针对色温(Tc)为5000K的标准灰卡图像,r值为0.4,b值为0.3。针对色温(Tc)为6000K的标准灰卡图像,r值为0.3,b值为0.4,针对色温(Tc)为7000K的标准灰卡图像,r值为0.2,b值为0.7。
步骤2,利用N个不同色温以及每个色温对应的三基色信息(即N个色温分别对应的标准灰卡图像的三基色信息)拟合黑体轨迹曲线。
其中,由于黑体轨迹曲线(又称为普朗克曲线)上中间段的点,为人眼感受为白光的色度值所在的位置,高色温段为冷白,低色温段为暖白,因此,可以将落在黑体轨迹曲线一定距离内的点作为白点。基于这一原理,本发明实施例中,需要拟合黑体轨迹曲线,并利用黑体轨迹曲线进行自动白平衡。
本发明实施例中,利用N个不同色温以及每个色温对应的三基色信息拟合黑体轨迹曲线的过程,具体可以包括但不限于如下方式:从三基色信息中选取两个信息,并将这两个信息分别作为横坐标和纵坐标。在这个坐标系中,在每个三基色信息对应的坐标位置绘制一个采样点,得到N个采样点,每个采样点表征该三基色信息对应的色温。之后,将N个采样点拟合出一条黑体轨迹曲线。
将三基色信息对应的r作为横坐标,将三基色信息对应的b作为纵坐标,或者,将三基色信息对应的b作为横坐标,将三基色信息对应的r作为纵坐标。
如图2A所示,为拟合黑体轨迹曲线的示意图,图2A中是以r作为横坐标,b作为纵坐标为例进行说明的。其中,在三基色信息(r值为0.6,b值为0.2)对应的坐标位置绘制一个采样点,该采样点表征Tc=3000K。在三基色信息(r值为0.5,b值为0.25)对应的坐标位置绘制一个采样点,该采样点表征Tc=4000K。在三基色信息(r值为0.4,b值为0.3)对应的坐标位置绘制一个采样点,该采样点表征Tc=5000K。在三基色信息(r值为0.3,b值为0.4)对应的坐标位置绘制一个采样点,该采样点表征Tc=6000K。在三基色信息(r值为0.2,b值为0.7)对应的坐标位置绘制一个采样点,该采样点表征Tc=7000K。
基于上述处理,得到5个采样点,并将这5个采样点拟合出图2A所示的黑体轨迹曲线。进一步的,还可以将图2A所示的黑体轨迹曲线转换成图2B所示的黑体轨迹曲线,图2A所示的黑体轨迹曲线是2维曲线,表示黑体轨迹曲线上r,b的空间关系,图2B所示的黑体轨迹曲线是3维曲线,表示黑体轨迹曲线上r,b,Tc的空间关系,后续以图2A所示的黑体轨迹曲线为例进行说明。
步骤3,在黑体轨迹曲线上选择M个标定点,且M大于等于N。
本发明实施例中,在黑体轨迹曲线上选择M个标定点的过程,具体可以包括但不限于如下方式:将N个采样点中的每个采样点确定为标定点。或者,针对黑体轨迹曲线上的任意相邻两个采样点,判断两个采样点在黑体轨迹曲线上经过的距离是否大于预设距离;如果是,则在两个采样点之间插入新采样点,以使插入新采样点后的任意相邻两个采样点,在黑体轨迹曲线上经过的距离不大于预设距离;将黑体轨迹曲线上的所有采样点确定为标定点。此外,如果判断两个采样点在黑体轨迹曲线上经过的距离不大于预设距离,则可以不在两个采样点之间插入新采样点,也可以在两个采样点之间插入新采样点。
针对方式一,可以直接将图2A所示的5个采样点确定为标定点。
针对方式二,对于图2A所示的5个采样点,假设表征Tc=7000K的采样点与表征Tc=6000K的采样点,在黑体轨迹曲线上经过的距离大于预设距离max_dist时,则可以在这两个采样点之间插入一个或者多个新采样点,且在插入新采样点之后,表征Tc=7000K的采样点与表征Tc=6000K的采样点之间的任意相邻两个采样点,在黑体轨迹曲线上经过的距离不大于预设距离max_dist。在对图2A所示的任意相邻两个采样点进行上述处理之后,则可以得到图2C所示的黑体轨迹曲线,该黑体轨迹曲线上共包含14个标定点。
其中,预设距离max_dist的取值可以根据实际经验进行任意设置。上述的两个采样点之间的距离,均是指这两个采样点在黑体轨迹曲线上经过的距离,因此,预设距离max_dist也是指在黑体轨迹曲线上经过的距离。
步骤4,针对每个标定点,获得该标定点所在区域的四边形的子白区,且所有的子白区组成的区域为白区,即步骤101中获得的自动白平衡的白区。
其中,在获得黑体轨迹曲线上的M个标定点之后,对于黑体轨迹曲线上的第一个标定点和最后一个标定点,可以不获得这两个标定点所在区域的四边形的子白区。对于黑体轨迹曲线上的其它所有标定点,获得各标定点所在区域的四边形的子白区的处理相同,以其中一个标定点为例进行说明。
本发明实施例中,获得标定点所在区域的四边形的子白区的过程,具体可以包括但不限于如下方式:获得该标定点在黑体轨迹曲线上相邻的第一标定点和第二标定点。获得第一线段对应的第一中垂线以及第二线段对应的第二中垂线;其中,该第一线段为用于连接该标定点与该第一标定点的线段,且该第二线段为用于连接该标定点与该第二标定点的线段。进一步的,以第一线段和第一中垂线的交点为起始位置,分别向该第一中垂线的两个方向各延伸预设第一长度,得到第一位置点和第二位置点。以第二线段和第二中垂线的交点为起始位置,分别向该第二中垂线的两个方向各延伸预设第二长度,得到第三位置点和第四位置点。进一步的,将第一位置点、第二位置点、第三位置点、第四位置点组成的四边形,确定为标定点所在区域的四边形的子白区。
其中,预设第一长度的取值和预设第二长度的取值均可以根据实际经验进行任意设置,且该预设第一长度与该预设第二长度可以相同,也可以不同。
如图2D所示,假设Pi(ri,bi)为待获得子白区的标定点,Pi(ri,bi)表示第i个标定点,且Pi(ri,bi)是ri和bi在黑体轨迹曲线上对应的标定点,假设ri为0.3,bi为0.4,则该Pi(ri,bi)是黑体轨迹曲线上表征Tc=6000K的标定点。获得标定点Pi(ri,bi)在黑体轨迹曲线上相邻的第一标定点Pi-1(ri-1,bi-1)以及第二标定点Pi+1(ri+1,bi+1)。在标定点Pi(ri,bi)与第一标定点Pi-1(ri-1,bi-1)之间连线,得到第一线段,在标定点Pi(ri,bi)与第二标定点Pi+1(ri+1,bi+1)之间连线,得到第二线段。进一步的,获得第一线段对应的第一中垂线以及第二线段对应的第二中垂线。以第一线段和第一中垂线的交点为起始位置,分别向该第一中垂线的两个方向各延伸预设第一长度(如width_thr),得到第一位置点(r_min)和第二位置点(b_max)。以第二线段和第二中垂线的交点为起始位置,分别向该第二中垂线的两个方向各延伸预设第一长度(如width_thr),得到第三位置点(b_min)和第四位置点(r_max)。上述四个线段组成一个四边形,该四边形是标定点Pi(ri,bi)对应的子白区。
在获得每个标定点对应的子白区后,可以将所有标定点对应的子白区作为前端设备的白区。如图2E所示,为包含多个子白区的完整白区的示意图,即利用N个不同色温的标准灰卡图像获得了包含多个子白区的完整白区。
步骤102,针对待检测图像的每个统计点,确定位于白区内的所有统计点。
在获得包含多个子白区的白区之后,针对待检测图像的每个统计点,依次判断每个统计点是否落在白区内。如果一个统计点落在一个子白区的四边形内,则认为该统计点落在该子白区,继而确定该统计点落在白区内。
为了判断一个统计点是否落在子白区的四边形内,针对待检测图像的任意统计点P(rp,bp),通过统计点的r值和b值确定统计点P(rp,bp),对于r值和b值的确定方式,参见上述步骤,在此不再赘述。针对统计点P(rp,bp)依次遍历所有子白区中的每个子白区,并判断统计点P(rp,bp)是否位于当前遍历的子白区的四边形内,如果是,则不再遍历新的子白区,确定统计点P(rp,bp)位于当前遍历的子白区内。如果所有子白区遍历完成,仍然未确定出统计点位于某个子白区的四边形内,则确定统计点P(rp,bp)没有位于子白区内。
本发明实施例中,针对所有子白区中的任意的一个子白区,判断统计点是否位于该子白区的四边形内的过程,具体可以包括但不限于如下方式:获得连接第一位置点与第二位置点的第三线段的第一斜率和第一截距,获得连接第三位置点与第四位置点的第四线段的第二斜率和第二截距,基于此,可以利用第一斜率、第一截距、第二斜率、第二截距,判断该统计点是否落在第三线段和第四线段之间。获得连接第一位置点与第三位置点的第五线段的第三斜率和第三截距,获得连接第二位置点与第四位置点的第六线段的第四斜率和第四截距,基于此,可以利用第三斜率、第三截距、第四斜率、第四截距,判断该统计点是否落在第五线段和第六线段之间。当该统计点落在第三线段和第四线段之间,并且落在第五线段和第六线段之间时,则确定该统计点位于子白区的四边形内;否则,确定该统计点不位于子白区的四边形内。上述方式只是确定统计点是否位于子白区的四边形内的一种可行方式,实际应用中还可以通过其它方式确定统计点是否位于子白区的四边形内,在此不再赘述。
如图2F所示,假设判断统计点P(rp,bp)是否位于标定点Pi(ri,bi)对应的子白区的四边形内,在获得连接第一位置点(r_min)和第二位置点(b_max)的第三线段之后,还可以获得第三线段的第一斜率(k_A_2)和第一截距(b_A_2)。在获得连接第三位置点(b_min)和第四位置点(r_max)的第四线段之后,还可以获得第四线段的第二斜率(k_A_1)和第二截距(b_A_1)。在获得连接第一位置点(r_min)和第三位置点(b_min)的第五线段之后,还可以获得第五线段的第三斜率(k_B_2)和第三截距(b_B_2)。在获得连接第二位置点(b_max)和第四位置点(r_max)的第六线段之后,还可以获得第六线段的第四斜率(k_B_1)和第四截距(b_B_1)。在得到标定点Pi(ri,bi)对应的子白区之后,还可在前端设备上存储第一斜率(k_A_2)和第一截距(b_A_2)、第二斜率(k_A_1)和第二截距(b_A_1)、第三斜率(k_B_2)和第三截距(b_B_2)、第四斜率(k_B_1)和第四截距(b_B_1),以在后续过程直接使用这些信息。
基于此,在第三线段、第四线段、第五线段、第六线段确定之后,即可以计算得出第一斜率(k_A_2)和第一截距(b_A_2)、第二斜率(k_A_1)和第二截距(b_A_1)、第三斜率(k_B_2)和第三截距(b_B_2)、第四斜率(k_B_1)和第四截距(b_B_1),具体的计算方式在此不再赘述。
针对利用第一斜率(k_A_2)、第一截距(b_A_2)、第二斜率(k_A_1)、第二截距(b_A_1),判断该统计点P(rp,bp)是否落在第三线段和第四线段之间的过程,计算bp’=rp*k_A_2+b_A_2,并计算bp”=rp*k_A_1+b_A_1。基于此,如果bp小于bp’,且bp大于bp”,或者,bp大于bp’,且bp小于bp”,则确定该统计点P(rp,bp)落在第三线段和第四线段之间;否则,确定该统计点P(rp,bp)没有落在第三线段和第四线段之间。
针对利用第三斜率(k_B_2)、第三截距(b_B_2)、第四斜率(k_B_1)、第四截距(b_B_1),判断该统计点P(rp,bp)是否落在第五线段和第六线段之间的过程,计算bp’=rp*k_B_2+b_B_2,并计算bp”=rp*k_B_1+b_B_1。基于此,如果bp小于bp’,且bp大于bp”,或者,bp大于bp’,且bp小于bp”,则确定该统计点P(rp,bp)落在第五线段和第六线段之间;否则,确定该统计点P(rp,bp)没有落在第五线段和第六线段之间。
针对上述使用斜截式方程y=k*x+b,判断统计点P(rp,bp)是否落在第三线段和第四线段之间,判断统计点P(rp,bp)是否落在第五线段和第六线段之间的方式,使用的第一截距(b_A_2)、第二截距(b_A_1)、第三截距(b_B_2)、第四截距(b_B_1)均为纵截距。在实际应用中,如果使用其它直线表示方程式,判断统计点P(rp,bp)是否落在第三线段和第四线段之间,判断统计点P(rp,bp)是否落在第五线段和第六线段之间,则使用的第一截距(b_A_2)、第二截距(b_A_1)、第三截距(b_B_2)、第四截距(b_B_1)可能是纵截距和/或横截距,本应用场景下对其它直线表示的方程式,不再详加说明。
本发明实施例中,针对任意的一个子白区,在判断统计点是否位于该子白区的四边形内之前,还可以通过两条水平直线和两条垂直直线组成该子白区的外接四边形,该外接四边形为矩形,且子白区位于该外接四边形内。其中,所述两条水平直线是与所述子白区所在的坐标系的X轴平行的直线,所述两条垂直直线是与所述子白区所在的坐标系的X轴垂直的直线。当统计点位于两条水平直线之间,且统计点位于两条垂直直线之间时,则执行判断统计点是否位于子白区的四边形内的过程;当统计点不位于两条水平直线之间,和/或,统计点不位于两条垂直直线之间时,则直接确定统计点不位于子白区的四边形内,不再执行判断统计点是否位于子白区的四边形内的过程。
如图2G所示,为该子白区的外接四边形的示意图。在判断统计点P(rp,bp)是否位于两条水平直线之间时,只需要比较统计点的纵坐标数值bp与两条水平直线的纵坐标数值的大小即可。在判断统计点P(rp,bp)是否位于两条垂直直线之间时,只需要比较统计点的横坐标数值rp与两条垂直直线的横坐标数值的大小即可。基于上述方式,可以通过比较大小的方式,先初步筛选统计点P(rp,bp)是否位于子白区的外接四边形内,如果不位于子白区的外接四边形内,则说明统计点P(rp,bp)不位于子白区内,可以不再执行判断统计点是否位于子白区的四边形内的过程,从而有效降低计算量,提高运算速度。如果位于子白区的外接四边形内,才去判断统计点P(rp,bp)是否位于子白区内。基于上述先判断统计点P(rp,bp)是否位于子白区的外接四边形,如果位于子白区的外接四边形,才去判断统计点P(rp,bp)是否位于子白区的方式,可以有效降低计算量,避免多次乘法运算,有效减低乘法调用几率,提高运算速度。
基于上述过程,可以确定出位于白区内的所有统计点。而本发明实施例中,并不是直接将位于白区内的统计点确定为白点,而是利用后续步骤对位于白区内的所有统计点进行分析,将其中的干扰点分析出来,将干扰点确定为非白点。
步骤103,对位于白区内的所有统计点进行聚类,形成一个或者多个聚类簇。
其中,本发明实施例后续过程中所指的统计点,均是指白区内的统计点。
本发明实施例中,针对每个四边形的子白区,可以按照等分原理,将四边形的子白区等分成多个子区域,每个子区域是一个多边形的子区域,以子区域是四边形的子区域为例进行说明,如图3A所示。基于此,可以确定出统计点所在的子区域,具体确定方式与统计点所在的子白区的确定方式类似。
例如,为了判断一个统计点是否落在子区域的四边形内,针对待检测图像的任意统计点P(rp,bp),依次遍历所有子区域中的每个子区域,并判断统计点P(rp,bp)是否位于当前遍历的子区域的四边形内,如果是,则不再遍历新的子区域,确定统计点P(rp,bp)位于当前遍历的子区域内。
进一步的,可以基于子区域的四边形的四条边,分别对应的四个斜率以及四个截距,判断出统计点P(rp,bp)是否落在该子区域内,具体确定方式可以参见上述判断统计点是否落在子白区的确定方式,在此不再赘述。
本发明实施例中,对位于白区内的所有统计点进行聚类,形成一个或者多个聚类簇的过程,具体可以包括但不限于如下方式:统计每个子区域内的统计点数量。以每个子区域的中心作为聚类对象,以每个子区域内的统计点数量作为聚类对象的密度,并采用基于密度的空间聚类算法将子区域进行聚类,形成一个或者多个聚类簇。针对白区内的每个统计点,确定该统计点所属的子区域,并确定该子区域所属的聚类簇,并将该统计点归类到该聚类簇。
其中,针对统计每个子区域内的统计点数量的过程,当确定出一个统计点P(rp,bp)落在某个子区域内时,则可以对该子区域内的统计点数量+1,这样,当确定出所有统计点P(rp,bp)所在的子区域时,就可以统计出每个子区域内的统计点数量。如图3B所示,为确定出的所有统计点所在的子区域的示意图,如图3C所示,为针对图3B统计出的每个子区域内的统计点数量的示意图。
目前,已经对空间聚类问题提出多种算法,空间聚类算法包括基于划分的聚类算法、基于层次的聚类算法、基于密度的聚类算法、基于网格的聚类算法、基于模型的聚类算法等。本发明实施例中,可以采用基于密度的空间聚类算法对位于白区内的所有统计点进行聚类,并获得一个或者多个聚类簇。基于密度的空间聚类算法的主要特点是:使用区域密度作为划分聚类的依据,其认为只要数据空间区域的密度超过预先定义的阈值,就将其添加到相近的聚类中。该基于密度的空间聚类算法可以为DBSCAN(Density Based SpatialClustering of Applications with Noise,基于密度的噪声应用空间聚类分析)算法、OPTICS(Ordering Points To Identify the Clustering Structure,顺序点识别聚类结构)算法、DENCLUE(Density Based Clustering,基于密度的聚类)算法等。
其中,针对以每个子区域的中心作为聚类对象,以每个子区域内的统计点数量作为聚类对象的密度,并采用基于密度的空间聚类算法将子区域进行聚类,形成一个或者多个聚类簇的过程,如图3C所示,针对子区域5、子区域6、子区域7、子区域8、子区域9和子区域10,由于统计点数量较多,或者相邻子区域的统计点数量较多,因此,将相邻的子区域5、子区域6、子区域7、子区域8作为聚类簇1,并将相邻的子区域9和子区域10作为聚类簇2。进一步的,针对子区域1,可以形成聚类簇3,针对子区域2,可以形成聚类簇4,针对子区域3和子区域4,可以形成聚类簇5。
本发明实施例中,不是针对每个统计点进行聚类分析,而是针对每个子区域进行聚类分析,从而减小计算复杂度。其中,由于统计点的个数可能较多,也可能较少,因此针对每个统计点进行聚类分析时,计算复杂度会很高,而子区域的个数可以进行控制,因此可以减小计算复杂度。例如,如果有1024个统计点,256个子区域,且聚类分析的时间复杂度为O(N2),则在针对每个统计点进行聚类分析时,则时间复杂度为O(10242),在针对每个子区域进行聚类分析时,则时间复杂度为O(2562),显然,可以减小计算复杂度。
步骤104,针对每个聚类簇,如果所述聚类簇内的统计点数量大于预设阈值,则确定位于所述聚类簇内的统计点均为白点;如果所述聚类簇内的统计点数量不大于所述预设阈值,则确定位于所述聚类簇内的统计点均为非白点(干扰点)。
如图3C所示,针对白区内的聚类簇1和聚类簇2,如果聚类簇1内的统计点数量大于预设阈值,则确定聚类簇1内的所有统计点为白点,如果聚类簇2内的统计点数量大于预设阈值,则确定聚类簇2内的所有统计点为白点。此外,针对聚类簇3、聚类簇4和聚类簇5,如果聚类簇3内的统计点数量不大于预设阈值,则确定聚类簇3内的所有统计点为非白点,如果聚类簇4内的统计点数量不大于预设阈值,则确定聚类簇4内的所有统计点为非白点,如果聚类簇5内的统计点数量不大于预设阈值,则确定聚类簇5内的所有统计点为非白点。
其中,预设阈值可以根据实际经验任意设置,如可以设置为5。
基于上述方式,通过对落入白区的统计点进行聚类,从而有效分离白点与干扰点,并将干扰点确定为非白点,从而剔除落入白区内的干扰点。
步骤105,基于白点的聚类簇,利用位于聚类簇内的统计点计算待检测图像的白平衡增益。之后,可以利用该白平衡增益对该待检测图像进行校正,具体校正过程不再赘述。
在经过步骤104的处理后,可以有效分离出白点与干扰点,并剔除落入白区内的干扰点,即包含干扰点的聚类簇也被剔除。在后续过程中,所指的聚类簇均是白点的聚类簇,而不是非白点的聚类簇。
本发明实施例中,利用位于聚类簇内的统计点计算待检测图像的白平衡增益的过程,具体可以包括但不限于如下方式:获得该聚类簇的聚类特征以及位于该聚类簇的统计点的三基色信息,并利用该聚类簇的聚类特征为位于该聚类簇的统计点分配权重值。进一步的,利用位于该聚类簇的统计点的权重值以及位于该聚类簇的统计点的三基色信息,计算该待检测图像的白平衡增益。
本发明实施例中,利用该聚类簇的聚类特征为位于该聚类簇的统计点分配权重值的过程,具体可以包括但不限于如下方式:情况一、当该聚类特征是只存在一个包含白点的聚类簇时,则为该聚类簇内的每个统计点分配相同的权重值。或者,情况二、当该聚类特征是存在至少两个包含白点的聚类簇时,则为同一个聚类簇内的每个统计点分配相同的权重值,并利用每个聚类簇对应的权重参数为不同聚类簇内的统计点分配不同的权重值。其中,该聚类簇对应的权重参数具体可以包括但不限于以下之一或者任意组合:聚类簇内的统计点数量、聚类簇的中心位置对应的色温、聚类簇的中心位置与黑体轨迹曲线的距离关系。
针对情况一、当只存在一个包含白点的聚类簇时,则说明所有白点均位于该聚类簇内,干扰点已经在之前的过程中被排除掉,此时为聚类簇内的每个统计点(即白点)分配相同的权重值,即所有的白点均是相同的权重值,如权重值1。
针对情况二、当存在至少两个包含白点的聚类簇(如两个包含白点的聚类簇、三个包含白点的聚类簇等)时,则说明所有白点均位于这至少两个聚类簇内,干扰点已经在之前的过程中被排除掉,此时为同一个聚类簇内的每个统计点分配相同的权重值,为不同聚类簇内的统计点分配不同的权重值。如图3C所示,为聚类簇1内的所有统计点分配相同的权重值1,为聚类簇2内的所有统计点分配相同的权重值2。
本发明实施例中,在为不同聚类簇内的统计点分配不同的权重值时,还可以利用每个聚类簇对应的权重参数为不同的聚类簇内的统计点分配不同的权重值。具体的,当聚类簇内的统计点数量越多时,则该聚类簇内的统计点分配到的权重值越大。当聚类簇的中心位置对应的色温越靠近采样光源色温中间段时,则该聚类簇内的统计点分配到的权重值越大。当聚类簇的中心位置与黑体轨迹曲线之间的距离越近时,则该聚类簇内的统计点分配到的权重值越大。
其中,色温靠近采样光源色温中间段是指:如果采样光源为2000K-7000K,则采样光源色温中间段为4000K-5000K区段,色温位于4000K-5000K区段时,则说明色温靠近采样光源色温中间段。
例如,如果聚类簇1内的统计点数量大于聚类簇2内的统计点数量,则为聚类簇1内的所有统计点分配的权重值1,可以大于为聚类簇2内的所有统计点分配的权重值2。或者,如果聚类簇1的中心位置对应的色温与聚类簇2的中心位置对应的色温相同,更靠近采样光源色温中间段时,则为聚类簇1内的所有统计点分配的权重值1,可以大于为聚类簇2内的所有统计点分配的权重值2。或者,如果聚类簇1的中心位置与黑体轨迹曲线(参见上述步骤)之间的距离,比聚类簇2的中心位置与黑体轨迹曲线之间的距离更近,则为聚类簇1内的所有统计点分配的权重值1,可以大于为聚类簇2内的所有统计点分配的权重值2。
以聚类簇对应的权重参数同时包括聚类簇内的统计点数量、聚类簇的中心位置对应的色温、聚类簇的中心位置与黑体轨迹曲线的距离关系为例,则一种可行的实施方式为:假设聚类簇1内的统计点数量为统计点数量1,聚类簇2内的统计点数量为统计点数量2,聚类簇1的中心位置对应的色温与光源色温中间段之间的差值为色温1,聚类簇2的中心位置对应的色温与光源色温中间段之间的差值为色温2,聚类簇1的中心位置与黑体轨迹曲线的距离为距离1,聚类簇2的中心位置与黑体轨迹曲线的距离为距离2,则:可以确定权重值1=系数1*统计点数量1/(统计点数量1+统计点数量2)+系数2*[1-色温1/(色温1+色温2)]+系数3*[1-距离1/(距离1+距离2)];并确定权重值2=系数1*统计点数量2/(统计点数量1+统计点数量2)+系数2*[1-色温2/(色温1+色温2)]+系数3*[1-距离2/(距离1+距离2)]。
其中,系数1、系数2和系数3均为根据实际经验配置的数值。
当然,在实际应用中,还可以有其它聚类特征,也可以采用其它权重值分配方式,分配的权重值大小也可以根据实际经验选择,在此不再赘述。
本发明实施例中,统计点的三基色信息具体可以包括:统计点的G分量响应值、R分量响应值、B分量响应值。基于此,利用位于聚类簇的统计点的权重值以及位于聚类簇的统计点的三基色信息,计算待检测图像的白平衡增益的过程,具体可以包括但不限于如下方式:利用如下公式计算待检测图像的R通道增益CrAvg:利用如下公式计算待检测图像的B通道增益CbAvg:计算待检测图像的G通道增益CgAvg为指定数值。
其中,i表示聚类簇内的统计点,且i的取值为1至N,N为统计点的最大数量。W(i)表示聚类簇内的第i个统计点的权重值。Cr(i)表示聚类簇内的第i个统计点的G分量响应值/R分量响应值,即Cr=G/R。Cb(i)表示聚类簇内的第i个统计点的G分量响应值/B分量响应值,即Cb=G/B。指定数值通常可以为1.0。
基于上述技术方案,本发明实施例中,通过对落入白区的统计点进行聚类,从而有效分离白点与干扰点(不同色温的弱光源下的白点、色温差异较大的白点或者其它彩色点),并将干扰点确定为非白点,从而剔除落入白区内的干扰点。在计算白平衡增益时,可以剔除干扰点对白平衡的影响,剔除局部彩色景物与多光源补光、运动物体、混合色温等对白平衡的影响,使得自动白平衡能够适用于存在局部彩色景物与多光源补光、存在运动彩色物体、混合色温等复杂场景下,提高复杂场景下自动白平衡处理的精度与稳定性。
基于与上述方法同样的发明构思,本发明实施例提供一种自动白平衡的装置,该自动白平衡的装置应用在前端设备上。自动白平衡的装置可以通过软件实现,也可通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过所在的前端设备的处理器,读取非易失性存储器中对应的计算机程序指令形成的。从硬件层面而言,如图4所示,为自动白平衡的装置所在的前端设备的一种硬件结构图,除了图4所示的处理器、非易失性存储器外,前端设备还可以包括其他硬件,如负责处理报文的转发芯片、网络接口、内存等;从硬件结构上来讲,前端设备还可能是分布式设备,可能包括多个接口卡,以便在硬件层面进行报文处理的扩展。
如图5所示,为本发明提出的自动白平衡的装置的结构图,所述自动白平衡的装置可以应用在前端设备上,所述自动白平衡的装置具体包括:
获得模块11,用于获得自动白平衡的白区;
确定模块12,用于针对待检测图像的每个统计点,确定位于所述白区内的所有统计点;
聚类模块13,用于对位于所述白区内的所有统计点进行聚类,形成聚类簇;
分离模块14,用于针对每个聚类簇,如果所述聚类簇内的统计点数量大于预设阈值,则确定位于所述聚类簇内的统计点均为白点;如果所述聚类簇内的统计点数量不大于所述预设阈值,则确定位于所述聚类簇内的统计点均为非白点;
计算模块15,用于基于白点的聚类簇,利用位于所述聚类簇内的统计点计算所述待检测图像的白平衡增益。
所述白区由多个子白区组成,且每个子白区包括多个子区域;所述聚类模块13,具体用于在对位于所述白区内的所有统计点进行聚类,形成聚类簇的过程中,统计每个子区域内的统计点数量;以每个子区域的中心作为聚类对象,以每个子区域内的统计点数量作为聚类对象的密度,并采用基于密度的空间聚类算法将子区域进行聚类,形成聚类簇;针对所述白区内的每个统计点,确定所述统计点所属的子区域,并确定所述子区域所属的聚类簇,并将所述统计点归类到所述聚类簇。
所述计算模块15,具体用于在利用位于所述聚类簇内的统计点计算所述待检测图像的白平衡增益的过程中,获得所述聚类簇的聚类特征和位于所述聚类簇的统计点的三基色信息;利用所述聚类特征为位于所述聚类簇的统计点分配权重值;利用位于所述聚类簇的统计点的权重值以及位于所述聚类簇的统计点的三基色信息,计算所述待检测图像的白平衡增益。
所述计算模块15,具体用于在利用所述聚类特征为位于所述聚类簇的统计点分配权重值的过程中,当所述聚类特征是只存在一个包含白点的聚类簇时,则为所述聚类簇内的每个统计点分配相同的权重值;或者,当所述聚类特征是存在至少两个包含白点的聚类簇时,则为同一个聚类簇内的每个统计点分配相同的权重值,并利用每个聚类簇对应的权重参数为不同聚类簇内的统计点分配不同的权重值;其中,聚类簇对应的权重参数包括以下之一或者任意组合:聚类簇内的统计点数量、聚类簇的中心位置对应的色温、聚类簇的中心位置与黑体轨迹曲线的距离关系;
其中,当聚类簇内的统计点数量越多时,则所述聚类簇内的统计点分配到的权重值越大;当聚类簇的中心位置对应的色温越靠近采样光源色温中间段时,则所述聚类簇内的统计点分配到的权重值越大;当聚类簇的中心位置与黑体轨迹曲线之间的距离越近时,则所述聚类簇内的统计点分配到的权重值越大。
所述统计点的三基色信息具体包括:所述统计点的G分量响应值、R分量响应值、B分量响应值;所述计算模块15,具体用于在利用位于所述聚类簇的统计点的权重值以及位于所述聚类簇的统计点的三基色信息,计算待检测图像的白平衡增益的过程中,利用如下公式计算待检测图像的R通道增益CrAvg:利用如下公式计算所述待检测图像的B通道增益CbAvg:计算所述待检测图像的G通道增益CgAvg为指定数值;
其中,i表示聚类簇内的统计点,W(i)表示聚类簇内的第i个统计点的权重值,Cr(i)表示聚类簇内的第i个统计点的G分量响应值/R分量响应值,Cb(i)表示聚类簇内的第i个统计点的G分量响应值/B分量响应值。
其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可进一步拆分成多个子模块。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (8)
1.一种自动白平衡的方法,其特征在于,所述方法包括以下步骤:
获得自动白平衡的白区;
针对待检测图像的每个统计点,确定位于所述白区内的所有统计点;
对位于所述白区内的所有统计点进行聚类,形成聚类簇;
针对每个聚类簇,如果所述聚类簇内的统计点数量大于预设阈值,则确定位于所述聚类簇内的统计点均为白点;如果所述聚类簇内的统计点数量不大于所述预设阈值,则确定位于所述聚类簇内的统计点均为非白点;
基于白点的聚类簇,利用位于所述聚类簇内的统计点计算所述待检测图像的白平衡增益;
所述获得自动白平衡的白区,具体包括:
采集N个不同色温的符合黑体辐射特性光源下的标准灰卡图像,并获得每个所述标准灰卡图像的三基色信息;其中,N为大于或者等于3的正整数;
利用每个所述标准灰卡图像的三基色信息拟合得到黑体轨迹曲线;
在所述黑体轨迹曲线上选择M个标定点;其中,M大于或者等于N,且每两个所述标定点在所述黑体轨迹曲线上经过的距离不大于预设距离;
获得每个所述标定点所在区域的四边形的子白区,得到所述自动白平衡的白区;其中,所述自动白平衡的白区由每个所述标定点所在区域的四边形的子白区组成,且每个所述标定点所在区域的四边形的子白区包括多个子区域;
所述对位于所述白区内的所有统计点进行聚类,形成聚类簇的过程,具体包括:
统计每个子区域内的统计点数量;
以每个子区域的中心作为聚类对象,以每个子区域内的统计点数量作为聚类对象的密度,并采用基于密度的空间聚类算法将子区域进行聚类,形成聚类簇;
针对所述白区内的每个统计点,确定所述统计点所属的子区域,并确定所述子区域所属的聚类簇,并将所述统计点归类到所述聚类簇。
2.根据权利要求1所述的方法,其特征在于,所述利用位于所述聚类簇内的统计点计算所述待检测图像的白平衡增益的过程,具体包括:
获得所述聚类簇的聚类特征和位于所述聚类簇的统计点的三基色信息;
利用所述聚类特征为位于所述聚类簇的统计点分配权重值;
利用位于所述聚类簇的统计点的权重值以及位于所述聚类簇的统计点的三基色信息,计算所述待检测图像的白平衡增益。
3.根据权利要求2所述的方法,其特征在于,所述利用所述聚类特征为位于所述聚类簇的统计点分配权重值的过程,具体包括:
当所述聚类特征是只存在一个包含白点的聚类簇时,则为所述聚类簇内的每个统计点分配相同的权重值;或者,当所述聚类特征是存在至少两个包含白点的聚类簇时,则为同一个聚类簇内的每个统计点分配相同的权重值,并利用每个聚类簇对应的权重参数为不同聚类簇内的统计点分配不同的权重值;其中,聚类簇对应的权重参数包括以下之一或者任意组合:聚类簇内的统计点数量、聚类簇的中心位置对应的色温、聚类簇的中心位置与黑体轨迹曲线的距离关系;
其中,当聚类簇内的统计点数量越多时,则所述聚类簇内的统计点分配到的权重值越大;当聚类簇的中心位置对应的色温越靠近采样光源色温中间段时,则所述聚类簇内的统计点分配到的权重值越大;当聚类簇的中心位置与黑体轨迹曲线之间的距离越近时,则所述聚类簇内的统计点分配到的权重值越大。
4.根据权利要求2所述的方法,其特征在于,所述统计点的三基色信息具体包括:所述统计点的G分量响应值、R分量响应值、B分量响应值,所述利用位于所述聚类簇的统计点的权重值以及位于所述聚类簇的统计点的三基色信息,计算所述待检测图像的白平衡增益的过程,具体包括:
利用如下公式计算所述待检测图像的R通道增益CrAvg:
利用如下公式计算所述待检测图像的B通道增益CbAvg:
计算所述待检测图像的G通道增益CgAvg为指定数值;
其中,i表示聚类簇内的统计点,W(i)表示聚类簇内的第i个统计点的权重值,Cr(i)表示聚类簇内的第i个统计点的G分量响应值/R分量响应值,Cb(i)表示聚类簇内的第i个统计点的G分量响应值/B分量响应值。
5.一种自动白平衡的装置,其特征在于,所述装置具体包括:
获得模块,用于获得自动白平衡的白区;
确定模块,用于针对待检测图像的每个统计点,确定位于所述白区内的所有统计点;
聚类模块,用于对位于所述白区内的所有统计点进行聚类,形成聚类簇;
分离模块,用于针对每个聚类簇,如果所述聚类簇内的统计点数量大于预设阈值,则确定位于所述聚类簇内的统计点均为白点;如果所述聚类簇内的统计点数量不大于所述预设阈值,则确定位于所述聚类簇内的统计点均为非白点;
计算模块,用于基于白点的聚类簇,利用位于所述聚类簇内的统计点计算所述待检测图像的白平衡增益;
所述获得模块,具体用于执行以下步骤:
采集N个不同色温的符合黑体辐射特性光源下的标准灰卡图像,并获得每个所述标准灰卡图像的三基色信息;其中,N为大于或者等于3的正整数;
利用每个所述标准灰卡图像的三基色信息拟合得到黑体轨迹曲线;
在所述黑体轨迹曲线上选择M个标定点;其中,M大于或者等于N,且每两个所述标定点在所述黑体轨迹曲线上经过的距离不大于预设距离;
获得每个所述标定点所在区域的四边形的子白区,得到所述自动白平衡的白区;其中,所述自动白平衡的白区由每个所述标定点所在区域的四边形的子白区组成,且每个所述标定点所在区域的四边形的子白区包括多个子区域;
所述聚类模块,具体用于在对位于所述白区内的所有统计点进行聚类,形成聚类簇的过程中,统计每个子区域内的统计点数量;以每个子区域的中心作为聚类对象,以每个子区域内的统计点数量作为聚类对象的密度,并采用基于密度的空间聚类算法将子区域进行聚类,形成聚类簇;针对所述白区内的每个统计点,确定所述统计点所属的子区域,并确定所述子区域所属的聚类簇,并将所述统计点归类到所述聚类簇。
6.根据权利要求5所述的装置,其特征在于,
所述计算模块,具体用于在利用位于所述聚类簇内的统计点计算所述待检测图像的白平衡增益的过程中,获得所述聚类簇的聚类特征和位于所述聚类簇的统计点的三基色信息;利用所述聚类特征为位于所述聚类簇的统计点分配权重值;利用位于所述聚类簇的统计点的权重值以及位于所述聚类簇的统计点的三基色信息,计算所述待检测图像的白平衡增益。
7.根据权利要求6所述的装置,其特征在于,
所述计算模块,具体用于在利用所述聚类特征为位于所述聚类簇的统计点分配权重值的过程中,当所述聚类特征是只存在一个包含白点的聚类簇时,则为所述聚类簇内的每个统计点分配相同的权重值;或者,当所述聚类特征是存在至少两个包含白点的聚类簇时,则为同一个聚类簇内的每个统计点分配相同的权重值,并利用每个聚类簇对应的权重参数为不同聚类簇内的统计点分配不同的权重值;其中,聚类簇对应的权重参数包括以下之一或者任意组合:聚类簇内的统计点数量、聚类簇的中心位置对应的色温、聚类簇的中心位置与黑体轨迹曲线的距离关系;
其中,当聚类簇内的统计点数量越多时,则所述聚类簇内的统计点分配到的权重值越大;当聚类簇的中心位置对应的色温越靠近采样光源色温中间段时,则所述聚类簇内的统计点分配到的权重值越大;当聚类簇的中心位置与黑体轨迹曲线之间的距离越近时,则所述聚类簇内的统计点分配到的权重值越大。
8.根据权利要求6所述的装置,其特征在于,所述统计点的三基色信息具体包括:所述统计点的G分量响应值、R分量响应值、B分量响应值;
所述计算模块,具体用于在利用位于所述聚类簇的统计点的权重值以及位于所述聚类簇的统计点的三基色信息,计算所述待检测图像的白平衡增益的过程中,利用如下公式计算待检测图像的R通道增益CrAvg:利用如下公式计算所述待检测图像的B通道增益CbAvg:计算所述待检测图像的G通道增益CgAvg为指定数值;
其中,i表示聚类簇内的统计点,W(i)表示聚类簇内的第i个统计点的权重值,Cr(i)表示聚类簇内的第i个统计点的G分量响应值/R分量响应值,Cb(i)表示聚类簇内的第i个统计点的G分量响应值/B分量响应值。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511024504.8A CN105430367B (zh) | 2015-12-30 | 2015-12-30 | 一种自动白平衡的方法和装置 |
US15/368,133 US10070110B2 (en) | 2015-12-30 | 2016-12-02 | Automatic white balance |
EP16203411.0A EP3188481B1 (en) | 2015-12-30 | 2016-12-12 | Automatic white balance |
PL16203411T PL3188481T3 (pl) | 2015-12-30 | 2016-12-12 | Automatyczny balans bieli |
HUE16203411A HUE048668T2 (hu) | 2015-12-30 | 2016-12-12 | Automatikus fehéregyensúly |
ES16203411T ES2763024T3 (es) | 2015-12-30 | 2016-12-12 | Balance automático de blancos |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511024504.8A CN105430367B (zh) | 2015-12-30 | 2015-12-30 | 一种自动白平衡的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105430367A CN105430367A (zh) | 2016-03-23 |
CN105430367B true CN105430367B (zh) | 2017-11-03 |
Family
ID=55508265
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201511024504.8A Active CN105430367B (zh) | 2015-12-30 | 2015-12-30 | 一种自动白平衡的方法和装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10070110B2 (zh) |
EP (1) | EP3188481B1 (zh) |
CN (1) | CN105430367B (zh) |
ES (1) | ES2763024T3 (zh) |
HU (1) | HUE048668T2 (zh) |
PL (1) | PL3188481T3 (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108024106B (zh) * | 2016-11-04 | 2019-08-23 | 上海富瀚微电子股份有限公司 | 支持rgbir和rgbw格式的颜色校正装置及方法 |
CN108632582B (zh) * | 2017-03-17 | 2019-12-27 | 比亚迪股份有限公司 | 图像的白平衡调整方法和装置 |
CN109688396B (zh) | 2017-07-25 | 2021-02-02 | Oppo广东移动通信有限公司 | 图像的白平衡处理方法、装置和终端设备 |
CN108156379A (zh) * | 2017-12-28 | 2018-06-12 | 努比亚技术有限公司 | 一种自动白平衡的优化方法、终端及计算机可读存储介质 |
CN108093234B (zh) * | 2017-12-29 | 2019-10-29 | 努比亚技术有限公司 | 一种图像处理方法、终端及存储介质 |
CN108377372B (zh) * | 2018-03-13 | 2019-10-29 | 普联技术有限公司 | 一种白平衡处理方法、装置、终端设备和存储介质 |
CN108540787B (zh) * | 2018-03-16 | 2019-09-17 | 浙江大华技术股份有限公司 | 一种确定白平衡点区域的方法、装置、设备及存储介质 |
CN108337496B (zh) * | 2018-04-25 | 2020-01-31 | 普联技术有限公司 | 白平衡处理方法、处理装置、处理设备及存储介质 |
CN112313946A (zh) * | 2018-06-27 | 2021-02-02 | 华为技术有限公司 | 光源估测方法、图像处理方法和相关产品 |
CN110876049B (zh) * | 2018-08-29 | 2021-12-28 | 浙江宇视科技有限公司 | 图像白平衡处理方法及装置 |
CN110388987B (zh) * | 2019-07-24 | 2020-11-10 | 深圳市华星光电技术有限公司 | 获取影像色温的方法 |
CN112788322B (zh) * | 2019-11-07 | 2023-04-07 | 浙江宇视科技有限公司 | 自适应白平衡处理方法、装置、介质及电子设备 |
CN113055665B (zh) * | 2019-12-27 | 2023-04-07 | Oppo广东移动通信有限公司 | 图像处理方法、终端及存储介质 |
CN111210764B (zh) * | 2020-01-21 | 2021-01-12 | 卡莱特(深圳)云科技有限公司 | 一种led屏校正方法及校正装置 |
CN114071107B (zh) * | 2020-08-10 | 2023-10-31 | 合肥君正科技有限公司 | 基于融合聚类分析与色温曲线的自动白平衡方法及装置 |
CN113068016B (zh) * | 2021-04-02 | 2023-03-24 | 杭州涂鸦信息技术有限公司 | 白平衡校正方法、装置和计算机设备 |
CN113676716B (zh) * | 2021-08-23 | 2022-10-14 | 深圳创维-Rgb电子有限公司 | 白平衡控制方法、装置、终端设备以及存储介质 |
CN114222105B (zh) * | 2021-12-16 | 2024-05-03 | 苏州科达科技股份有限公司 | 白平衡调整方法、系统、白平衡终端及存储介质 |
CN114866754B (zh) * | 2022-04-27 | 2023-12-19 | 北京奕斯伟计算技术股份有限公司 | 自动白平衡方法、装置及计算机可读存储介质和电子设备 |
CN114866755B (zh) * | 2022-05-17 | 2023-12-19 | 北京奕斯伟计算技术股份有限公司 | 自动白平衡方法、装置和计算机存储介质、电子设备 |
CN115334295B (zh) * | 2022-08-10 | 2024-05-03 | 杭州联吉技术有限公司 | 图像白平衡处理方法及电子设备 |
CN115379186B (zh) * | 2022-08-19 | 2023-11-03 | 福州鑫图光电有限公司 | 一种图像自动白平衡的方法及终端 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7912279B2 (en) | 2006-10-26 | 2011-03-22 | Qualcomm Incorporated | Automatic white balance statistics collection |
KR100918701B1 (ko) * | 2007-10-11 | 2009-09-22 | 한국과학기술원 | 강인한 자동 화이트 밸런스 방법 |
JP2009105579A (ja) | 2007-10-22 | 2009-05-14 | Sony Corp | 色信号処理回路、撮像装置及び色信号処理方法 |
US8854709B1 (en) | 2013-05-08 | 2014-10-07 | Omnivision Technologies, Inc. | Automatic white balance based on dynamic mapping |
CN103297789B (zh) * | 2013-05-20 | 2015-04-29 | 周宇 | 白平衡校正方法及其装置 |
CN104702941B (zh) * | 2013-12-09 | 2017-03-08 | 展讯通信(上海)有限公司 | 一种白点区域表示及判定方法 |
CN103929632B (zh) * | 2014-04-15 | 2016-02-03 | 浙江宇视科技有限公司 | 一种自动白平衡校正方法以及装置 |
CN104618702B (zh) * | 2014-12-31 | 2016-04-20 | 湖南国科微电子股份有限公司 | 一种基于白块假设的数码摄像装置自动白平衡方法 |
-
2015
- 2015-12-30 CN CN201511024504.8A patent/CN105430367B/zh active Active
-
2016
- 2016-12-02 US US15/368,133 patent/US10070110B2/en active Active
- 2016-12-12 HU HUE16203411A patent/HUE048668T2/hu unknown
- 2016-12-12 ES ES16203411T patent/ES2763024T3/es active Active
- 2016-12-12 EP EP16203411.0A patent/EP3188481B1/en active Active
- 2016-12-12 PL PL16203411T patent/PL3188481T3/pl unknown
Also Published As
Publication number | Publication date |
---|---|
PL3188481T3 (pl) | 2020-06-15 |
EP3188481A1 (en) | 2017-07-05 |
US10070110B2 (en) | 2018-09-04 |
ES2763024T3 (es) | 2020-05-26 |
US20170195648A1 (en) | 2017-07-06 |
EP3188481B1 (en) | 2019-11-06 |
HUE048668T2 (hu) | 2020-08-28 |
CN105430367A (zh) | 2016-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105430367B (zh) | 一种自动白平衡的方法和装置 | |
CN105959662B (zh) | 自适应白平衡调整方法及装置 | |
CN108206917B (zh) | 图像处理的方法及装置、存储介质、电子装置 | |
CN105472365B (zh) | 一种自动白平衡的方法和装置 | |
CN108337433A (zh) | 一种拍照方法、移动终端及计算机可读存储介质 | |
CN107483908A (zh) | 白平衡校准方法及电子设备 | |
CN106878695A (zh) | 白平衡处理的方法、装置和计算机设备 | |
CN108388838B (zh) | 无人机对地人群监控系统及监控方法 | |
CN106303483B (zh) | 一种图像处理方法及装置 | |
CN104636759A (zh) | 一种获取图片推荐滤镜信息的方法及图片滤镜信息推荐系统 | |
CN109729332A (zh) | 一种自动白平衡矫正方法和系统 | |
AU2018293302B2 (en) | Method for filter selection | |
WO2013189925A2 (en) | Digital image analysis | |
CN114866754B (zh) | 自动白平衡方法、装置及计算机可读存储介质和电子设备 | |
CN102300100A (zh) | 一种白平衡控制装置及方法 | |
CN110248170A (zh) | 图像色彩调整方法及装置 | |
CN105828058A (zh) | 一种白平衡的调整方法和装置 | |
CN108063926A (zh) | 图像处理方法及装置、计算机可读存储介质和计算机设备 | |
CN105611184A (zh) | 数码影像装置白平衡调试方法及调试系统 | |
CN106488217A (zh) | 立体显示设备的校正参数获取方法及装置 | |
CN104602413B (zh) | 一种调节照明装置的方法及系统 | |
CN108063934A (zh) | 图像处理方法及装置、计算机可读存储介质和计算机设备 | |
CN108012135A (zh) | 图像处理方法及装置、计算机可读存储介质和计算机设备 | |
CN105451015B (zh) | 一种图像坏点的检测方法及装置 | |
CN107231549A (zh) | 自动白平衡检测系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |