发明内容
本发明所要解决的技术问题是提供一种图像传感器的温度自适应黑电平校准方法及系统,可实现黑电平对应亮度值的自适应修正,减小图像有效亮度因温度影响而发生的变化。
为解决上述问题,本发明提出一种图像传感器的温度自适应黑电平校准方法,包括以下步骤:
S1:针对当前帧的黑电平行,统计各个颜色通道的亮度均值BLC;
S2:将各个颜色通道的亮度均值BLC与第一限定阈值BLC_Max、第二限定阈值BLC_Thr比较,根据比较结果进行处理:
若BLC<BLC_Max,则不做处理,直接将亮度均值BLC作为校准值BLC_New;
若BLC>=BLC_Max且BLC<=BLC_Thr,则将第一限定阈值BLC_Max作为校准值BLC_New;
若BLC>BLC_Thr,则进入步骤S3;
S3:计算当前帧的所述各个颜色通道的亮度均值BLC值与上一帧存储的各个颜色通道的亮度均值BLC_Old的绝对值差BLC_D,将所述绝对值差BLC_D与抖动阈值BLC_Dlta进行比较,根据比较结果进行处理:
若BLC_D<=BLC_Dlta,则将亮度均值BLC_Old作为校准值BLC_New;
若BLC_D>BLC_Dlta,则计算新亮度均值BLC_New作为校准值BLC_New:BLC_New=(BLC-BLC_Thr)*BLC_K+BLC_Max,其中,BLC_K为斜率系数。
根据本发明的一个实施例,还包括步骤S4:保存当前帧的各个颜色通道的校准值作为下一帧的亮度均值BLC_Old。
根据本发明的一个实施例,初始帧存储的各个颜色通道的亮度均值BLC_Old设为0。
根据本发明的一个实施例,还包括步骤S5:将图像数据的亮度值P减去所述校准值,获得有效数据值。
根据本发明的一个实施例,所述步骤S2中,所述第一限定阈值BLC_Max为温度上升过程中黑电平数据亮度变化率开始高于图像数据变化率时对应的黑电平数据的亮度值;所述第二限定阈值BLC_Thr的取值范围为大于第一限定阈值BLC_Max且小于温度上升过程中黑电平数据亮度值与图像数据亮度值相同时对应的黑电平数据的亮度值。
根据本发明的一个实施例,所述抖动阈值BLC_Dlta的取值范围为0~2。
根据本发明的一个实施例,所述斜率系数BLC_K的取值范围为0.5~1。
本发明还提供一种图像传感器的温度自适应黑电平校准系统,包括:
黑电平行统计模块,执行针对当前帧的黑电平行,统计各个颜色通道的亮度均值BLC;
校准模块:执行将各个颜色通道的亮度均值BLC与第一限定阈值BLC_Max、第二限定阈值BLC_Thr比较,根据比较结果进行处理:
若BLC<BLC_Max,则不做处理,直接将亮度均值BLC作为校准值BLC_New;
若BLC>=BLC_Max且BLC<=BLC_Thr,则将第一限定阈值BLC_Max作为校准值BLC_New;
若BLC>BLC_Thr,则进入去抖动模块执行;
去抖动模块:执行计算当前帧的所述各个颜色通道的亮度均值BLC值与上一帧存储的各个颜色通道的亮度均值BLC_Old的绝对值差BLC_D,将所述绝对值差BLC_D与抖动阈值BLC_Dlta进行比较,根据比较结果进行处理:
若BLC_D<=BLC_Dlta,则将亮度均值BLC_Old作为校准值BLC_New;
若BLC_D>BLC_Dlta,则计算新亮度均值BLC_New作为校准值BLC_New:BLC_New=(BLC-BLC_Thr)*BLC_K+BLC_Max,其中,BLC_K为斜率系数。
根据本发明的一个实施例,还包括亮度均值保存模块:执行保存当前帧的各个颜色通道的校准值作为下一帧的亮度均值BLC_Old。
根据本发明的一个实施例,还包括有效数据处理模块:执行将图像数据的亮度值P减去所述校准值,获得有效数据值。
采用上述技术方案后,本发明相比现有技术具有以下有益效果:
本发明中,基于原有的黑行信息,在黑电平行的亮度均值变化率发生明显改变阶段将其亮度值进行限制,避免黑电平高于图像数据的值而导致图像整体发黑的问题,还通过对黑电平行的亮度均值进行去抖动,避免图像闪烁,整体使得黑电平行的亮度值可以跟随图像数据而变化,使有效值克服温度对其的影响,避免或尽可能避免图像亮度随温度变化而发生变化,无需额外的温度传感器,便可实现黑电平值的自适应修正。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。
在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施的限制。
参看图1和图2,在一个实施例中,图像传感器的温度自适应黑电平校准方法,包括以下步骤:
S1:针对当前帧的黑电平行,统计各个颜色通道的亮度均值BLC;
S2:将各个颜色通道的亮度均值BLC与第一限定阈值BLC_Max、第二限定阈值BLC_Thr比较,根据比较结果进行处理:
若BLC<BLC_Max,则不做处理,直接将亮度均值BLC作为校准值BLC_New;
若BLC>=BLC_Max且BLC<=BLC_Thr,则将第一限定阈值BLC_Max作为校准值BLC_New;
若BLC>BLC_Thr,则进入步骤S3;
S3:计算当前帧的所述各个颜色通道的亮度均值BLC值与上一帧存储的各个颜色通道的亮度均值BLC_Old的绝对值差BLC-D,将所述绝对值差BLC_D与抖动阈值BLC_Dlta进行比较,根据比较结果进行处理:
若BLC_D<=BLC_Dlta,则将亮度均值BLC_Old作为校准值BLC_New;
若BLC_D>BLC_Dlta,则计算新亮度均值BLC_New作为校准值BLC_New:BLC_New=(BLC-BLC_Thr)*BLC_K+BLC_Max,其中,BLC_K为斜率系数。
下面对本发明实施例的图像传感器的温度自适应黑电平校准方法进行展开描述,但不应以此作为限制。本发明实施例的图像传感器的温度自适应黑电平校准方法对图像传感器所生成的各帧图像均适用,每次执行均是针对一帧图像而言的,一帧图像包含了黑电平行及图像数据行,优选来说,对图像的各个帧均执行一遍,优选是在每一帧图像出来后实时地进行处理。
在步骤S1中,针对当前帧的黑电平行,统计各个颜色通道的亮度均值BLC。
例如,在图像为Bayer格式下,颜色通道包括B通道、Gb通道、Gr通道、R通道,分别统计当前帧的黑电平行的这四个颜色通道的亮度均值,分别以BLC_B,BLC_Gb,BLC_Gr,BLC_R表示,在后续的步骤中,针对这四个亮度均值,都要分别进行处理,使得各个颜色通道的亮度值均得以校准,下面的步骤中均以BLC来进行表示,以使描述更为简洁,对于这四个亮度均值来说都是适用的。
接着执行步骤S2,将各个颜色通道的亮度均值BLC与第一限定阈值BLC_Max、第二限定阈值BLC_Thr比较,根据比较结果进行处理。结合图5,横坐标为帧顺序(测试过程中,温度是在不断升高的),纵坐标为亮度值,a为未校准的BLC(表征黑电平亮度均值)曲线,b为图像数据亮度均值曲线,当然,可以仅取其中一颜色通道的数据来进行比对说明。由于图像传感器在温度上升的一定区间范围内,黑电平的亮度值变化率会从一定温度点开始增加,导致黑电平的亮度值上升很快,图像数据的亮度值变化率虽然会上升,但是变化率会变得比黑电平的亮度值小,导致黑电平值过高,整体图像会过暗,甚至黑电平的亮度值还会超过图像数据的亮度值,而通过第一限定阈值BLC_Max、第二限定阈值BLC_Thr的限制,可以使得黑电平的亮度值变化率得到一定的限制,保证黑电平亮度始终低于图像数据的亮度,并尽可能地使得两者的差距恒定,避免温升带来的有效数据变化问题。
经比较处理后,有以下三种情况:
若BLC<BLC_Max,则不做处理,直接将亮度均值BLC作为校准值BLC_New;此阶段中,温度对于黑电平数据和图像数据的亮度影响较小,不用进行处理而直接将原始的BLC作为校准后的值;
若BLC>=BLC_Max且BLC<=BLC_Thr,则将第一限定阈值BLC_Max作为校准值BLC_New;此阶段中,温度对于黑电平数据和图像数据的亮度存在影响,导致黑电平的亮度变化率和图像数据的亮度变化率增加,而且此阶段中黑电平的亮度变化率会超过图像数据的亮度变化率,因而需要限制黑电平的亮度变化,而此阶段中BLC随温度的变化还比较缓,所以可以用一个固定值来限制,将此阶段的亮度值保持为BLC_Max,拉低黑电平的亮度及其变化率;
若BLC>BLC_Thr,则进入步骤S3。此阶段中,当温度上升到一定值后对亮度变化率的影响进一步升高,此阶段中会存在亮度抖动较大的问题,因而执行步骤S3,改用原始的BLC乘以一个斜率来获得新的BLC,实现去抖动。
图5是随着时间变化的等间隔采样数据,由于高温箱(或其他场合)中,温度调节是非线性的,因此图中看起来开始一段变化率大,如果是温度等间隔采样的话,会随着温度升高,变化率变大。因而,开始使用BLC_Max限制,是由于此阶段BLC的偏差还比较小,可以用一个固定值限制,影响不大,但是随着后面累计的变化很可能差异变大,必须要跟随原始的值逐渐增加,才能更好的保持实际亮度不发生大的偏差。
优选的,所述步骤S2中,所述第一限定阈值BLC_Max为温度上升过程中黑电平数据亮度变化率开始高于图像数据变化率时对应的黑电平数据的亮度值;所述第二限定阈值BLC_Thr的取值范围为大于第一限定阈值BLC_Max且小于温度上升过程中黑电平数据亮度值与图像数据亮度值相同时对应的黑电平数据的亮度值。第一限定阈值BLC_Max和第二限定阈值BLC_Thr可以通过离线测定。
参看图5,曲线c为校准后的BLC_New曲线,其中有一段保持水平的线段,该线段对应的亮度值即为第一限定阈值BLC_Max,该线段的起始点即为温度上升过程中黑电平数据亮度变化率开始高于图像数据变化率的点,此时的温度大致在40~60℃之间,而该线段的终点所在帧中黑电平的亮度均值便是第二限定阈值BLC_Thr(在此终点到曲线a和b的交点之前的黑电平亮度均值均可作为第二限定阈值BLC_Thr),将此线段的亮度值约束为第一限定阈值BLC_Max。
接着执行步骤S3,计算当前帧的所述各个颜色通道的亮度均值BLC值与上一帧存储的各个颜色通道的亮度均值BLC_Old的绝对值差BLC_D,将所述绝对值差BLC_D与抖动阈值BLC_Dlta进行比较,根据比较结果进行处理,存在下面两种情况:
若BLC_D<=BLC_Dlta,则将亮度均值BLC_Old作为校准值BLC_New;说明亮度前后发生的变化不大,也就是抖动不大,采用上一帧的校准值即可;
若BLC_D>BLC_Dlta,则计算新亮度均值BLC_New作为校准值BLC_New:BLC_New=(BLC-BLC_Thr)*BLC_K+BLC_Max,其中,BLC_K为斜率系数,说明后面累计的变化很可能差异变大,必须要跟随原始的值逐渐增加,同时可以去抖动而更稳定。
可选的,所述抖动阈值BLC_Dlta的取值范围为0~2,这是亮度取值,将亮度划分为0~255后,该取值为其中的0~2,0表示亮度最低值。
可选的,所述斜率系数BLC_K的取值范围为0.5~1。
在一个实施例中,参看图2和图3,图像传感器的温度自适应黑电平校准方法还包括步骤S4:保存当前帧的各个颜色通道的校准值作为下一帧的亮度均值BLC_Old。可以以更新替换前一帧的数据的方式进行保存,在下一帧图像到来时,可以返回步骤S1执行。
优选的,步骤S3中比较的BLC_Old,假使在处理第一帧情况下,则没有上一帧校准过的亮度均值,因而可将该初始帧存储的各个颜色通道的亮度均值BLC_Old设为0。
在一个实施例中,参看图2和4,图像传感器的温度自适应黑电平校准方法还包括步骤S5:将图像数据的亮度值P减去所述校准值,获得有效数据值Pout=P-BLC_New。该步骤S5可以在各帧图像均校准后再执行,也可以在每帧校准后执行一次,均不作为限制。步骤S5和步骤S4的顺序也可以调换。
在图像下一帧时,返回步骤S1执行,无论是在存在步骤S5的实施例中还是不存在步骤S5的实施例中,返回点可以是在步骤S4,也可以是在步骤S5。
继续参看图5,经过本发明实施例的处理之后,得到的曲线c始终低于曲线a,且两者之间的差值也基本保持恒定,说明,黑电平的亮度均值与图像数据的亮度均值之间基本保持不变,使得有效值基本不会随温度的变化而发生变化。
本发明还提供一种图像传感器的温度自适应黑电平校准系统,包括:
黑电平行统计模块,执行针对当前帧的黑电平行,统计各个颜色通道的亮度均值BLC;
校准模块:执行将各个颜色通道的亮度均值BLC与第一限定阈值BLC_Max、第二限定阈值BLC_Thr比较,根据比较结果进行处理:
若BLC<BLC_Max,则不做处理,直接将亮度均值BLC作为校准值BLC_New;
若BLC>=BLC_Max且BLC<=BLC_Thr,则将第一限定阈值BLC_Max作为校准值BLC_New;
若BLC>BLC_Thr,则进入去抖动模块执行;
去抖动模块:执行计算当前帧的所述各个颜色通道的亮度均值BLC值与上一帧存储的各个颜色通道的亮度均值BLC_Old的绝对值差BLC_D,将所述绝对值差BLC_D与抖动阈值BLC_Dlta进行比较,根据比较结果进行处理:
若BLC_D<=BLC_Dlta,则将亮度均值BLC_Old作为校准值BLC_New;
若BLC_D>BLC_Dlta,则计算新亮度均值BLC_New作为校准值BLC_New:BLC_New=(BLC-BLC_Thr)*BLC_K+BLC_Max,其中,BLC_K为斜率系数。
根据本发明的一个实施例,还包括亮度均值保存模块:执行保存当前帧的各个颜色通道的校准值作为下一帧的亮度均值BLC_Old。
根据本发明的一个实施例,还包括有效数据处理模块:执行将图像数据的亮度值P减去所述校准值,获得有效数据值。
关于本发明实施例的图像传感器的温度自适应黑电平校准系统的具体内容可以参看前述实施例中关于图像传感器的温度自适应黑电平校准方法部分的描述,在此不再赘述。
本发明虽然以较佳实施例公开如上,但其并不是用来限定权利要求,任何本领域技术人员在不脱离本发明的精神和范围内,都可以做出可能的变动和修改,因此本发明的保护范围应当以本发明权利要求所界定的范围为准。