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

稳定白点信息的方法和设备,计算机程序产品和存储介质与流程

2022-03-19 12:39:07 来源:中国专利 TAG:


1.本公开涉及一种计算机实现的、用于在自动白平衡(awb)过程中从时间上稳定白点(wp)信息的方法。本公开还涉及一种用于实施该方法的数据处理设备,一种包括用于该方法的指令的计算机程序产品,以及一种包括用于该方法的指令的计算机可读存储介质。


背景技术:

2.在摄影和图像处理中,自动白平衡(awb)是全局地调节图像中的颜色以去除成像场景上由照明光源散发的任何不期望的色偏的过程。通过在很大程度上确定彩色图像质量,自动白平衡在相机的最终用户体验中起关键作用。现有技术的awb算法通常在许多场景上良好地执行,但是在某些情况下仍然失效。使相机指向接近awb的失效极限的场景,可产生显著降低最终用户体验的时间不稳定性。
3.一种弥补awb算法的不稳定性的传统方法是通过时间滤波器使awb输出白点(wp)平滑。通常,这可以是在过去收敛时间间隔t中作用在wp上的加权和/或裁剪均值滤波器。这通过根据采集模式(静止,视频,取景器)对t定义调节参数而广泛地用于工业中。
4.妮卢法尔
·
普里安(niloufar pourian)、拉斯蒂斯拉夫
·
卢卡茨(rastislav lukac)于2019年在electronic imaging(电子成像)发表的《autowhite balance stabilization in digital video》(数字视频中的自动白平衡稳定),第2019(9)卷,第373-1至373-5页中的时间awb稳定方法,适应性地从一组预调节值中选择平滑滤波器收敛时间t。对于收敛时间选择的决定是通过检测光源和图像场景的变化作出的。对于如下场景中的每一个,存在单独的t值:(i)场景改变但光源不变,(ii)光源改变但场景不变,以及(iii)场景改变和光源改变同时发生。通过分析从成像传感器处采集的每个帧计算的数个特征信号的时间变化来检测场景和光源变化。特征信号遵循相关色温(cct)、颜色统计和高频图像信息。通过awb算法在图像信号处理(isp)流水线内计算cct。颜色变化信息基于颜色统计的帧到帧距离,颜色统计是在图像帧内局部和全局地测量的单独的颜色通道直方图。最后的线索基于帧序列中的整体运动检测,其通过匹配连续帧中提取的高频特征(例如,角落和边缘)来测量。
5.该方法的主要缺点是:对于所有三种情况,该方法仅使用平滑滤波器来稳定awb输出。现在,设想一种情况:终端用户将相机摇摄到会误导awb对错误的wp作决定的困难场景上,且终端用户将相机保持在该场景上。一旦收敛时间t结束,平滑滤波器就使错误的wp输出延迟。然而,无论选择了多大的t,用户都可能决定将相机更长时间地保持在困难场景上,且输出的稳定wp最终将是错误的。
6.此外,用于测量时间颜色和/或光源变化的cct值是从与wp相同的isp链获得的,因此它们紧密相关。因此,awb对wp的错误估计将导致对cct的错误估计,这对于awb稳定中的环境变化的结论将产生误导。
7.此外,这种方法依赖于高频图像特征检测和匹配,其要么在计算方面昂贵要么需要指定的硬件(hw)。
8.乔纳森
·
巴伦(jonathan barron)、yun-ta tsai于2017年在cvpr(conference on computer vision and pattern recognition,计算机视觉与模式识别会议)发表的《fast fourier color constancy》(快速傅里叶颜色恒常性),第6950至6958页中描述的现有技术,涉及一种低计算成本的awb方法,并提供awb结果的时间稳定性,作为直接从awb估计过程获得的补充。通过两步程序在颜色色度空间中估计wp。在第一步,通过与一组预先训练的卷积核的卷积来分析图像帧颜色内容的色度空间分布。通过对图像的大数据集进行训练来学习该核,使得卷积结果在注释的地面真实wp处达到其峰值。在运行时间操作期间,第二步在卷积结果上拟合类高斯概率密度函数,并将wp估计成拟合分布的平均值。拟合分布的方差用于评估峰值检测的优度,原因是大的方差指示出卷积结果不太尖峰且wp不太可能是精确的。因此,在尺度规一化之后,方差用于直接测量wp估计的置信度。通过卡尔曼类滤波器对wp值进行时间平滑来实现补充的时间wp稳定。滤波器中的平滑程度和wp转换的速度由wp置信度估计来控制。
9.这种awb稳定的主要缺点类似于妮卢法尔
·
普里安、拉斯蒂斯拉夫
·
卢卡茨于2019年在电子成像发表的《auto white balance stabilization in digital video》(数字视频中的自动白平衡稳定),第2019(9)卷,第373-1至373-5页中描述的方法的主要缺点。设想相同的情况:终端用户将相机摇摄到困难场景处,且只要该终端用户乐意就长时间将相机保持在该场景上。困难场景将导致广泛散布的卷积结果,这将具有大拟合方差和低置信度。低置信度将导致卡尔曼滤波器使输出wp过度平滑,但是最终将根据场景变得有多么困难而或早或晚地达到错误的wp。
10.更通常地,每个awb算法使用不同的假设,并因此具有有限的有效性范围。出现在固有awb算法的有效性极限附近的场景可产生误导的wp结果。结果,已处理图像中的颜色可能获得相当不自然的色偏。除此之外,在awb假设有效的边界附近的相机取景的小变化可导致已记录视频的连续帧中不同的色偏,或者如在设备取景器中所观察到的不同的色偏。这可导致已记录视频中的颜色振荡,该颜色振荡主要取决于振荡的幅度和频率,并会引起用户的负面体验。降低用户体验的另一个现象是当场景改变时改变白平衡(wb)增益,但是发光体是相同的。通常,当正确的awb结果由于场景变化而变成错误的结果时,就会导致这种现象。虽然可以用传统的滤波器(例如,裁剪平均值)来控制振荡,但是后一种情况不能用这种装置来解决。使所采集的帧序列内感知到的帧到帧色偏稳定是重要的。通过在awb算法的输出处稳定wp,可维持颜色增益的稳定。


技术实现要素:

11.本公开的目的在于提供一种使从awb过程输出的wp信息(即白点或白平衡增益)平滑的改进方法。
12.根据本公开,该目的通过一种计算机实现的、用于在自动白平衡(awb)过程中从时间上稳定白点(wp)信息的方法来实现,该方法包括:a)接收照度水平信息、awb统计、以及输入wp信息,awb统计包括来自表示场景的帧序列的帧的图像像素数据,输入wp信息是从awb过程获得的;b)针对输入wp信息生成置信度值;c)基于主色计数和照度水平信息确定阈值;d)当置信度值低于阈值时,将二进制wp更新状态设置为锁定状态,而当置信度值高于阈值时,将二进制wp更新状态设置为解锁状态;以及,e)当二进制wp更新状态为锁定时,根据从
所述序列的先前帧获得的wp信息生成最终wp信息,而当二进制wp更新状态为解锁时,从输入wp信息生成最终wp信息。
13.根据本公开的方法允许锁定或解锁wp信息。换句话说,在锁定状态期间,只要awb算法处于困难场景中,wp就保持不变,使得对于新的白点的计算非常不可靠。一旦经过了困难场景,更新参数被设置为解锁,使得wp可再次改变。关于锁定/解锁的决定是基于置信度估计的,以确定潜在的awb算法何时可能使wp估计失效。
14.在本公开的实施例中,步骤b)包括:生成图像像素数据的直方图,置信度值是根据直方图生成的,直方图可选地是在对数色度空间中生成的二维直方图。
15.使用直方图来计算置信度值较为方便,原因是可从图像像素数据很容易计算直方图,这意味着对于置信度值不需要外部输入。使用对数色度空间是可选的,原因是这允许更容易进行颜色分离。
16.在本公开的实施例中,步骤b)包括:确定第一置信度度量,以及确定第二置信度度量。确定第一置信度度量包括:对具有至少两个点的直方图区间的数量进行计数,以确定本质非零区间的数量;将本质非零区间的数量乘以区间面积以确定直方图面积;以及将直方图面积除以最大面积以确定第一置信度度量,最大面积是区间的总数与区间面积的乘积。确定第二置信度度量包括:将直方图区间的计数除以awb统计中的不饱和块的总数,以确定离散概率分布;以及计算离散概率分布的熵以确定第二置信度度量。
17.直方图面积提供对场景中颜色的总体散布的估计,而不提供哪些颜色的重要性相比其他颜色更占主导地位。这是特别用于awb算法的相关wp置信度度量,该awb算法不受几种颜色的主导地位的影响,而是对所有颜色提供重要性。另一方面,直方图的熵对于当颜色分布不均匀时,即当存在占主导地位的颜色时易于出错的awb算法,直方图的熵是有用的。
18.在本公开的实施例中,步骤b)包括:通过计算第一置信度度量和第二置信度度量的加权平均值来确定置信度值;或确定一个或多个附加置信度度量、特别是由所述awb过程生成的置信度度量,并通过计算第一置信度度量、第二置信度度量和一个或多个附加置信度度量的加权平均值来确定置信度值。
19.组合多个置信度子度量提高了方法的稳健性,使得方法可用于各种已知的awb算法。
20.在本公开的实施例中,步骤c)包括确定帧的主色计数、特别是通过对直方图中的峰值的数量进行计数来确定帧的主色计数。
21.使用直方图、特别是对数色度直方图是有利的,原因是这具有不同的分色。此外,主色计数(即帧中的主色的总数)通常在时间上是十分稳定的。
22.在本公开的实施例中,步骤c)包括:将照度水平信息转换成介于0和1之间的第一概率值,可选地包括:对于照度水平低于3000勒克斯的照度水平信息,将第一概率值设置为0;对于照度水平高于5000勒克斯的照度水平信息,将第一概率值设置为1;以及对照度水平介于3000和5000勒克斯之间的照度水平信息进行线性映射,而将第一概率值设置为介于0和1之间的值;和基于主色计数,可选地使用如下等式计算第二概率值d
颜色

[0023][0024]
其中,归一化水平和基本水平是预定自然数,主色计数是在帧f处场景的主色计
数;并且时间间隔为预定时间间隔。
[0025]
在明亮的日光下采集的室外场景中的wp估计非常可靠,原因是大多数实际awb算法缩小了明亮的日光的可能的cct范围。这意味着对于高于5000勒克斯的照度水平,适应性阈值可取较小的值,或者替代地,可将第一概率值设置为1,来表示容易的场景。低于3000勒克斯的照度水平可由在预报天气和/或暗淡条件下的室外场景或室内场景产生,即实际上是任何光源。因此,cct范围不能受到限制,必须将wp置信度阈值设置为高,或者可将第一概率值设置为0。在3000勒克斯和5000勒克斯之间增加照度水平,阈值应该逐渐降低,或者第一概率值应该从0逐渐变化至1。除了照度水平,颜色的数量也与wp置信度相关。场景中的颜色内容可以是通过场景中存在的主色的数量来测量的。由于这仍然可产生帧到帧的跳跃,所以第二概率值可选地基于颜色内容的趋势,而不是基于主色计数本身。颜色内容的趋势是通过在预定时间间隔内颜色的总计数量来测量的。可选择表示多种主色的基本水平,这些主色表示场景的颜色内容既不丰富也不贫乏。在该时间段内总计的基本水平颜色的数量应该在第二概率值中产生0值。如果对于该时段,场景由其最小值即仅1个主色组成,则第二概率值应该接近-1。
[0026]
在本公开的实施例中,步骤c)包括:通过组合第一概率值和第二概率值来确定阈值驱动信号,并基于阈值驱动信号确定阈值;或者,确定一个或多个附加概率值、特别是基于场景中存在或不存在面部来确定的概率值,通过组合第一概率值、第二概率值和一个或多个附加概率值来确定阈值驱动信号,并基于阈值驱动信号确定阈值。
[0027]
以此方式,阈值驱动信号是由照明条件和颜色计数确定的。这样,在由室外或室内场景引起照度水平不确定的情况下,贫乏的颜色内容仍然能够下拉阈值驱动信号。
[0028]
在本公开的实施例中,该方法进一步包括:使用经α裁剪均值滤波器来使输入wp信息平滑,以确定平滑后的输入wp信息,可选地将平滑后的输入wp信息用于步骤e)。
[0029]
使wp平滑意味着遵循wp变化的趋势,而没有任何帧到帧的波动和跳跃。通过分别对每一个wp分量进行时间平均,可相当有效地遵循平滑趋势。依照wp格式,wp分量可以是例如r通道、g通道和b通道,色度比r/g和b/g等。令人遗憾的是,输入信号中的突然跳跃可误导时间平均。这可发生在拍摄接近固有awb算法的有效性极限的场景时。α裁剪均值滤波器通过在平均之前丢弃最小值和最大值的α部分,而从时间上使wp的每个分量平滑,以减轻突然跳跃。
[0030]
在本公开的实施例中,当二进制wp更新状态是解锁时,步骤e)包括:e1)在序列中所述帧之前的预定数量的帧期间二进制wp更新参数被解锁的情况下,设置最终wp信息等于输入wp信息或等于平滑后的输入wp信息;或者,e2)在序列中所述帧之前的所述预定数量的帧中的一帧期间二进制wp更新参数从锁定变成解锁的情况下,生成最终wp信息,作为输入wp信息或平滑后的输入wp信息的加权平均值、以及从先前帧获得的wp信息。
[0031]
这允许在预定数量的帧期间将锁定wp转换回到实际wp,从而避免在锁定wp和实际wp实质上不同且wp更新参数变成解锁的情况下可能发生的wp中的突然跳跃。
[0032]
在本公开的实施例中,步骤e2)包括:在序列中在所述帧之前的进一步预定数量的帧上,估计输入wp信息或平滑后的输入wp信息的导数;根据导数、输入wp信息或平滑后的输入wp信息、以及从所述先前帧获得的wp信息来确定输入wp信息或平滑后的输入wp信息是否不偏离从所述先前帧获得的wp信息;如果输入wp信息或平滑后的输入wp信息不偏离从所述
先前帧获得的wp信息,则将最终wp信息设置为等于从所述先前帧获得的wp信息;以及如果输入wp信息或平滑后的输入wp信息偏离从所述先前帧获得的wp信息,则生成最终wp信息,作为输入wp信息或平滑后的输入wp信息的加权平均值、以及从所述先前帧获得的wp信息。
[0033]
在该实施例中,对wp导数进行分析以识别wp趋势,该wp趋势在某些情况下有助于确定最终wp信息。
[0034]
在本公开的实施例中,步骤e2)包括:通过在所述序列中在所述帧之后的帧的预定转换周期期间,将最终wp信息由从所述先前帧获得的wp信息平滑地变化到输入wp信息或平滑后的输入wp信息,而生成最终wp信息作为加权平均值。
[0035]
这允许在预定数量的帧期间使锁定wp逐渐变化回到实际wp,从而避免在锁定wp和实际wp实质上不同且wp更新参数变成解锁的情况下可能发生的wp中的突然跳跃。
[0036]
在本公开的实施例中,wp信息包括白点wp或白平衡wb增益。
[0037]
这允许该方法在awb算法中常用的白点值或白平衡值上起作用。
[0038]
根据本公开,利用数据处理设备来实现该目的,该数据处理设备包括用于执行上述方法的装置。
[0039]
根据本公开,利用计算机程序产品来实现该目的,计算机程序产品包括指令,该指令在该程序由计算机执行时使得计算机执行上述方法。
[0040]
根据本公开,利用计算机可读存储介质来实现该目的,计算机可读存储介质包括指令,该指令在由计算机执行时使得计算机执行上述方法。
[0041]
可容易地理解,上述实施例中的一个或多个实施例可容易地彼此组合。
[0042]
总之,上述方法允许锁定或解锁wp信息。换句话说,在锁定状态期间,只要awb算法处于困难场景中,wp就保持不变,使得对新的白点的计算非常不可靠。一旦经过了困难场景,更新参数被设置为解锁,使得wp可再次改变。关于锁定/解锁的决定是基于置信度估计的,以确定潜在的awb算法何时可能使wp估计失效。特别地,置信度基于多个置信度子度量的组合,以能够与所选择的任何现代awb算法一起操作。
[0043]
根据本公开,除了传统使用的wp平滑之外,每当awb不可能产生正确的wp估计时,wp就被锁定。因此,只要场景和/或照明条件指示不安全,就保持正确锁定的wp,而不是在预调节的收敛时间t结束之后收敛到错误的wp。根据本公开的awb稳定算法在三个方面不降低最终用户体验。第一方面是当awb稳定保持wp解锁且awb正确地估计wp时。第二方面是当awb稳定不必要地将wp锁定到正确的wp时。第三方面是当awb稳定在awb返回到正确的wp之后长时间内没有保持锁定到错误的wp时,在很少的情况下,当由输入awb wp误导而使得awb稳定之后锁定到错误的wp时。该算法独立于任何潜在的awb算法。此外,如果awb算法提供可靠的wp置信度估计,则可利用可靠的wp置信度估计来提高awb稳定质量。任何其它可用的wp置信度估计,如由awb过程提供的估计,也可用于提高awb稳定质量。该算法能够利用表示估计的wp的可靠性的多个不同的线索。这里,照度水平被展示为指示室外场景中日光的存在。在证明其它线索与awb wp估计精度具有有意义的关系的情况下,可类似地使用其它线索,如人脸存在。可调节适应性阈值,以实现具有较高或较低wp锁定可能性的或多或少侵略性awb稳定行为。该算法具有轻量计算和存储器跟踪,这使得该算法对于软件或固件实现具有吸引力。稳定不依赖于需要消耗功率的例如运动估计的像素处理的专用硬件。该算法很容易实现软件集成,这是因为该算法不需要耗时的调节过程并具有最小的组件内依赖性。
附图说明
[0044]
将通过下面的描述和附图进一步解释本公开。
[0045]
图1示出了awb稳定算法相对于来自sw堆栈和isp流水线的其它相关组件的位置的示图。
[0046]
图2示出了awb稳定算法的示图。
[0047]
图3示出了awb稳定算法的示图。
[0048]
图4示出了视频帧(左上)、视频帧的具有以红色标记的饱和块的awb统计(右上)、色度空间中的awb统计直方图(左下)、以及对数色度空间中的awb统计直方图(log(r)-log(g),log(b)-log(g))(右下)的示例。
[0049]
图5示出了照度水平和基于照度水平的阈值驱动信号之间的输入-输出映射。
[0050]
图6示出了阈值驱动信号和阈值之间的输入-输出映射。
[0051]
图7示出了测试场景,其中awb结果在输入awb wp、其平滑后的版本和稳定后的版本的情况下持续失效。
具体实施方式
[0052]
将针对特定实施例并参考特定附图来描述本公开,但是本公开不限于此,而是仅由权利要求限定。所描述的附图仅是示意性的,而非限制性的。在附图中,出于说明的目的,一些元件的尺寸可被夸大且不按比例绘制。尺寸和相对尺寸不一定对应于本公开的实际实施。
[0053]
此外,说明书和权利要求中的术语“第一”、“第二”、“第三”等用于在相似的元件之间进行区分,而不一定用于描述先后或时间顺序。这些术语在适当的情况下可互换,且本公开的实施例可以以不同于本文描述或说明的其它顺序操作。
[0054]
此外,说明书和权利要求中的术语“顶部”、“底部”、“上方”、“下方”等用于描述性目的。这样使用的术语在适当的情况下可互换,且本文描述的本公开的实施例可以以不同于本文描述或说明的其它方向操作。
[0055]
此外,各种实施例,尽管被称为“优选”、“可选”,但是应被解释为可实现本公开的示例性方式,而不是限制本公开的范围。
[0056]
图1示出了awb稳定算法100相对于来自软件(sw)堆栈102和图像信号处理器(isp)流水线104的其它相关组件的位置的示图。
[0057]
传感器(例如相机)106给sw层102和isp流水线104提供输入。isp流水线104准备awb统计108。用于awb稳定算法100的awb统计具有与任何高级awb算法完全相同的要求。也就是说,用于准备局部r、g和b通道平均值或求和的图像像素数据必须针对黑电平、线性度和透镜阴影进行校正。否则,在色度/对数色度空间中的数据点的分布将显示在所采集的场景中不存在的颜色信息,和/或该分布可能失真。这可误导awb和awb稳定算法。awb稳定假设针对awb算法定义的awb统计格式还可应用于awb稳定算法,且相同的sw架构可被重复使用。
[0058]
在awb算法110和awb稳定100之间存在连接。具体地,需要将awb结果馈送到awb稳定算法100。更具体地,awb wp 112与awb wp置信度114(如果可用的话)一起被发送。
[0059]
awb稳定100还需要照度水平输入116。照度水平输入116是由相机传感器sw适配层
102提供的。照度水平输入116可从基于针对曝光、模拟增益和灵敏度的平均图像亮度和相机传感器设置的测量或估计中获得。大多数高级awb算法利用这种照度水平估计,因此一些传感器适应性sw层很可能已经可用。相同的照度水平值还必须馈送到awb稳定算法。
[0060]
需要将awb稳定结果,即wp信息118(白点或白平衡wb增益),而不是来自awb算法110的awb结果,馈送到isp流水线104中的白平衡块120。wp和wb增益之间的示例转换在亚尔诺
·
尼卡宁(jarno nikkanen)于2011年在optical engineering(光学工程)发表的《color constancy by characterization of illumination chromaticity》(通过表征照明色度的颜色恒定性)第50(5)卷,第057204-1-14页中找到,且可在sw层102中完成。
[0061]
就整体同步而言,必须向awb稳定算法馈送awb统计,该awb统计与用于通过awb稳定来产生awb稳定算法的输入wp的awb统计相同。根据本公开的awb稳定是一种在低计算成本的算法,且不会对系统中已存在的那些算法引入显著的延迟,从而不存在同步问题。
[0062]
图2示出了awb稳定算法100的输入和输出。第一输入是awb统计108,awb统计108还被馈送到awb过程110。awb统计108是n
×
n个图像像素的局部求和或平均值。awb统计用于在对数色度域中构建直方图,需要直方图以便以多种方式分析当前帧的颜色内容。较大的统计块尺寸n提高了估计的颜色精度,原因是滤除了噪声。然而,较大的块更可能包含两个不同颜色的对象之间的边缘,且块内的像素平均导致生成场景中不存在的人工“过渡”颜色。因此,较大的块尺寸n将使得整个过渡颜色部分较大。
[0063]
稳定算法100期望从常规的awb算法110获得wp估计(即,输入wp)。不需要对awb算法110的输出进行平滑或滤波。理想地,awb稳定100应该是负责使wb增益平滑的唯一组件。awb wp的精度在很大程度上还决定awb稳定算法的精度。如果awb从一开始就不正确,则awb无法被awb稳定100固定。
[0064]
照度水平与所有现代awb算法的性能充分相关。照度水平116用于确定场景是否在日光期间成像,在日光期间,由于cct搜索范围可能较窄,使得wp估计的置信度可以更大。此外,显著的照度水平变化指示了导致wp解锁的光源变化。照度还可用于检测超低光(ull)场景,在ull场景处可禁用awb稳定。理想地,照度是在成像场景处测量的平均照度水平。由于精确测量hw不可用于移动成像,因此计算出的估计也足够了。用于从场景中估计照度水平的示例方法可在亚尔诺
·
尼卡宁于2011年在optical engineering(光学工程)发表的《color constancy by characterization of illumination chromaticity》(通过表征照明色度的颜色恒定性),第50(5)卷,第057204-1-14页中找到。
[0065]
一些awb算法110可针对估计的wp产生置信度度量。awb稳定算法100不一定需要wp置信度估计,然而,如果可用且相对准确,则wp置信度估计将提高算法性能。
[0066]
可选地,还可以向awb稳定100提供面部检测信息138。一些awb算法110借助于来自采集的图像中的检测到的人脸的肤色信息,大幅提高wp的精度。因此,只有在已知awb算法110在存在面部的情况下非常可靠的情况下,wp估计112的信任才会有一定的增加。
[0067]
除了标准输入列表之外,awb稳定算法100需要一组固定参数和一组调节/配置参数120。可调节参数限定了算法是否更容易和更频繁地锁定到最终可靠wp,或者可调节参数对awb算法给予更高的信任且在更偶尔地锁定wp。调节参数主要与对场景颜色内容和wp可靠性的分析相关。另一组参数与传感器配置例如进入的awb统计的帧速率和分辨率相关。
[0068]
awb稳定100的输出格式与awb算法110本身的输出例如根据wb增益或以wb增益比
表示的wp相同,且取决于已存在的sw/hw架构。
[0069]
参考图4以更详细地描述awb稳定方法100。从顶层视角来看,awb统计108用于通过直方图计算模块124在对数色度空间中构建直方图122。从直方图122导出两个wp置信度度量(即,直方图区域置信度128和直方图熵置信度130),且这些置信度度量可与外部可用的和内部计算的awb置信度度量相组合。一些或所有可用的度量由置信度估计块134使用来创建总置信度132。直方图还用于在颜色检测块136中评估(最近历史的)场景颜色内容。阈值生成块142将场景颜色内容与照度水平估计116一起使用,以确定用于在可调节的范围内对总置信度132进行阈值转换的值140。可选的面部检测信息还可由阈值生成块142使用。当wp应该锁定/解锁到当前平滑后的wp时,总置信度132经过适应性阈值144以产生标志146。理想地,awb wp还由平滑块150平滑以提供平滑后的wp 152。根据标志146和平滑后的wp的最近趋势,wp决策块148决定是输出平滑wp、wp的最后锁定值、还是平滑wp与锁定wp之间的加权平均值。当上述过程导致锁定/解锁状态改变时,锁定wp和平滑后的wp之间的转换以灵活渐进的方式发生,避免最终稳定后的wp 154的任何跳跃。下面将更详细地描述awb稳定方法100的各种块。
[0070]
通常,awb统计108包括对于每个r、gr、gb和b颜色通道的每个n
×
n像素块中的帧像素数据的局部求和和/或平均值。图4的顶部行示出了视频帧(左)及其awb统计(右)。局部求和/平均值中的值在很大程度上取决于帧亮度,即取决于传感器曝光和增益设置。一种消除对图像亮度的依赖性的简单方式是获取和这两个比率,其中g=0.5(gr gb)。图4的左下部示出了色度空间(r/g,b/g)中的awb统计的2d直方图。直方图通过对来自awb统计108的、落入来自一组预定区间的每个区间内的(r/g,b/g)点的数量进行计数而形成。每个(r/g,b/g)点是从每个awb统计网格块获得的,其中仅排除了包含饱和像素的网格块。应注意,当不同颜色的对象的(r/g,b/g)值低于1时,不同颜色的对象(例如塑料袋、t恤、夹克和地板)峰值彼此相当接近。这使得这些颜色之间的分离相当困难,使得颜色内容评估复杂化。减小直方图区间(bin)的尺寸可能显示更好的分离,然而,这使得帧到帧直方图区间化的稳定性更差,并增加总区间计数即计算负荷。该问题可使用对数函数来解决,已知对数函数扩展了小于1的值的分离。因此,awb稳定算法100可选地使用对数色度空间图4的右下部示出了对数色度空间中的直方图,其中可以看到袋、t恤、夹克和地板的颜色之间的清晰分离。以与色度直方图相同的方式构建该对数色度空间直方图。每个awb统计网格块用于通过获取(log(r)-log(g),log(b)-log(g))来计算一个点,并将所有点放入预定的一组区间中。
[0071]
应注意,直方图在颜色空间中具有相同的整体分辨率,即,直方图在几乎相同的范围内具有相同的直方图区间计数。通过获取色度空间中的范围限制的对数来获得对数色度空间中的范围限制。直方图的范围和区间计数取决于awb统计108的范围,即取决于相机传感器和isp设置。进行区间计数的选择,使得可提供足够高的分辨率以允许接近的颜色之间的分离,且所采集的帧序列中的任何小的帧到帧变化不会在直方图中产生不稳定性。
[0072]
总置信度度量132是可用的一些或所有可能的wp置信度度量的加权平均值。平均值的权重应该是正的,且这些权重的求和理想地应该为1。可能的awb稳定算法100对所有wp
置信度度量使用相等的权重。然而,应注意,如果一个度量明显比其它度量更可靠,则不成比例度量的权重是可选的,但是权重的总和理想地应该保持为1。在这种情况下,大量的实验应确认一个度量相比其余度量可靠得多,且在比较重要的大多数实际情况下也是如此。
[0073]
当实现两个基本wp置信度度量128、130时,已使用对数色度直方图112。直方图122示出了所采集的帧的实际颜色内容及其在对数色度空间中的分布。例如,根据灰色世界(gw)假设(其更多信息,参见挨德温
·
兰德(edwin land)、约翰
·
麦卡恩(john mccann)于1971年在journal of the optical society of america(美国光学会志)发表的《lightness and retinex theory》(亮度和retinex理论),第61(1)卷,第1-11页),如果更多种类的颜色构成场景,则光源估计更加可靠。许多现代实用的awb算法基于亚尔诺
·
尼卡宁于2011年在optical engineering(光学工程)发表的《color constancy by characterization of illumination chromaticity》(通过表征照明色度的颜色恒定性),第50(5)卷,第057204-1-14页中描述的灰色搜索方法,其对表征白图之下的点赋予较高的权重。这种与场景颜色在色度空间中的分布,或者等同地在对数色度空间中的分布相关的现象可通过分析直方图来测量。
[0074]
第一置信度度量是对数色度直方图面积128。这是直方图区间下方的本质非零区域。本质非零区间是这样的区间,其区间计数大于每区间2个点,从而过渡颜色和噪声不会误导大量的有效区间。然后,本质非零区间的数量乘以单个区间的面积,并除以最大可能面积。最大可能面积是构建直方图的范围的面积。该面积可进一步乘以小的归一化因子,该归一化因子取决于当前统计配置。直方图面积提供对场景中颜色的总散布的估计,而不提供哪些颜色的重要性相比其他颜色更占主导地位。这是相关的wp置信度度量,特别是对于不受几种颜色的主导地位的影响,而是对所有颜色提供重要性的awb算法110,例如,在joost van de weijer、theo gevers于2005年在热那亚举办的ieee图像处理国际会议2005上发表的《color constant based on the grey-edge deposition》(基于灰色边缘假设的颜色恒定性),第2卷,第ii-722页中描述的灰色边缘假设。
[0075]
第二置信度度量是对数色度直方图熵130。对于awb算法110还需要wp置信度度量,当颜色分布不均匀时,即当存在占主导地位的颜色时,awb算法110容易出错。如果直方图区间计数除以awb统计网格中的非饱和块的总数,则直方图获得离散概率分布的含义。获取该分布的熵而得到另一个wp置信度度量:
[0076][0077]
这里hi是用于第i个直方图区间的归一化区间计数,且直方图尺寸是n
×
n区间。除以归一化因子2logn确保了熵置信度保持在区间[0,1]内。
[0078]
理想地,awb稳定中使用的度量的最小限度应该是直方图面积与对数色度直方图熵的组合。然而,可使用其它置信度度量。将容易理解的是,如下附加置信度度量中的任何一个纯粹是示例性的,且不应被解释为限制所附权利要求的保护范围。
[0079]
一种这样的置信度度量可以是内部计算的awb置信度126。具体地,在awb置信度中可内在地使用计算成本最低且可靠的wp度量。
[0080]
另一个这样的置信度度量可以是awb算法置信度114。在awb算法110提供这样的置
信度度量的情况下,强烈建议使用该信息,原因是awb算法110的置信度的精度对awb稳定参数调节和度量加权具有显著影响。
[0081]
除了wp置信度度量128、130之外,使用对数色度直方图112来提取和分离场景中的主色。该信息用于对确定wp的锁定/解锁的总置信度132确定适应性阈值140的当前值。所采集的场景中的主色是具有相同色度值的大空间区域,或者等同地,是在awb统计网格中具有非常相似的值的大区域。因此,主色在色度/对数色度空间直方图中形成峰值。在一实施例中,通过检测对数色度直方图中的大且可很好分离的峰值来确定场景中的主色。此外,所检测的直方图峰值应该可很好地分离,原因是一对接近峰值可指示同一对象上的不同阴影,或者具有相似颜色的两个不同对象。在任一种情况下,这可以从一个帧到另一帧显著地改变,这将在场景中产生颜色内容的不自然的不确定性。
[0082]
在一实施例中,通过运行穿过直方图区间的5
×
5移动窗口来检测峰值。如果5
×
5窗口的中心区间的区间计数具有比落入窗口内的所有其它区间更大的区间计数,则检测到峰值。除非所有区间的累积区间计数超过落入区间的5
×
5窗口的限制内的色度点的特定最小量,否则不会检测到峰值。该阈值转换的目的是忽略由于对象消失、对象反射、对象遮挡、对象之间的转换以及其他类型的失真而导致的小峰值。色度点的该最小量取决于awb统计网格的分辨率。对于较大的分辨率,数量需要成比例地增加,原因是在输入图像的每平方面积将存在更多的色度点,因此更多的色度点将参与导致不稳定性的过渡现象。此外,5
×
5的移动窗口确保了3个区间大小的最小峰值到峰值距离。
[0083]
此外,该用于主色检测的方法是低计算成本的。对数色度直方图尺寸的n=100的典型尺寸将导致总共n
×
n=100
×
100=10000个直方图区间。然而,非零区间的计数通常远小于10000,通常是大约几百,这取决于场景的颜色内容。因此,主色检测的有效实现对每个帧的非零区间的位置保持跟踪,且仅在5
×
5窗口滑动通过直方图时跟踪这些位置。
[0084]
下面是描述本公开的一实施例的主色检测算法的伪代码。
[0085][0086]
awb稳定算法100基于对总wp置信度132进行阈值转换而获得用于锁定和解锁wp的信号。置信度度量有时会出错,原因是置信度度量是估计过程本身的结果。例如,如果大多数色度点落入一些灰色搜索区域内,则由单一颜色组成的困难场景可给出高wp置信度。然而,这并不意味着对象需要是消色差的,且wp置信度和wp估计两者可被场景所欺骗。在这种情况下,最好提高用于锁定/解锁决策的阈值水平。存在其他情况,其中,在明亮的日光下采集场景和/或颜色的变化很大,且几乎任何awb算法将成功,即使置信度由于某种原因被不正确地较低估计。在这种情况下,最好降低用于锁定/解锁决策的阈值。
[0087]
在一实施例中,基于阈值驱动信号来确定阈值。该驱动信号可选地包括用于场景的可靠性的所有可用且已知的线索。所使用的线索是照度水平116和(短历史的)场景颜色变化136。
[0088]
在明亮的日光下采集的室外场景中的wp估计非常可靠,原因是大多数实际awb算法110缩小了明亮的日光的可能的cct范围。这意味着对于高于5000勒克斯的照度水平,适应性阈值可取较小的值,或者替代地,可将适应性阈值的驱动信号设置为1,来表示容易的场景。可用的照度水平是估计的结果,而不是测量的结果,因此不是非常精确。低于3000勒克斯的照度水平可由在预报天气和/或暗淡条件下的室外场景或室内场景产生,即实际上是任何光源。因此,cct范围不能受到限制,必须将wp置信度阈值设置为高,或者可将wp置信度阈值的驱动信号设置为0。在3000勒克斯和5000勒克斯之间增加照度水平,阈值应该逐渐降低,或者阈值的驱动信号应该从0逐渐变化到1。该行为在图5中示出。
[0089]
阈值驱动信号在更大程度上是由场景颜色变化而不是照度水平来确定的。因此,在范围[-1,1]内而不是在范围[0,1]内限定颜色内容驱动信号是有意义的。这样,当在由室外或室内场景引起的情况下,照度水平不确定时,贫乏的颜色内容仍然能够下拉阈值驱动信号。
[0090]
场景中的颜色内容可通过场景中存在的主色的数量来测量。由于这仍然可产生帧到帧的跳跃,因此驱动信号理想地基于颜色内容的趋势,而不是基于主色计数本身。颜色内容的趋势是通过在过去1秒时间内颜色的总计数量来测量的。在一实施例中,选择4个主色的基本水平,这4个主色表示场景的颜色内容既不丰富也不贫乏。因此,在过去1秒内总计的这4个颜色在阈值驱动信号中产生0值。如果对于过去1秒,场景由其最小值即仅1个主色组成,则驱动信号值应该接近-1。如果场景在过去1秒内平均包含多于baselevel=4个颜色的颜色,则驱动信号可无上限地增长,因此总是遮蔽低光条件。这实际上通过如下等式实现:
[0091][0092]
选择归一化水平=100的归一化因子,使得对于过去1秒内的30帧,一种颜色的最小值可导致接近-1的值。应注意,在帧速率改变时,需要相应地重置归一化水平参数,即归一化水平。
[0093]
最终的阈值驱动信号是颜色内容和照度水平分量的求和d=d
颜色
d
照度水平
。利用图6所描绘的映射,该驱动信号d用于将阈值平滑地设置在期望的限制内。即,低于-0.6的驱动信号水平指示场景既不受颜色计数信任也不受照度水平信任,且wp置信度阈值应设置在其最大水平。d值高于1意味着场景的颜色内容丰富,或者照度水平对应于明亮的室外场景,或者两者皆有,且阈值降低到其最小值。d在-0.6和1之间每一个值线性地映射到阈值的阈值最小值和最大值之间的值。映射的最小值和最大值取决于wp置信度,并基于大量的实验设置。因此,需要重复实验来改变总的wp置信度和/或阈值驱动信号的形成。
[0094]
使wp平滑意味着遵循wp变化的趋势,而没有任何帧到帧的波动和跳跃。通过分别对每一个wp分量进行时间平均,可相当有效地遵循平滑趋势。取决于wp格式,wp分量可以是例如r通道、g通道和b通道,色度比r/g和b/g等。令人遗憾的是,输入信号中的突然跳跃可误导时间平均。在一实施例中,α裁剪均值滤波器(j
·

·
贝德纳(j.bee bednar)、特里
·
瓦特(terry watt)于1984年2月在ieee transactions on acoustics,speech,and signal processing(ieee声音、语言和信号处理会刊)上发表的《alpha-trimmed means and their relationship to median filter》(α裁剪均值及其与中值滤波器的关系),第32(1)期,第145至153页)用于从时间上使wp的每个分量平滑,其在平均之前丢弃最小值和最大值的α部分。这意味着对于每个wp分量,由从过去1秒起所有wp分量值形成缓冲器,并且这些值的11%——最小的5.5%个值和最大的5.5%个值——被丢弃。其余89%的wp分量值被平均以获得当前帧的平滑wp分量值。缓冲的wp分量值的5.5%可导致分数,这取决于帧/每秒(fps)速率。然后,该数被四舍五入到最近的整数,即,在求平均之前丢弃最大的round(fps
×
5.5/100)个值和最小的round(fps
×
5.5/100)个值。选择的数值为5.5%,使得从每个wp分量缓冲器中丢弃至少一个最大值和一个最小值,即使对于10至15fps的最小速率也是如此,其中存在一些帧速率波动和/或偶尔的帧丢弃。
[0095]
当相机指向针对awb算法110的困难场景时,wp值向错误的方向移动。无论平滑滤波器如何前进,平滑wp 152将早晚都会收敛到错误的方向。代替简单的平滑,本公开在平滑滤波器150开始朝向错误的wp收敛之前锁定wp 154,且当场景再次变得可靠时释放wp 154。
[0096]
当场景可靠且awb 110确信这一点时,输出稳定后的wp 154遵循平滑wp 152。在每个帧中,将总wp置信度132与适应性阈值140进行比较。一旦置信度132降低到阈值140之下,
就产生标志146以指示wp应被锁定。这意味着输出稳定后的wp 154不再遵循平滑wp 152的值,而是保持输出相同的值,直到作出解锁的决定为止。
[0097]
解锁的决定取决于平滑wp 152的实际情况。一旦置信度132回到阈值140之上,就产生输出稳定后的wp 154准备解锁的标志146。此外,如果平滑wp 152和最后一个输出wp几乎相等,则输出wp 154再次开始遵循平滑wp。然而,这种情况是很罕见的,且当平滑wp 152和输出wp 154彼此不接近时,将输出wp直接切换到平滑wp将导致wp值的跳跃。wp的跳跃导致色偏的跳跃,这是相当差的用户体验。因此,在这种情况下,在1秒的转换周期内,输出wp 154朝向平滑wp 152平滑地变化。这在转换周期内逐帧发生,其中对于每个帧f,输出wp是过去帧f-1的输出wp和平滑wp之间的凸组合(即加权平均值)。凸组合的权重取决于在多长时间之前产生用于解锁wp的标志:
[0098]
稳定wpf=γ
×
平滑wpf (1-γ)
×
稳定wp
f-1

[0099]
γ=(时间戳(f)-解锁标志时间戳)/(1秒)。
[0100]
除了从锁定wp到平滑wp 152的平滑转换之外,还存在另一个有问题的情况。设想场景的光条件保持不变,且用户慢慢地摇摄离开有问题的场景。进一步设想,摇摄的时间足够慢地发生,使得平滑wp将在比1秒的转换周期更长的时间内收敛回到光源的正确wp。在这种情况下,输出wp将沿着错误的方向朝向平滑wp移动,且在转换结束之后,输出wp将与平滑wp一起往回移动向光源的真实wp。输出wp的值中的这种凸起将被认为是图像帧序列中的不必要的错误色偏变化,即使该变化平滑地发生。因此,在用户摇摄离开困难场景且产生wp解锁标志的情况下,输出wp可保持相同,“软锁定”,只要平滑wp朝向输出wp的锁定值移动。在平滑wp值开始移动离开输出wp的当前值的情况下,可使用1秒的平滑转换。在这种情况下,当平滑wp和输出wp彼此尽可能接近时,转换将开始。整个过程被称为回退wp预期方法。
[0101]
平滑wp的趋势可通过分析其导数来监测。导数的小值对应于平滑wp的小的时间波动或非常慢的趋势。在这些情况中的任一情况下,朝向平滑wp的转换是可选的。通过与因果滤波器的标准卷积,进行时间线性滤波,而从平滑wp的最后几个帧值估计导数:
[0102][0103]
在一实施例中,使用基于截断泰勒级数展开的、由一阶导数的有限差分近似形成的5抽头(k=4)导数滤波器。如果最近已(重新)开始awb稳定100且平滑wp具有少于5个样本,则使用较短的导数近似。滤波器的脉冲响应可以是:
[0104]
导数滤波器=[25,-48,36,-16,3]/12,对于k=4,
[0105]
导数滤波器=[11,-18,9,-2]/6,对于k=3,
[0106]
导数滤波器=[3,-4,1]/2,对于k=2,
[0107]
导数滤波器=[1,-1],对于k=1。
[0108]
输出wp决策算法148用下面的伪代码来说明。
[0109][0110]
应注意,在产生解锁标志146之后,平滑wp 152的一个分量可朝向输出wp的相应分量收敛,而另一个分量可以是发散的。因此,最好分别对每个wp分量实现回退预期和平滑转换的决策。否则,例如,如果平滑转换的决策由开始发散的第一wp分量触发,则输出wp的其余分量将沿着错误的wp方向来回移动。这将导致不必要的凸起。
[0111]
很容易理解,上面提到的各参数和时间周期(例如,归一化水平、基本水平、1秒时间周期、权重等)可被设置为不同的值和/或可通过在各种数据集上测试该方法来确定。此外,对于不同的awb过程,这些值也可以不同。
[0112]
图7示出了用于在awb过程中从时间上稳定wp信息的上述方法和系统的测试结果。典型的测试对由移动电话在真实世界测试场景中采集的图像帧序列离线运行awb稳定算法100。与每个帧相关的数据是awb统计、awb wp、照度水平估计、具有awb统计网格块的索引的
分布图,awb统计网格块包含饱和像素以及与awb执行的时间对应的时间戳。测试设备基于包括isp统计流水线和集成awb算法的移动平台。
[0113]
图7示出了在拍摄场景的视频时记录的测试帧序列,在该场景中整体awb持续失效。这种场景在办公室环境条件下发生,其中人坐在作为背景的纯橙色窗帘前面的椅子上。首先,相机指向远方,相机视场(fov)包括多种颜色的多个对象,且正确地估计wp。接着,相机更靠近人,聚焦在面部上,wp开始在错误的方向轻微运动,然后相机快速地摇摄远离面部并转到橙色窗帘上,其中估计的wp完全错误。最后,相机移动回到人的面部,并继续进一步往回移动,以在fov内获得颜色丰富的场景。结果,估计的wp从窗帘的错误估计的wp移动回到正确的值。该行为在图7中分别用针对wp的比率r/g和比率b/g的细的红线和蓝线来描绘。虚线表示通过α裁剪均值滤波器得到的积分awbwp的平滑版本。粗线表示输出稳定后的wp,其标签位于wp锁定和wp解锁的位置处。应注意,r/g通道和b/g通道按照前面描述的逐个分量返回预期方法解锁处于不同的帧号的wp。
[0114]
尽管已参考具体实施例描述了本公开的各方面,但是将容易理解,这些方面可在由权利要求限定的本公开的范围内以其它形式实现。
再多了解一些

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

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

相关文献