用于使用自动聚焦统计的运动检测的方法、系统及设备转让专利

申请号 : CN200880017362.4

文献号 : CN101690160B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 伊戈尔·苏博京亚历山大·莫赫纳秋克

申请人 : 普廷数码影像控股公司

摘要 :

本发明揭示用于使用例如锐度得分或亮度值等成像器内已存在的统计数据的运动检测的方法、系统及设备。所述方法包含:获得包含对应窗口的相应图像帧的至少两个统计数据集合;初始化运动计数器;针对每一窗口,确定特定窗口的相对差值;将所述相对差值与第一阈值进行比较。如果所述相对差值大于所述第一阈值,那么所述方法递增所述运动计数器;并通过将所述运动计数器的值与第二阈值进行比较确定是否存在运动。所述运动检测可进一步考虑所述图像帧的某些区域的相对重要性。

权利要求 :

1.一种用于使用成像器检测运动的方法,其包括:

获得多个图像帧的运动敏感统计数据,其中每一图像帧包括多个对应窗口;

针对每一窗口,使用来自第一图像帧及第二图像帧的运动敏感统计数据确定特定窗口的相对差值,其中所述相对差值计算为特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据之间的差的绝对值除以所述特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据的最大值;

确定运动得分,其中所述运动得分是对运动变量乘以对应于每一窗口的权重因数的求和,且其中所述运动变量是表示在所述特定窗口中感测到的运动量的变量,其在所述相对差值大于第一阈值的情况下被设定为等于1,且在所述相对差值不大于第一阈值的情况下被设定为等于0;及通过将所述运动得分的值与第二阈值进行比较确定是否存在运动;

其中所述权重因数基于其所对应的所述特定窗口的相对重要性。

2.一种用于使用成像器检测运动的方法,其包括:

获得多个图像帧的运动敏感统计数据,其中每一图像帧包括多个对应窗口;

针对每一窗口,使用来自第一图像帧及第二图像帧的运动敏感统计数据确定特定窗口的相对差值,其中所述相对差值计算为特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据之间的差的绝对值除以所述特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据的最大值;

确定运动得分,其中所述运动得分是对运动变量乘以对应于每一窗口的权重因数的求和,且其中所述运动变量是表示在所述特定窗口中感测到的运动量的变量,其在所述相对差值大于第一阈值的情况下被设定为等于1,且在所述相对差值不大于第一阈值的情况下被设定为等于0;及通过将所述运动得分的值与第二阈值进行比较确定是否存在运动;

其中接近所述图像帧的中心的窗口的所述权重因数高于接近所述图像帧的周边的窗口的所述权重因数。

3.一种用于使用成像器检测运动的方法,其包括:

获得多个图像帧的运动敏感统计数据,其中每一图像帧包括多个对应窗口;

针对每一窗口,使用来自第一图像帧及第二图像帧的运动敏感统计数据确定特定窗口的相对差值,其中所述相对差值计算为特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据之间的差的绝对值除以所述特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据的最大值;

确定运动得分,其中所述运动得分是对运动变量乘以对应于每一窗口的权重因数的求和,且其中所述运动变量是表示在所述特定窗口中感测到的运动量的变量,其在所述相对差值大于第一阈值的情况下被设定为等于1,且在所述相对差值不大于所述第一阈值的情况下被设定为等于0;及通过将所述运动得分的值与第二阈值进行比较确定是否存在运动;

其中所述运动敏感统计数据包括锐度得分、亮度值或锐度得分与亮度值的组合中的一者。

4.一种用于使用成像器检测运动的方法,其包括:

获得多个图像帧的运动敏感统计数据,其中每一图像帧包括多个对应窗口;

针对每一窗口,使用来自第一图像帧及第二图像帧的运动敏感统计数据确定特定窗口的相对差值,其中所述相对差值计算为特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据之间的差的绝对值除以所述特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据的最大值;

确定运动得分,其中所述运动得分是对运动变量乘以对应于每一窗口的权重因数的求和,且其中所述运动变量是表示在所述特定窗口中感测到的运动量的变量,其在所述相对差值大于第一阈值的情况下被设定为等于1,且在所述相对差值不大于第一阈值的情况下被设定为等于0;及通过将所述运动得分的值与第二阈值进行比较确定是否存在运动;

其中所述第一阈值表示单个窗口在图像帧之间的改变量。

5.一种用于使用成像器检测运动的方法,其包括:

获得多个图像帧的运动敏感统计数据,其中每一图像帧包括多个对应窗口;

针对每一窗口,使用来自第一图像帧及第二图像帧的运动敏感统计数据确定特定窗口的相对差值,其中所述相对差值计算为特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据之间的差的绝对值除以所述特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据的最大值;

确定运动得分,其中所述运动得分是对运动变量乘以对应于每一窗口的权重因数的求和,且其中所述运动变量是表示在所述特定窗口中感测到的运动量的变量,其在所述相对差值大于第一阈值的情况下被设定为等于1,且在所述相对差值不大于第一阈值的情况下被设定为等于0;及通过将所述运动得分的值与第二阈值进行比较确定是否存在运动;

其中所述第二阈值表示所述运动得分的最大值,超出所述最大值存在运动。

6.一种用于使用成像器检测运动的方法,其包括:

获得多个图像帧的运动敏感统计数据,其中每一图像帧包括多个对应窗口;

针对每一窗口,使用来自第一图像帧及第二图像帧的运动敏感统计数据确定特定窗口的相对差值;

确定运动得分,其中所述运动得分是对运动变量乘以对应于每一窗口的权重因数的求和,且其中所述运动变量是表示在所述特定窗口中感测到的运动量的变量,其在所述相对差值大于第一阈值的情况下被设定为等于1,且在所述相对差值不大于第一阈值的情况下被设定为等于0;及通过将所述运动得分的值与第二阈值进行比较确定是否存在运动;

其中所述相对差值计算为特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据之间的差的绝对值除以所述特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据的最大值。

7.一种成像装置,其包括:

像素阵列,所述像素阵列输出多个像素值;及

图像处理单元,其耦合到所述像素阵列,所述图像处理单元可操作以检测由所述多个像素值表示的景物中的运动,其中使用不同图像帧中的锐度得分及亮度值中的至少一者的改变检测运动;

其中每一图像帧包括多个窗口,且其中针对每一图像帧的每一窗口确定锐度得分及亮度值中的所述至少一者;

其中所述图像处理单元进一步可操作以:

针对每一窗口,使用来自第一图像帧及第二图像帧的锐度得分及亮度值中的所述至少一者确定特定窗口的相对差值,其中所述相对差值计算为特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据之间的差的绝对值除以所述特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据的最大值;

确定运动得分,其中所述运动得分是对运动变量乘以对应于每一窗口的权重因数的求和,且其中所述运动变量是表示在所述特定窗口中感测到的运动量的变量,其在所述相对差值大于第一阈值的情况下被设定为等于1,且在所述相对差值不大于第一阈值的情况下被设定为等于0;及通过将所述运动得分的值与第二阈值进行比较确定是否存在运动;且其中接近所述图像帧的中心的窗口的所述权重因数高于接近所述图像帧的周边的窗口的所述权重因数。

8.一种成像系统,其包括:

透镜;

像素阵列,其用于捕获通过所述透镜接收的图像帧;及

图像处理电路,其可操作以检测所述捕获的图像帧中的运动,其中所述运动检测包括:获得多个图像帧的运动敏感统计数据,其中每一图像帧包括多个对应窗口;

针对每一窗口,使用来自第一图像帧及第二图像帧的运动敏感统计数据确定特定窗口的相对差值,其中所述相对差值计算为特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据之间的差的绝对值除以所述特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据的最大值;

确定运动得分,其中所述运动得分是对运动变量乘以对应于每一窗口的权重因数的求和,且其中所述运动变量是表示在所述特定窗口中感测到的运动量的变量,其在所述相对差值大于第一阈值的情况下被设定为等于1,且在所述相对差值不大于第一阈值的情况下被设定为等于0;及通过将所述运动得分的值与第二阈值进行比较确定是否存在运动;

其中接近所述图像帧的中心的窗口的所述权重因数高于接近所述图像帧的周边的窗口的所述权重因数。

9.一种成像系统,其包括:

透镜;

像素阵列,其用于捕获通过所述透镜接收的图像帧;及

图像处理电路,其可操作以检测所述捕获的图像帧中的运动,其中所述运动检测包括:获得多个图像帧的运动敏感统计数据,其中每一图像帧包括多个对应窗口;

针对每一窗口,使用来自第一图像帧及第二图像帧的运动敏感统计数据确定特定窗口的相对差值;

确定运动得分,其中所述运动得分是对运动变量乘以对应于每一窗口的权重因数的求和,且其中所述运动变量是表示在所述特定窗口中感测到的运动量的变量,其在所述相对差值大于第一阈值的情况下被设定为等于1,且在所述相对差值不大于第一阈值的情况下被设定为等于0;及通过将所述运动得分的值与第二阈值进行比较确定是否存在运动;

其中所述相对差值计算为特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据之间的差的绝对值除以所述特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据的最大值。

10.一种成像系统,其包括:

透镜;

像素阵列,其用于捕获通过所述透镜接收的图像帧;及

图像处理电路,其可操作以检测所述捕获的图像帧中的运动,其中所述运动检测包括:获得多个图像帧的运动敏感统计数据,其中每一图像帧包括多个对应窗口;

针对每一窗口,使用来自第一图像帧及第二图像帧的运动敏感统计数据确定特定窗口的相对差值,其中所述相对差值计算为特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据之间的差的绝对值除以所述特定窗口的所述第一图像帧与第二图像帧的所述运动敏感统计数据的最大值;

确定运动得分,其中所述运动得分是对运动变量乘以对应于每一窗口的权重因数的求和,且其中所述运动变量是表示在所述特定窗口中感测到的运动量的变量,其在所述相对差值大于第一阈值的情况下被设定为等于1,且在所述相对差值不大于第一阈值的情况下被设定为等于0;及通过将所述运动得分的值与第二阈值进行比较确定是否存在运动;

其中所述运动敏感统计数据包括来自位于所述图像处理单元中的统计引擎的信息及针对所述成像系统的自动聚焦操作获得的信息中的一者。

说明书 :

用于使用自动聚焦统计的运动检测的方法、系统及设备

技术领域

[0001] 所揭示实施例一般来说涉及图像捕获装置,且更明确地说涉及图像捕获装置的运动检测技术。

背景技术

[0002] 存在依赖于运动检测的与图像处理有关的数种算法。举例来说,在2006年8月25日提出申请的题为METHOD,APPARATUS AND SYSTEM PROVIDINGADJUSTMENT OF PLXEL DEFECT MAP(提供像素缺陷映射调整的方法、设备及系统)的序列号为11/509,712的共同待决申请案中描述的方法在确定像素阵列中的缺陷位置时使用运动检测将真实缺陷与景物的小元素分离。作为另一实例,被动连续自动聚焦算法使用运动检测来控制其重新聚焦程序。
[0003] 用于运动检测的简单算法将当前帧的图像与参考帧图像进行比较并对在所述帧之间是不同的像素的数目进行计数。然而,此类型的运动检测算法需要大的帧存储器缓冲器且因此,不能在具有电路面积限制的单芯片系统(SOC)成像器系统中容易地实施。此外,大的帧存储器增加成像装置的成本。
[0004] 因此,需要用于成像器内的运动检测的经改进方法及系统。进一步需要可在SOC系统中实施的运动检测系统及方法。

发明内容

[0005] 本发明的实施例涉及成像器中的运动检测。通过以下步骤检测运动:获得多个图像帧的运动敏感统计数据,其中每一图像帧包括多个对应窗口;使用来自第一图像帧及第二图像帧的运动敏感统计数据确定特定窗口(针对每一窗口)相对差值;并基于所确定的相对差值确定是否存在运动。本发明的实施例还包含成像系统,所述成像系统包含通过运动检测方法检测运动的图像处理电路。本发明的实施例进一步包含成像装置,所述成像装置包含像素阵列及耦合到所述像素阵列的图像处理单元,其中所述成像处理单元可操作以使用不同图像帧中锐度得分及亮度值中的至少一者中的改变检测运动。 附图说明
[0006] 图1图解说明根据所揭示实施例可在其之间检测到运动的图像帧。 [0007] 图2是图解说明根据所揭示实施例用于使用统计数据进行运动检测的方法的各步骤的流程图。
[0008] 图3是实施所揭示实施例的单芯片系统(SOC)成像器构造的框图。 [0009] 图4描绘可采用根据所揭示实施例构造的成像器的相机系统,例如数码相机或数码摄像机。

具体实施方式

[0010] 在以下详细说明中,参照形成本文一部分的附图,且附图中以图解说明方式显示特定实施例。这些实施例经充分详细地描述以使所属领域的技术人员能够制作及使用所述实施例,且应理解可进行结构、逻辑或程序改变。明确地说,在以下说明中,以流程图方式描述各过程。在一些实例中,除后一程序步骤需要前一程序步骤的存在的情况外,跟随其它步骤的步骤可以是颠倒的、呈不同序列的或并行的。可通过图像处理管线或处理像素值阵列的其它电路实施所揭示的过程。可使用硬件电路、经编程的处理器或所述两者的组合实施图像处理。
[0011] 所揭示实施例提供一种用于基于出于其它目的已存在于成像器内的统计数据来检测运动的运动检测方法、系统及设备。所揭示实施例基于经成像景物的两个帧之间的统计数据的相对值确定所述景物中是否存在运动。此允许以最小费用容易地实施所揭示实施例。
[0012] 可在大多数成像器中容易得到的一种类型的统计数据是锐度得分。锐度得分是表示一区内邻近区域之间的对比度的数字。在数码相机中,通过测量像素阵列的邻近区域的强度之间的差确定锐度得分。像素阵列被划分成多个区,且在分析每一区内的邻近区域之后计算每一区的锐度得分。在红色/绿色/蓝色(RGB)像素阵列中,可通过将RGB值转换成色调/饱和度/值(HSV)系统(其中值V变量用于表示强度)计算每一像素的强度。以此方式,可计算每一像素的强度值,并可计算多个像素的强度差。这些强度差表示锐度得分。包含数码相机的大多数相机具有自动聚焦特征,其中可自动地聚焦通过相机观察到的景物。当图像离焦时,所述图像的锐度得分减少;使用锐度得分实施自动聚焦功能性(通过基于锐度得分改变透镜与传感器之间的距离)。
[0013] 可在大多数成像器中容易得到的另一类型的统计数据为流明(luma)。流明表示图像中的亮度且还可称为亮度值。像素阵列的每一像素均具有相关联的亮度值,其表达为多位数字数据值的组合(例如,红色、绿色及蓝色各为一个值)。如果使用8个位来描述红色、绿色及蓝色中的每一者,那么所述每一者的值可介于从0到255范围内。因此,对于此RGB 8位成像器,所述亮度值也可介于从0到255范围内。
[0014] 图1图解说明两个图像帧(帧A及帧B),每一图像帧包括布置成4x4栅格的多个窗口30。常规自动聚焦统计引擎(例如,图3的统计引擎122)以布置成NxM栅格的一组窗口30操作并为每一窗口30提供锐度得分及平均亮度(流明)。每一窗口 30包括多个像素。所揭示实施例通过针对每一窗口计算针对两个不同帧接收的统计数据的改变使用这些数据(锐度得分及亮度)实施运动检测。帧A的多个窗口30与帧B的多个窗口30相对应,使得窗口A1与窗口B1相对应,窗口A2与窗口B2相对应,等等。
[0015] 在常规自动聚焦操作中,针对每一窗口30计算锐度得分及亮度。这些值是窗口30的统计数据并在所揭示实施例中用于运动检测。存储于存储器中供在运动检测中使用的两个阈值为:(1)用于单个窗口的帧A、B之间(例如,A1与B1之间)的可接受改变量的阈值TH_ratio;及(2)用于窗口30的改变超出阈值TH_ratio的可接受量的阈值TH_motion_cnt。获得每一窗口30的两个帧A、B的统计数据且针对每一窗口30确定帧A、B之间的改变。然后,做出多少窗口30具有发生了大于TH_ratio阈值改变的统计值的确定。如果具有发生了大于TH_ratio阈值改变的统计的窗口的所确定数目大于TH_motion_cnt阈值,那么检测到运动。
[0016] 现在,参照图1及图2更加详细地描述一个所揭示实施例。图2是图解说明根据所揭示实施例使用统计数据进行运动检测的方法205的各步骤的流程图。 [0017] 在步骤210处,获得来自帧A的统计数据阵列、来自帧B的统计数据阵列、窗口数据改变阈值TH_ratio及最大经改变窗口数目阈值TH_motion_cnt。在此实施例中,统计数据包含每一帧A、B的每一窗口30的锐度得分及/或亮度。这些输入参数预先存储在图像流处理器110(图3)内或由所述图像流处理器110确定。在步骤220处,初始化运动计数器motion_cnt,例如将其设定为0。在步骤230处,如等式(1)中所示计算第一窗口的相对差值D1:
[0018] (1)Di=|Ai-Bi|/max(Ai,Bi),
[0019] 其中Di是窗口i的差值,Ai是帧A的窗口i的统计数据的值,Bi是帧B的窗口i的统计数据的值,且max(Ai、Bi)是帧A及帧B的窗口i的统计数据值中的较高者。 [0020] 应注意,所揭示实施例可仅使用锐度得分的改变或可仅使用平均亮度(流明)的改变或可使用来自这两个统计值的结果来操作,可在做出关于运动的决定时组合所述两个统计值。如果将使用所述两个统计值的组合来做出关于运动的决定,那么将Di确定为锐度得分及平均亮度中的每一者的绝对值的和除以锐度得分及平均亮度中的每一者的最大值的和。
[0021] 在步骤240处,如果D1大于窗口数据改变阈值TH_ratio,那么在步骤250处递增计数器motion_cnt,如等式(2)中所示:
[0022] (2)如果Di>TH_ratio,那么motion_cnt=motion_cnt+l,
[0023] 否则,计数器motion_cnt不改变。
[0024] 在步骤260处,做出关于窗口i是否是帧的最后窗口30的确定。如果窗口i不是最后窗口(例如,i不等于Nwin),那么在步骤270处递增i并在步骤230处再次使用等式(1)计算下一差值(Di)。如果需要在步骤250处使用等式(2)递增计数器 motion_cnt,且再次递增i直到已针对帧中的所有窗口计算了Di为止。一旦已针对每一窗口30计算了差值,那么在步骤280处做出是否曾存在运动的确定。根据等式(3)做出此确定: [0025] (3)如果motion_cnt>TH_motion_cnt,那么M=1,否则M=0; [0026] 其中M=1(真)对应于检测到运动且M=0(假)对应于未检测到运动。 [0027] 所揭示实施例使用已收集于成像器内供在其它图像处理功能中使用的统计数据(例如,焦点)。所揭示实施例的方法提供额外益处在于添加运动检测特征的成本由于所述方法将已存在于图像流处理器110内的信息用于运动检测而为低。
[0028] 在额外的所揭示实施例中,可通过针对不同窗口使用不同权数来加权运动检测,使得帧的某一部分的改变比所述帧的不同部分的改变更重要。举例来说,如果期望在图像的比周边部分中更敏感的中心部分中进行运动检测,那么所述帧的中心处的窗口将被赋予比周边处的窗口更高的权数。可根据等式(4)计算经加权的运动得分:
[0029]
[0030] 其中Motion_score表示图像中的总运动量(且类似于motion_cnt),Motioni是表示在成像器阵列的特定窗口i中感测到的运动量的变量,Weighti是赋予窗口i的权数,且Nwin是窗口的总数目。Motioni在统计数据的改变大于窗口i的阈值TH_ratio的情况下被设定为等于1,且在相反的情况下为等于0。
[0031] 一旦计算出Motion_score,便将其与预定义的阈值TH_motion_cnt进行比较。如果Motion_score大于TH_motion_cnt,那么检测到运动。如果Motion_score小于TH_motion_cnt,那么未检测到运动。
[0032] 图3图解说明根据所揭示实施例构造的单芯片系统(SOC)成像器的框图。所述单芯片系统可使用CCD、CMOS等任一类型的成像器技术。所述单芯片系统还包含所揭示实施例的运动检测能力。
[0033] 成像器100包括传感器核心200,其与连接到输出接口130的图像流处理器110通信。传感器核心200可包含像素阵列。锁相回路(PLL)244用作传感器核心200的时钟。负责图像及色彩处理的图像流处理器110包含内插线缓冲器112、抽选器线缓冲器114及色彩处理管线120。色彩处理管线120包含统计引擎122。图像流处理器110的功能中的一者是根据所揭示实施例的运动检测的性能。统计引擎122确定个别窗口(图1)的锐度得分及亮度值。
[0034] 输出接口130包含输出先进先出(FIFO)并行缓冲器132及串行移动行业处理接口(MIPI)输出134,特别是在移动电话环境中将成像器100用于相机中的情况。用户可通过在成像器100芯片内将寄存器设定为配置寄存器来选择串行输出或并行输出。内部总线140将只读存储器(ROM)142、微控制器144及静态随机存取存储器(SRAM)146连接到传感器核心200、图像流处理器110及输出接口130。
[0035] 所揭示实施例可由执行程序的处理器、由具有处理管线的硬件电路或由两者的组合等等作为图像流处理器110的一部分来实施。方法205可实施为计算机指令并可存储在计算机可读存储媒体上。
[0036] 所揭示实施例可实施为例如数码相机或数码摄像机的相机或其它图像获取系统的部分。图4图解说明作为(例如)采用如图3中所图解说明的单芯片系统成像器100的数码相机或数码摄像机系统800的一部分的处理器系统,如上所述,所述成像器100提供运动检测。处理系统包含处理器805(显示为CPU),其实施(例如)相机800的系统、对穿过所述系统的图像流起作用且还控制所述图像流。处理器805通过总线815与系统的其它元件耦合,所述其它元件包含随机存取存储器820、例如快闪或磁盘存储器的可拆卸存储器825、用于录入数据或显示数据及/或图像的一个或一个以上输入/输出装置810及成像器
100,所述总线815可以是链接处理器系统组件的一个或一个以上总线或桥接器。当压下快门释放按钮842时,成像器100接收对应于穿过透镜840的所捕获图像的光。 [0037] 虽然已详细地描述了所揭示实施例,但应容易地理解所述实施例并不局限于所揭示的那些实施例。而是,可修改所述实施例以并入上文中未描述的任何数目的变化、更改、替代或等效布置。