一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

自动白平衡方法、装置及计算机可读存储介质和电子设备与流程

2022-08-10 15:57:07 来源:中国专利 TAG:


1.本技术涉及图像处理技术领域,尤其涉及一种自动白平衡方法、装置及计算机可读存储介质和电子设备。


背景技术:

2.随着图像处理技术的进步,相机、手机等图像拍摄设备广泛应用,人们对图像质量要求也越来越高,同时拍摄场景也越来越复杂。在使用相机进行拍摄时,图像的颜色不可避免地会受到图像传感器自身或者外部环境等诸多因素的影响,使得图像色彩失真。例如,在由于这些因素使得色温改变的同时,采集到的图像色彩也会随之改变,产生偏色现象。
3.目前,主要是采用自动白平衡的方法来抑制图像的偏色,常用的自动白平衡算法包括:灰度世界算法、完美反射算法、色域映射算法以及神经网络算法等等。但是这四种算法都各自有缺陷,例如解释说明如下:
4.灰度世界算法是建立在一定假设基础上的,当场景中出现大面积色块等明显偏色时,假设不成立,算法调整效果就会出现较大偏差;完美反射算法是建立在场景中有非过曝的白点的基础之上,但当图像中有亮度过高的像素点(即过曝像素点)存在时,完美反射算法效果就会不佳了,这是由于过曝像素点的r、g、b分量值都饱和,在计算三个通道的增益时,计算结果始终唯一;色域映射算法和神经网络算法,这两个算法比较复杂,难利用硬件实现,尤其是神经网络算法,它是需要大量高质量的样本训练才能够确保算法的精确性,而样本的质量和完整性都是很难保证的。
5.以上,灰度世界算法和完美反射算法局限于假设条件或约束场景,色域映射算法和神经网络算法局限于算法复杂度高且实现难度大,利用这样四种算法是难以对图像完成精确校准偏色的,尚还是需要寻找更优的解决图像偏色问题的自动白平衡方法。


技术实现要素:

6.本技术提供了一种自动白平衡方法、装置及计算机可读存储介质和电子设备,主要目的在于应对图像偏色问题,提供了更加精确校准图像偏色的方法。
7.为了达到上述目的,本技术主要提供如下技术方案:
8.本技术第一方面提供了一种自动白平衡方法,该方法包括:
9.获取原始图像对应的rgb图像;
10.对所述rgb图像进行白点检测处理,得到所述rgb图像中包含的参考白点;
11.利用预设的多个色温椭圆对所述参考白点进行筛选,得到目标白点,所述色温椭圆用于表征不同色温下场景的光源信息;
12.根据所述目标白点的rgb值,计算所述原始图像对应的图像增益;
13.根据所述图像增益,对所述原始图像进行自动白平衡处理,得到经偏色校正的目标图像。
14.在本技术第一方面的一些变更实施方式中,所述利用预设的多个色温椭圆对所述
参考白点进行筛选,得到目标白点,包括:
15.统计每个色温椭圆落入的参考白点的数量;
16.将落入参考白点数量最多的色温椭圆确定为目标色温椭圆;
17.将落入所述目标色温椭圆内的参考白点确定为目标白点。
18.在本技术第一方面的一些变更实施方式中,所述统计每个色温椭圆落入的参考白点的数量,包括:
19.将所述参考白点映射到r/g-b/g色度空间,得到所述参考白点在r/g-b/g色度空间的坐标;
20.根据各个所述色温椭圆的椭圆参数和所述参考白点在r/g-b/g色度空间的坐标,判断所述参考白点是否落入所述色温椭圆;
21.若是,则根据不同色温椭圆内落入的参考白点,统计每个所述色温椭圆中包含的参考白点的数量。
22.在本技术第一方面的一些变更实施方式中,所述根据所述目标白点的rgb值,计算所述原始图像对应的图像增益,包括:
23.获取所述目标白点的rgb值;
24.根据每个所述目标白点的rgb值,在红绿蓝三个颜色通道上各自进行灰度值的累加操作,得到红色累计灰度值、绿色累计灰度值和蓝色累计灰度值;
25.根据所述红色累计灰度值、所述绿色累计灰度值和所述蓝色累计灰度值,计算不同颜色通道对应的增益,并组成所述原始图像对应的图像增益。
26.在本技术第一方面的一些变更实施方式中,在所述利用预设的多个色温椭圆对所述参考白点进行筛选,得到目标白点之前,所述方法还包括:
27.获取不同色温下基于标准色卡标定的白块区域对应的像素点;
28.将所述像素点映射到r/g-b/g色度空间,计算不同色温下的椭圆参数;
29.根据所述不同色温下的椭圆参数,确定在r/g-b/g色度空间内的色温椭圆,所述色温椭圆为在不同色温下所述白块区域在r/g-b/g色度空间内椭圆形高斯分布。
30.在本技术第一方面的一些变更实施方式中,所述对所述rgb图像进行白点检测处理,得到所述rgb图像中包含的参考白点,包括:
31.利用预设红色灰度值区间、预设绿色灰度值区间和预设蓝色灰度值区间在rgb三维坐标系上构建预设rgb域色度空间,所述预设rgb域色度空间用于表征rgb域的类白区域;
32.遍历所述rgb图像包含的像素点,判断所述像素点在红绿蓝三个通道上各自的灰度值是否落入所述预设红色灰度值区间、所述预设绿色灰度值区间和所述预设蓝色灰度值区间;
33.若是,则确定所述像素点落入所述rgb域的类白区域;
34.根据所述像素点落入所述rgb域的类白区域,将所述像素点确定为参考白点。
35.在本技术第一方面的一些变更实施方式中,在确定出参考白点之后,所述方法还包括:
36.遍历所述参考白点,将所述参考白点从rgb域转换到ycbcr域,得到所述参考白点对应的y值、cb值和cr值;
37.根据所述参考白点对应的y值、cb值和cr值,判断所述参考白点是否落入预设
ycbcr域色度空间内,所述预设ycbcr域色度空间用于表征ycbcr域的类白区域;
38.若是,则保留所述参考白点;
39.若否,则确定所述参考白点为非白点,并删除所述参考白点。
40.在本技术第一方面的一些变更实施方式中,在对所述rgb图像进行白点检测处理,得到所述rgb图像中包含的参考白点之前,所述方法还包括:
41.对所述rgb图像进行中值滤波处理,去除所述rgb图像中包含的异常像素点。
42.在本技术第一方面的一些变更实施方式中,所述获取原始图像对应的rgb图像包括:
43.利用预设色彩滤波阵列对所述原始图像进行插值处理,得到所述原始图像对应的rgb图像。
44.本技术第二方面提供了一种自动白平衡装置,该装置包括:
45.获取单元,用于获取原始图像对应的rgb图像;
46.白点检测单元,用于对所述rgb图像进行白点检测处理,得到所述rgb图像中包含的参考白点;
47.筛选单元,用于利用预设的多个色温椭圆对所述参考白点进行筛选,得到目标白点,所述色温椭圆用于表征不同色温下场景的光源信息;
48.计算单元,用于根据所述目标白点的rgb值,计算所述原始图像对应的图像增益;
49.校正单元,用于根据所述图像增益,对所述原始图像进行自动白平衡处理,得到经偏色校正的目标图像。
50.在本技术第二方面的一些变更实施方式中,所述筛选单元包括:
51.统计模块,用于统计每个色温椭圆落入的参考白点的数量;
52.确定模块,用于将落入参考白点数量最多的色温椭圆确定为目标色温椭圆;
53.所述确定模块,还用于将落入所述目标色温椭圆内的参考白点确定为目标白点。
54.在本技术第二方面的一些变更实施方式中,所述统计模块包括:
55.映射子模块,用于将所述参考白点映射到r/g-b/g色度空间,得到所述参考白点在r/g-b/g色度空间的坐标;
56.判断子模块,用于根据各个所述色温椭圆的椭圆参数和所述参考白点在r/g-b/g色度空间的坐标,判断所述参考白点是否落入所述色温椭圆;
57.统计子模块,用于当判断所述参考白点落入所述色温椭圆时,根据不同色温椭圆内落入的参考白点,统计每个所述色温椭圆中包含的参考白点的数量。
58.在本技术第二方面的一些变更实施方式中,所述计算单元包括:
59.获取模块,用于获取所述目标白点的rgb值;
60.累计模块,用于根据每个所述目标白点的rgb值,在红绿蓝三个颜色通道上各自进行灰度值的累加操作,得到红色累计灰度值、绿色累计灰度值和蓝色累计灰度值;
61.计算模块,用于根据所述红色累计灰度值、所述绿色累计灰度值和所述蓝色累计灰度值,计算不同颜色通道对应的增益,并组成所述原始图像对应的图像增益。
62.在本技术第二方面的一些变更实施方式中,所述装置还包括:
63.所述获取单元,还用于获取不同色温下基于标准色卡标定的白块区域对应的像素点;
64.映射单元,用于将所述像素点映射到r/g-b/g色度空间,计算不同色温下的椭圆参数;
65.确定单元,用于根据所述不同色温下的椭圆参数,确定在r/g-b/g色度空间内的色温椭圆,所述色温椭圆为在不同色温下所述白块区域在r/g-b/g色度空间内椭圆形高斯分布。
66.在本技术第二方面的一些变更实施方式中,所述白点检测单元包括:
67.构建模块,用于利用预设红色灰度值区间、预设绿色灰度值区间和预设蓝色灰度值区间在rgb三维坐标系上构建预设rgb域色度空间,所述预设rgb域色度空间用于表征rgb域的类白区域;
68.判断模块,用于遍历所述rgb图像包含的像素点,判断所述像素点在红绿蓝三个通道上各自的灰度值是否落入所述预设红色灰度值区间、所述预设绿色灰度值区间和所述预设蓝色灰度值区间;
69.确定模块,用于当判断所述像素点在红绿蓝三个通道上各自的灰度值是落入所述预设红色灰度值区间、所述预设绿色灰度值区间和所述预设蓝色灰度值区间时,确定所述像素点落入所述rgb域的类白区域;
70.所述确定模块,还用于根据所述像素点落入所述rgb域的类白区域,将所述像素点确定为参考白点。
71.在本技术第二方面的一些变更实施方式中,所述装置还包括:
72.转换单元,用于遍历所述参考白点,将所述参考白点从rgb域转换到ycbcr域,得到所述参考白点对应的y值、cb值和cr值;
73.判断单元,用于根据所述参考白点对应的y值、cb值和cr值,判断所述参考白点是否落入预设ycbcr域色度空间内,所述预设ycbcr域色度空间用于表征ycbcr域的类白区域;
74.保留单元,用于当判断所述参考白点是落入预设ycbcr域色度空间内时,保留所述参考白点;
75.删除单元,用于当判断所述参考白点未落入预设ycbcr域色度空间内时,确定所述参考白点为非白点并删除所述参考白点。
76.在本技术第二方面的一些变更实施方式中,所述装置还包括:
77.中值滤波处理单元,用于在对所述rgb图像进行白点检测处理,得到所述rgb图像中包含的参考白点之前,对所述rgb图像进行中值滤波处理,去除所述rgb图像中包含的异常像素点。
78.在本技术第二方面的一些变更实施方式中,所述获取单元还具体用于:
79.利用预设色彩滤波阵列对所述原始图像进行插值处理,得到所述原始图像对应的rgb图像。
80.本技术第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的自动白平衡方法。
81.本技术第四方面提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的自动白平衡方法。
82.借由上述技术方案,本技术提供的技术方案至少具有下列优点:
83.本技术提供了一种自动白平衡方法、装置及计算机可读存储介质和电子设备,本技术是对拍摄到的原始图像进行预处理得到rgb图像,并对rgb图像进行白点检测处理以从中获取参考白点,再利用预设的多个色温椭圆对这些参考白点进行筛选以得到目标白点,由于色温椭圆是用于表征不同色温下场景的光源信息的,据此得到的目标白点也是能够更好的反映当前场景的色温的,进而利用这样目标白点的rgb值去计算原始图像的图像增益并应用到自动白平衡处理,能够更加准确地完成对原始图像的偏色校正。相较于现有技术,解决了难以对图像完成精确校准偏色的的问题,本技术提供的自动白平衡方法,是基于色容差理论的色温估计实现的,算法复杂度不高但应用性强,尤其是利用反映当前场景的色温的目标白点而确定的图像增益,不论是对于具有大面积色块的图像偏色,以及是由一种或者两种颜色主导场景下的图像偏色,应对这些多样性的图像偏色问题,本技术都能够有效实现图像偏色校正,达到更加精确校准图像偏色的效果。
84.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
85.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
86.图1为本技术实施例提供的一种自动白平衡方法流程图;
87.图2a提供例举的麦克亚当椭圆示意图;
88.图2b提供例举的对麦克亚当椭圆进行分步(或分级)的示意图;
89.图3a提供在五种常见色温下将标准色卡自标定白块区域中的像素点在r/g-b/g色度空间进行可视化显示的示意图;
90.图3b提供的五种色温下标准色卡自标定白块区域中的像素点在cie1931xyy色度空间进行可视化显示的示意图;
91.图4为本技术实施例提供的另一种自动白平衡方法流程图;
92.图5为本技术实施例例举的表征ycbcr域的类白区域的预设ycbcr域色度空间的示意图;
93.图6为本技术实施例提供的在r/g-b/g色度空间内的色温椭圆的方法流程示意图;
94.图7为本技术实施例例举八种色温椭圆在r/g-b/g色度空间的示意图;
95.图8为本技术实施例提供的计算原始图像对应的图像增益的流程示意图;
96.图9为本技术实施例提供的一种自动白平衡装置的组成框图;
97.图10为本技术实施例提供的另一种自动白平衡装置的组成框图。
具体实施方式
98.下面将参照附图更详细地描述本技术的示例性实施例。虽然附图中显示了本技术的示例性实施例,然而应当理解,可以以各种形式实现本技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本技术,并且能够将本技术的范围
完整的传达给本领域的技术人员。
99.本技术实施例提供了一种自动白平衡方法,该方法是基于色容差理论的色温估计实现的,提供了更加精确校准图像偏色的方法,如图1所示,对此本技术实施例提供以下具体步骤:
100.101、获取原始图像对应的rgb图像。
101.其中,原始图像包含了从拍摄设备的图像传感器所处理的数据,之所以称为原始图像,是因为它尚未被转换成可视格式图像,通常情况下,原始图像具有宽色域的内部色彩,可以进行精确的调整,在转换之前作出一些简单修改。
102.示例性的,拍摄设备内部的原始图像存储为bayer格式的文件,文件后缀名为.raw,例如使用相机拍照得到的jpeg文件或其它格式的图像文件,都是从.raw文件转换而来的。
103.其中,rgb图像是利用rgb色彩模式构建的图像,rgb色彩模式是工业界的一种颜色标准,通过对红(red)、绿(green)、蓝(blue)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的图像。
104.在本技术实施例中,是从拍摄设备获取尚未转换成可视格式图像的原始图像,进行相应预处理得到rgb图像。
105.102、对rgb图像进行白点检测处理,得到rgb图像中包含的参考白点。
106.其中,参考白点是指可视化rgb图像中人眼可见的白色像素点。
107.由于rgb图像是通过对红(red)、绿(green)、蓝(blue)三个颜色通道的变化以及它们相互之间的叠加而得到各式各样带颜色的图像,具体的,对于白色像素点,它是由红(red)、绿(green)、蓝(blue)三个颜色通道上灰度值叠加而呈现的具有白色的点。
108.在实际白点检测处理过程,由于不同检测方法精度不同,且检测操作误差不可避免,因此将经白点检测处理输出的像素点称之为参考白点,以便后续进一步验证。
109.103、利用预设的多个色温椭圆对参考白点进行筛选,得到目标白点。
110.其中,色温椭圆用于表征不同色温下场景的光源信息。
111.由于同一色温下标准色卡中人工标定的白块区域能够呈现更为准确的光源信息,白块区域所包含的像素点在r/g-b/g色度空间内会形成近似椭圆形区域,本技术实施例会将每个椭圆形区域作为对应的色温椭圆,利用这样色温椭圆能够反映对应色温下场景的光源信息。据此,本技术实施例采用不同色温(例如选定八种主要色温)下白块区域去预先构建多个色温椭圆,这些色温椭圆在r/g-b/g色度空间内会呈现椭圆形高斯分布,本技术实施例利用这样的多个色温椭圆对参考白点进行筛选,目的是得到更加有效地反映当前场景色温(即实际上也反映了当前场景的光源信息)的目标白点。
112.在本技术实施例中,对色温椭圆进行具体解释说明如下:
113.首先,本技术实施例应用到了麦克亚当椭圆思想,如图2a示出的麦克亚当椭圆,在cie1931色度图中,对刚辨差(人眼刚刚能察觉出颜色差别所对应的色容差)的麦克亚当椭圆进行放大。以及如图2b例举的对麦克亚当椭圆进行分步(或分级)的示意图,从外到内的椭圆圈依次为4阶麦克亚当椭圆,3阶麦克亚当椭圆、2阶麦克亚当椭圆、1阶麦克亚当椭圆。其中对于每个麦克亚当椭圆,它的中心到边界的距离虽然各不相同,但椭圆上的各点的色差确是一致的,即图中“a”和“b”在同一个椭圆上,它们代表的颜色一致,“c”和“d”在同一个
椭圆上,它们代表的颜色一致。
114.其次,本技术实施例还应用到了“分析同一色温白色像素点在r/g和b/g色度空间的分布,研究得出固定色温的r/g值、b/g的值是在一个确定范围内”的结论。示例性的,在几种常见色温(d75、d65、d50、t84、a这五种色温)下,将标准色卡自标定白块区域中的像素点在r/g-b/g色度空间进行可视化显示的示意图,如图3a所示,图3a中横坐标为“r/g”且纵坐标为“b/g”,图3a示出了五个区域范围,每个区域范围反应了同一色温的白色像素点,从而五个区域范围分别反应了不同色温下的光源信息。
115.进一步的,结合麦克亚当椭圆也是评价光源色温的一种度量手段,示例性的,再进一步将图像中白色像素点的r/g值和b/g值从r/g-b/g色度空间转换到cie 1931xyy色度空间,采用如下公式(1):
[0116][0117]
其中,x表示cie 1931xyy色度空间的x维度,y表示y维度。
[0118]
从而将这五种色温下标准色卡自标定白块区域中的像素点在cie 1931xyy色度空间进行可视化显示,如图3b所示,图3b也示出了五个区域范围,每个区域范围反应了同一色温的白色像素点,并且五个区域范围也分别反应了不同色温下的光源信息。
[0119]
通过比较图3a和图3b,不同色温下标准色卡自标定白块区域中的像素点在两个色度空间中的分布可以看出,由于非线性变换改变了椭圆的中心、长短轴以及偏移角,分布趋势发生了改变,但是在两个色度空间中都是呈现椭圆形分布,具有相同的数据分布特征(即二维平面中,呈椭圆形的高斯分布)。
[0120]
据此,在本技术实施例中,基于麦克亚当椭圆的色容差理论,以及根据r/g-b/g色度空间的特点,利用几种色温下标准色卡自标定白块区域内的像素点,去计算不同色温下椭圆参数,根据椭圆参数,就能够构建本技术实施例提供不同色温对应的色温椭圆了。
[0121]
104、根据目标白点的rgb值,计算原始图像对应的图像增益。
[0122]
105、根据图像增益,对原始图像进行自动白平衡处理,得到经偏色校正的目标图像。
[0123]
在本技术实施例中,在预先构建了不同色温对应的色温椭圆之后,由于色温椭圆是用于表征不同色温下场景的光源信息,从利用多个色温椭圆从参考白点中筛选目标白点,这样目标白点是落入到指定一个色温椭圆的,从而根据目标白点所落入的色温椭圆就能够得到当前场景的色温(即间接地获得当前场景更加准确的光源信息),以进一步利用这样的目标白点去更加精准地完成对图像偏色校正。
[0124]
进一步,对于本技术实施例,是利用目标白点的rgb值计算得到更加准确的图像增益。一旦确定了图像增益,就可以对原始图像进行自动白平衡处理操作了,从而得到经偏色校正的目标图像。
[0125]
本技术实施例提供了一种自动白平衡方法,本技术实施例是对拍摄到的原始图像进行预处理得到rgb图像,并对rgb图像进行白点检测处理以从中获取参考白点,再利用预设的多个色温椭圆对这些参考白点进行筛选以得到目标白点,由于色温椭圆是用于表征不同色温下场景的光源信息的,据此得到的目标白点也是能够更好的反映当前场景的色温的,进而利用这样目标白点的rgb值去计算原始图像的图像增益并应用到自动白平衡处理,能够更加准确地完成对原始图像的偏色校正。相较于现有技术,解决了难以对图像完成精确校准偏色的的问题,本技术实施例提供的自动白平衡方法,是基于色容差理论的色温估计实现的,算法复杂度不高但应用性强,尤其是利用反映当前场景的色温的目标白点而确定的图像增益,不论是对于具有大面积色块的图像偏色,以及是由一种或者两种颜色主导场景下的图像偏色,应对这些多样性的图像偏色问题,本技术实施例都能够有效实现图像偏色校正,达到更加精确校准图像偏色的效果。
[0126]
为了对上述实施例做出更加详细的说明,本技术实施例还提供了另一种自动白平衡方法,如图4所示,本技术实施例提供以下具体步骤:
[0127]
201、利用预设色彩滤波阵列对原始图像进行插值处理,得到原始图像对应的rgb图像。
[0128]
其中,色彩滤波阵列(colorfilterarray,cfa)也就是我们常说的cmos色彩滤镜,它是一种颜色滤波的综合体,一般的光电传感器只能感应光的强度,不能区分光的波长(色彩),因此图像传感器需要通过色彩滤波(color filter)以获取像素点的色彩信息,色彩滤波根据波长对光线进行滤波,特定的色彩滤波只允许特定波长的光通过。
[0129]
在本技术实施例中,以原始图像为raw图像为例,对读取到的raw数据,本技术实施例采用cfa插值处理得到rgb图像。
[0130]
202、对rgb图像进行中值滤波处理,去除rgb图像中包含的异常像素点。
[0131]
其中,中值滤波是一种非线性平滑技术,它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值。
[0132]
rgb图像中可能会存在过曝或过暗的像素区域,本技术实施例可以采用中值滤波的方法对这样可能的像素点的灰度值进行调整,例如调整这样过曝或过暗像素点的灰度值为相邻多个其他像素点灰度值的中值,从而相当于是去除了rgb图像中类似过曝或过暗的异常像素点。
[0133]
203、遍历rgb图像包含的像素点,判断像素点是否落入预设rgb域色度空间。
[0134]
其中,预设rgb域色度空间为:利用预设红色灰度值区间、预设绿色灰度值区间和预设蓝色灰度值区间,在rgb三维坐标系上所构建的rgb域色度空间,该预设rgb域色度空间用于表征rgb域的类白区域。
[0135]
rgb图像是基于红绿蓝三个颜色通道各自灰度值叠加得到各式各样带颜色的图像,那么通过调整这三个颜色通道各自灰度值就能够使得像素点呈现人眼可见的白色。据此,本技术实施例在红绿蓝三个颜色通道上分别预设不同灰度值区间(例如:红色通道灰度值区间[rmin,rmax]、绿色通道灰度值区间[gmin,gmax]、蓝色通道灰度值区间[bmin,bmax]),并需求这些灰度值区间满足的约束条件为叠加呈现人眼可见的白色区域,这也相当于是利用这三个颜色通道上各自灰度值区间在rgb三维坐标系上构建了一个预设rgb域色度空间,并且使得该预设rgb域色度空间表征为人眼可见的白色区域。
[0136]
但需要说明的是,由于误差不可避免,这样构建的白色区域内难免也是会存在非白点像素的,所以将这样构建的白色区域称之为rgb域的类白区域。
[0137]
对于本技术实施例,遍历rgb图像包含的像素点,判断像素点是否落入预设rgb域色度空间,也就是,判断像素点在红绿蓝三个通道上各自的灰度值是否落入预设红色灰度值区间、预设绿色灰度值区间和预设蓝色灰度值区间,完成从rgb图像中查找落入这个类白区域的像素点操作。
[0138]
在本技术实施例中,利用预设rgb域色度空间完成的初步筛选操作,能够有效消除掉亮黄色和青色等非白块区域的干扰。
[0139]
204a、若判断像素点落入预设rgb域色度空间,则确定像素点落入rgb域的类白区域,则将这样的像素点确定为参考白点。
[0140]
204b、若判断像素点未落入预设rgb域色度空间,则确定像素点实际为非白点。
[0141]
在本技术实施例中,遍历rgb图像中像素点,通过判断像素点是否落入rgb域的类白区域,从而完成对rgb图像中各个像素点的初次筛选操作,如果一个像素点落入到这个类白区域,则将这个像素点确认为参考白点,进入后续的筛选操作。
[0142]
205a、遍历参考白点,将参考白点从rgb域转换到ycbcr域,得到参考白点对应的y值、cb值和cr值。
[0143]
其中,ycbcr域是指ycbcr色度空间,y为亮度,cb为蓝色色度值,cr为红色色度值,将参考白点从rgb域转换到ycbcr域,采用如下公式(2):
[0144][0145]
其中,y为亮度,cb为蓝色色度值,cr为红色色度值,中间3*3是国际照明委员会制定的rgb值转ycbcr值的标准转换矩阵。
[0146]
206a、根据参考白点对应的y值、cb值和cr值,判断参考白点是否落入预设ycbcr域色度空间内。
[0147]
其中,预设ycbcr域色度空间用于表征ycbcr域的类白区域,构建该预设ycbcr域色度空间的具体实施方法为如下:
[0148]
在ycbcr域,y和cb、cr之间具有一定的相关性:y较小时,cb、cr较小的像素表现为接近白色的灰度值;而y较大时,cb、cr较大的像素可以认为是白色物体收到光源污染得到的。基于这样相关性,保留接近白色和受到光源污染得到的白色像素点,借鉴自适应阈值算法的结论,采用约束条件,如下公式(3)和公式(4)在ycbcr域定义构建了一个三维结构,作为预设ycbcr域色度空间,如图5所示,用于表征ycbcr域的类白区域。
[0149][0150]
其中,为阈值,是实验测得,y为亮度,cb为蓝色色度值,cr为红色色度值。如图5示出的区域为一个上粗下细的柱状体,并且,每个cbcr平面是个菱形,当y较小时,cbcr控制的紧,从而只有少量像素参与计算,而y较大时,cbcr范围相应放大,很多像素可以参与计算。
[0151]
y_min<y<y_max
ꢀꢀꢀ
公式(4);
[0152]
其中,ymin和ymax,也是实验所得,用于设置该预设ycbcr域色度空间内的亮度区间。如图5示出的柱状体,基于ymin和ymax限制了落入该柱状体内的像素点的亮度,从而避免过亮和过曝的像素点落入到这个预设ycbcr域色度空间内。
[0153]
207a、若判断参考白点落入预设ycbcr域色度空间内,则保留参考白点,以便对参考白点进行后续步骤的验证。
[0154]
207c、若判断参考白点未落入预设ycbcr域色度空间内,则确定参考白点为非白点,并删除参考白点。
[0155]
需要说明的是,本技术实施例是优先将rgb图像中像素点经预设rgb域色度空间(即rgb域类白区域)进行筛选得到参考白点,再将参考白点经预设ycbcr域色度空间(即ycbcr域类白区域)进行筛选,从而对参考白点进行二次筛选,若参考白点落入到这个预设ycbcr域色度空间内,则进一步验证说明了增加该参考白点实际可能为白点的概率;但如果参考白点未落入到这个预设ycbcr域色度空间内,则可以直接验证说明该参考白点实际上为非白点,直接删除这样的参考白点。
[0156]
以及进一步需要说明的是,以上仅为本技术实施例提供的一种优选实施方式,对于rgb域色度空间筛选操作和ycbcr域色度空间筛选操作,根据实际筛选效率需求,本技术实施例还可以采取其他实施方式包括但不限于是:从两种筛选操作中选择任一种去获取图像中的参考白点;或者是,采用这两种筛选操作作为组合,但不限定两种筛选操作的先后顺序。
[0157]
下面,在本技术实施例中,对于经两次筛选后得到的参考白点,采用预设多个色温椭圆进行后续验证以获取目标白点,具体解释说明如下:
[0158]
208a、将参考白点映射到r/g-b/g色度空间,得到参考白点在r/g-b/g色度空间的坐标。
[0159]
209a、根据各个色温椭圆的椭圆参数和参考白点在r/g-b/g色度空间的坐标,判断参考白点是否落入色温椭圆。
[0160]
在本技术实施例中,可以采用如下判别公式(5)来验证在r/g-b/g色度空间内参考白点是否落入到某个色温椭圆内。
[0161][0162]
其中,a1、a2、a3、a4为椭圆参数,每个色温椭圆都相应具有一组(a1、a2、a3、a4);x表示每个参考白点在r/g-b/g色度空间中的横坐标,即参考白点的r/g值,y表示每个参考白点在r/g-b/g色度空间中的纵坐标,即b/g值;m和n标识为在r/g-b/g色度空间中色温椭圆的中心坐标。
[0163]
此外,本技术实施例还给出确定在r/g-b/g色度空间内的色温椭圆的具体实施方法,如图6所示,解释说明如下步骤。
[0164]
s301、获取不同色温下基于标准色卡标定的白块区域对应的像素点。
[0165]
s302、将像素点映射到r/g-b/g色度空间,计算不同色温下的椭圆参数。
[0166]
在本技术实施例中,以八种主要色温为例,通过统计在八种主要色温下标准色卡
中自标定白块区域的像素点在r/g-b/g空间的分布,使用最大期望算法(expectation-maximization algorithm,em),快速得到各个色温的统计特性(均值与协方差),再通过带置信区间的误差椭圆(又叫置信椭圆)进行不同置信度的椭圆分级(类比麦克亚当椭圆的阶数),得到各个色温椭圆的参数。
[0167]
示例性的,本技术实施例例举八种色温椭圆在r/g-b/g空间的示意图,如图7,其中各个色温椭圆的置信水平为99%。
[0168]
s303、根据不同色温下的椭圆参数,确定在r/g-b/g色度空间内的色温椭圆。
[0169]
其中,色温椭圆为在不同色温下白块区域在r/g-b/g色度空间内椭圆形高斯分布。在本技术实施例中,采用预设色温椭圆表达式,如下公式(6):
[0170]
[a1(x-m) a2(y-n)]2 [a3(x-m) a4(y-n)]
2-1=0
ꢀꢀꢀ
公式(6);
[0171]
其中,为椭圆参数,它们均由不同色温下标准色卡标定的白块区域根据em算法和置信椭圆理论计算得到;x表示每个参考白点在r/g-b/g色度空间中的横坐标,即参考白点的r/g值,y表示每个参考白点在r/g-b/g色度空间中的纵坐标,即b/g值;m和n标识为在r/g-b/g色度空间中色温椭圆的中心坐标。
[0172]
210a、若判断参考白点是落入色温椭圆,则根据不同色温椭圆内落入的参考白点,统计每个色温椭圆中包含的参考白点的数量。
[0173]
210d、若判断参考白点未落入色温椭圆,则将未落入色温椭圆的参考白点确定为非白点。
[0174]
在本技术实施例中,采用色温椭圆对经两次筛选后的参考白点进行进一步筛选,由于色温椭圆为在不同色温下白块区域在r/g-b/g色度空间内椭圆形高斯分布,据此如果参考白点未落入色温椭圆中,则表明该参考白点实际是为非白点,应该去除掉,反之,若参考白点落入到色温椭圆内,则进一步验证实际为白点。
[0175]
211a、将落入参考白点数量最多的色温椭圆确定为目标色温椭圆,将落入目标色温椭圆内的参考白点确定为目标白点。
[0176]
在本技术实施例中,在确定有参考白点落入不同色温椭圆之后,票选出落入参考白点数量最多的色温椭圆确定为目标色温椭圆,该目标色温椭圆最能代表当前场景的色温,即目标色温椭圆是反映当前场景的光源信息的,将目标色温椭圆内落入的参考白点作为目标白点,这些目标白点也是间接反映了当前场景的更加准确的色温的,以便后续利用这样目标白点的rgb值计算更加精准的图像增益。
[0177]
212a、根据目标白点的rgb值,计算原始图像对应的图像增益。
[0178]
在本技术实施例中,本步骤可以细化为如下步骤,如图8所示。
[0179]
s401、获取目标白点的rgb值。
[0180]
s402、根据每个目标白点的rgb值,在红绿蓝三个颜色通道上各自进行灰度值的累加操作,得到红色累计灰度值、绿色累计灰度值和蓝色累计灰度值。
[0181]
s403、根据红色累计灰度值、绿色累计灰度值和蓝色累计灰度值,计算不同颜色通道对应的增益,并组成原始图像对应的图像增益。
[0182]
在本技术实施例中,以原始图像为raw图像为例,进行解释说明如下:
[0183]
首先,获取目标色温椭圆内每个目标白点的rgb值,在红绿蓝三个颜色通道上分别
进行r值、g值和b值的累加操作,从而基于这些目标白点,得到r_sum、g_sum、b_sum。
[0184]
其次,由于raw图像是由r、gr、gb、b通过四种不同分布中的一种得到,那么需要计算四通道增益,具体采用如下增益计算公式(7)、(8)、(9):
[0185]
r_gain=g_sum/r_sum
ꢀꢀꢀ
公式(7);
[0186]
gr_gain=gb_gain=1
ꢀꢀꢀ
公式(8);
[0187]
b_gain=g_sum/b_sum
ꢀꢀꢀ
公式(9);
[0188]
其中,r_gain表示红色通道增益,b_gain表示绿色通道增益,gr_gain表示gr通道增益,gb_gain表示gb通道增益;r_sum表示基于目标白点得到在红色通道累加灰度值,g_sum表示基于目标白点得到在绿色通道累加灰度值,b_sum表示基于目标白点得到在蓝色通道累加灰度值。
[0189]
213a、根据原始图像的图像增益,进行自动白平衡处理,得到经偏色校正的目标图像。
[0190]
在本技术实施例中,仍以raw图像为例,根据步骤213a得到的四个通道增益,作为对原始图像的增益,遍历原始图像中的每个像素,逐个按照这四个通道增益进行像素调整(即像素乘以四个通道增益),从而实现了对整个原始图像的调整,再将经调整后的原始图像转换成rgb图像,作为目标图像,即经自动白平衡处理的偏色校正后的图像。
[0191]
进一步的,作为对上述图1、图4所示方法的实现,本技术实施例提供了一种自动白平衡装置。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。该装置应用于对图像进行偏色校正,具体如图9所示,该装置包括:
[0192]
获取单元501,用于获取原始图像对应的rgb图像;
[0193]
白点检测单元502,用于对所述rgb图像进行白点检测处理,得到所述rgb图像中包含的参考白点;
[0194]
筛选单元503,用于利用预设的多个色温椭圆对所述参考白点进行筛选,得到目标白点,所述色温椭圆用于表征不同色温下场景的光源信息;
[0195]
计算单元504,用于根据所述目标白点的rgb值,计算所述原始图像对应的图像增益;
[0196]
校正单元505,用于根据所述图像增益,对所述原始图像进行自动白平衡处理,得到经偏色校正的目标图像。
[0197]
进一步的,如图10所示,所述筛选单元503包括:
[0198]
统计模块5031,用于统计每个色温椭圆落入的参考白点的数量;
[0199]
确定模块5032,用于将落入参考白点数量最多的色温椭圆确定为目标色温椭圆;
[0200]
所述确定模块5032,还用于将落入所述目标色温椭圆内的参考白点确定为目标白点。
[0201]
进一步的,如图10所示,所述统计模块5031包括:
[0202]
映射子模块50311,用于将所述参考白点映射到r/g-b/g色度空间,得到所述参考白点在r/g-b/g色度空间的坐标;
[0203]
判断子模块50312,用于根据各个所述色温椭圆的椭圆参数和所述参考白点在r/
g-b/g色度空间的坐标,判断所述参考白点是否落入所述色温椭圆;
[0204]
统计子模块50313,用于当判断所述参考白点落入所述色温椭圆时,根据不同色温椭圆内落入的参考白点,统计每个所述色温椭圆中包含的参考白点的数量。
[0205]
进一步的,如图10所示,所述计算单元504包括:
[0206]
获取模块5041,用于获取所述目标白点的rgb值;
[0207]
累计模块5042,用于根据每个所述目标白点的rgb值,在红绿蓝三个颜色通道上各自进行灰度值的累加操作,得到红色累计灰度值、绿色累计灰度值和蓝色累计灰度值;
[0208]
计算模块5043,用于根据所述红色累计灰度值、所述绿色累计灰度值和所述蓝色累计灰度值,计算不同颜色通道对应的增益,并组成所述原始图像对应的图像增益。
[0209]
进一步的,如图10所示,所述装置还包括:
[0210]
所述获取单元501,还用于获取不同色温下基于标准色卡标定的白块区域对应的像素点;
[0211]
映射单元506,用于将所述像素点映射到r/g-b/g色度空间,计算不同色温下的椭圆参数;
[0212]
确定单元507,用于根据所述不同色温下的椭圆参数,确定在r/g-b/g色度空间内的色温椭圆,所述色温椭圆为在不同色温下所述白块区域在r/g-b/g色度空间内椭圆形高斯分布。
[0213]
进一步的,如图10所示,所述白点检测单元502包括:
[0214]
构建模块5021,用于利用预设红色灰度值区间、预设绿色灰度值区间和预设蓝色灰度值区间在rgb三维坐标系上构建预设rgb域色度空间,所述预设rgb域色度空间用于表征rgb域的类白区域;
[0215]
判断模块5022,用于遍历所述rgb图像包含的像素点,判断所述像素点在红绿蓝三个通道上各自的灰度值是否落入所述预设红色灰度值区间、所述预设绿色灰度值区间和所述预设蓝色灰度值区间;
[0216]
确定模块5023,用于当判断所述像素点在红绿蓝三个通道上各自的灰度值是落入所述预设红色灰度值区间、所述预设绿色灰度值区间和所述预设蓝色灰度值区间时,确定所述像素点落入所述rgb域的类白区域;
[0217]
所述确定模块5023,还用于根据所述像素点落入所述rgb域的类白区域,将所述像素点确定为参考白点。
[0218]
进一步的,如图10所示,所述装置还包括:
[0219]
转换单元508,用于遍历所述参考白点,将所述参考白点从rgb域转换到ycbcr域,得到所述参考白点对应的y值、cb值和cr值;
[0220]
判断单元509,用于根据所述参考白点对应的y值、cb值和cr值,判断所述参考白点是否落入预设ycbcr域色度空间内,所述预设ycbcr域色度空间用于表征ycbcr域的类白区域;
[0221]
保留单元510,用于当判断所述参考白点是落入预设ycbcr域色度空间内时,保留所述参考白点;
[0222]
删除单元511,用于当判断所述参考白点未落入预设ycbcr域色度空间内时,确定所述参考白点为非白点并删除所述参考白点。
[0223]
进一步的,如图10所示,所述装置还包括:
[0224]
中值滤波处理单元512,用于在对所述rgb图像进行白点检测处理,得到所述rgb图像中包含的参考白点之前,对所述rgb图像进行中值滤波处理,去除所述rgb图像中包含的异常像素点。
[0225]
进一步的,如图10所示,所述获取单元501还具体用于:
[0226]
利用预设色彩滤波阵列对所述原始图像进行插值处理,得到所述原始图像对应的rgb图像。
[0227]
综上所述,本技术实施例提供了一种自动白平衡方法及装置,本技术实施例对原始图像进行预处理得到rgb图像,以及进一步再进行中值滤波处理而去除掉rgb图像中的异常像素点,然后再利用rgb域类白区域和ycbcr域类白区域从rgb图像中经两次筛选而得到参考白点,再基于麦克亚当椭圆的色容差理论,利用不同色温下基于标准色卡标定的白块区域得到不同色温下的色温椭圆,进而利用色温椭圆从参考白点中筛选出目标白点,这样目标白点能够更加准确反映当前场景色温,从而根据这样目标白点计算图像增益并进行自动白平衡处理,能够得到更加精准的图像校正效果。
[0228]
本技术实施例提供的自动白平衡装置包括处理器和存储器,上述获取单元、白点检测单元、筛选单元、计算单元和校正单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
[0229]
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来应对图像偏色问题,提供了更加精确校准图像偏色的方法。
[0230]
本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的自动白平衡方法。
[0231]
本技术实施例提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的自动白平衡方法。
[0232]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0233]
在一个典型的配置中,设备包括一个或多个处理器(cpu)、存储器和总线。设备还可以包括输入/输出接口、网络接口等。
[0234]
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存储芯片。存储器是计算机可读介质的示例。
[0235]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除
可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0236]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0237]
本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0238]
以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献