级联相机运动估计、滚动快门检测和用于视频稳定性的相机抖动检测的制作方法_3

文档序号:9333044阅读:来源:国知局
近的跟踪特征给予更小权重。这可以例如沿 帧的x和y坐标轴,使用逆高斯函数来完成。这基于接近相机帧的面和其他对象趋向相对 于帧为中心的预测。
[0072] II.A.ii.b确定有效估计运动模型
[0073] 任何给定帧对之间的跟踪特征Tt的帧间运动M河以看似估计运动模型的任何、一 些、所有或没有一个。例如,如果场景是严格非平面(例如,由于不同深度层或显著前景运 动),平移运动模型在描述运动方面不足(相对于其他运动模型,平移模型生成最少数目的 稳定伪像)。将正确(或有效)运动模型集合应用于帧间运动将稳定那些帧并且消除至少 一些不稳定,产生剩余抖动。应用不正确模型将初始不存在的失真引入相机路径和稳定视 频。
[0074] 更具体地说,如果平移模型有效,其应用的结果将是减少抖动。如果平移模型无 效,其应用的结果将是另外的抖动失真。如果相似性模型有效,其应用的结果将是引入高频 刚性晃动剩余抖动(实际上大多数透视)。如果相似性模型无效,其应用的结果将是另外的 抖动失真。如果单应模型有效,如果无滚动快门存在,其应用的结果将接近无剩余抖动,而 如果滚动快门存在,将是晃动剩余抖动。如果单应模型无效,其应用的结果将是透视扭曲误 差。如果单应混合模型有效,其应用的结果将接近无剩余抖动。如果单应混合模型无效,其 应用的结果将是非刚性波状扭曲失真。
[0075] 只要级联运动模块314已经计算用于运动模型Ft集合的参数,使运动模型与跟踪 特征Tt、Tt+1集合和帧间运动Mt拟合来确定哪一运动模型Ft有效地匹配帧间运动。通常, 如果相对于一个或多个特性,由运动模型表示的运动类型与所呈现的帧间运动匹配,相对 于帧间运动,该运动模型视为有效。这些特性表示运动模型和帧间运动之间的拟合度。特 性在运动模型之间不同。
[0076] 表1图示根据一个实施例,用于有效性评价的特性的示例集合。表1包括运动模 型、与每一运动模型有关的特性、和阈值。一些特性简单的是为帧间运动估计的运动模型的 参数。其他特性可由所估计的运动模型与跟踪特征Tt、Tt+1和帧间运动M,的拟合来得出。 与模型匹配的跟踪特征可以称为内点(inlier),以及不与模型匹配的跟踪特征可以称为外 点(outlier)。如果跟踪特征拟合所估计的运动模型在阈值容差内,该跟踪特征为内点。例 如,如果运动模型预测跟踪特征Ttil的运动Mtil在1. 5像素的精度内,则将该跟踪特征视为 内点。
[0077] 在一个实施例中,如果单一特性不满足其对应的阈值,该运动模型无效。在其他实 施例中,为确定运动模型是否有效,可以定义其他特性、阈值和需求。
[0078]
[0079] 关于平移特性,跟踪特征的数目是跟踪特征内点的总数目。平移大小是由平移模 型估计的帧间运动的量。这可以例如由运动模型的平移大小参数确定。基于帧之间的跟踪 特征的单个平移,可以确定平移的标准偏差。基于相对由一个或多个在前帧对(例如5个 在前帧对)的平均像素偏移的中值的一对帧之间的跟踪特征的平均像素偏移,可以确定加 速。
[0080] 关于相似性特性,跟踪特征的数目与平移模型相同。通过在每一特征周围放置具 有固定大小的盒并且通过使所有盒联合,确定作为帧面积的百分比的特征覆盖范围。盒的 联合内的面积与总帧面积相比较来确定特征覆盖范围。可以分别基于相似性模型的缩放变 化和旋转参数,确定缩放变化和旋转特性。
[0081] 关于单应特性,缩放变化和旋转特性的变化与相似性模型相同。单应特性也可以 包括可以基于与单应模型的透视参数的变化而确定的透视特性。用于透视特性的阈值基于 每归一化、无单位并且可以是例如值4X10 4。网格覆盖范围特性表示由内点跟踪特征覆盖 的帧的量的计算。通过在帧对的跟踪特征上覆盖网格(例如,10X10),确定网格覆盖范围 特性。对网格的每一单元(或仓),确定该仓在内点还是外点的得分。仓得分基于仓中的跟 踪特征相对于单应模型是内点还是外点,并且基于仓中的跟踪特征的权重 Wl,尤其基于仓 中的跟踪特征的特征加权的中值bj。在一个实施例中,仓j的得分基于下述确定:
[0082]
[0083] 其中,a和1^是用于逻辑回归评分函数的缩放因子。网格覆盖范围Gt是所有仓得 分的平均值,使得:
[0084]
[0085] 如果Gt太低,网格覆盖范围特性太低(例如,低于仓的30% ),并且由此该单应模 型视为无效。
[0086] 关于单应混合特性,块覆盖范围特性与上述的网格覆盖范围特性类似。其中,代替 单一每帧网格覆盖范围得分,混合物的每一块指定其自己的块覆盖范围得分。具体地,对位 于跟踪特征上的1X10网格,每一仓(总共10个仓)对应于块中的一个。每一块由此覆盖 帧中的多个扫描线。基于跟踪特征的加权和它们是否是内点,对每一仓/块,确定得分。如 果其覆盖范围低于阈值,例如40%,将该块视为外点块。相邻外点块特性指示作为外点的相 邻块的数目。如果太多为外点,该特性无效。空块特性指示具有很少(例如,低于阈值)或 无跟踪特征的块的数目。如果太多块具有太少跟踪特征,不足的数据可用来完全验证单应 混合,并且因此,将该单应混合模型视为无效。
[0087] 为流水化运动模型的估计,估计运动模型,并且按有序顺序,从平移模型开始并且 增加D0F的数目,相对于帧间运动评价有效性。如果平移模型被确定为有效,考虑相似性模 型。如果相似性模型被确定为有效,考虑单应模型等等。在任何点,如果模型被确定为无效, 停止该过程并且将认为有效的在前模型用作用于那一帧的相机路径的一部分。如果无运动 模型有效,使用假定相机路径不移动的的身份运动模型(例如,不执行稳定化)。该流水线 有效,因为通常如果较低D0F运动模型无效,很可能较高D0F运动模型也将无效。
[0088] II.B相机路径分析
[0089] 相机路径分析模块320从运动估计模块310接收跟踪特征和有效估计运动模型。 通常,相机路径分析模块320使用这些输入来解决在比在帧间时间跨度更长的时间跨度上 出现的稳定问题,例如,在视频的上百毫秒至几秒上出现的稳定问题。相机路径分析模块 320通过逐帧改变认为有效的估计运动模型,并且通过标记呈现特定特性的帧,执行校正。 在一个实施例中,相机路径分析模块320包括无效传播模块322、滚动快门校正模块324以 及覆盖和模糊校正模块326。
[0090] II.B.i无效传播
[0091] 无效传播模块322被配置成为临时稳定性,为了时间稳定性平滑在帧的较长延伸 上的相机路径,并且是用于执行该功能的一种装置。这基于不稳定通常发生在多对帧而不 是两个帧之间的假定。例如,如果在t_l的最尚D0F有效运动模型是单应混合模型,在t,其 是相似性模型,并且在t+1是单应混合模型,其不太可能导致t的较高D0F模型的无效仅发 生在帧时间t和时间t+1的帧之间的两个帧时间跨度内。
[0092] 为平滑相机路径,在给定帧对的最高D0F有效模型的D0F的数目传播到多个临近 帧对。使用上述例子,在时间t的最高D0F有效模型可以是相似性模型。对多个(例如3) 在前和在后帧对,(例如t±l、t±2和t±3),无效传播模块322将那一在前或后续时间的 最高DOF有效模型的DOF的数目与时间t的最高DOF有效模型的DOF的数目比较。如果时 间t的D0F的数目较低,降级在前或后续时间的最高有效D0F模型(就D0F而言)来匹配 时间t的D0F的数目。继续上面介绍的示例,使用无效传播,在时间t-1和时间t+1的最高 D0F有效模型将从单应混合模型降级到相似性模型。
[0093] 在执行该传播中,仅D0F的数目传播到先前帧,在那些在前和后续时间使用的实 际运动模型是先前对具有那一D0F数目的那一帧估计的运动模型。这是因为期望每一帧对 之间的运动不同,通常显著不同,并且由此,在一个时间点计算的运动模型的参数通常将不 应用于另一帧对。另外,通常不多次执行无效传播,否则所有帧将以仍然有效的、具有较少 D0F数目的帧的运动模型结束。
[0094] 无效传播模块322的输出是不同于从运动估计模块310接收的有效运动模型集合 的设定有效的估计运动模型。
[0095] II.B.ii滚动快门校正
[0096] 滚动快门校正模块324被配置成分析跟踪特征Tt、Tt+1和帧间运动Mt来检测和校 正滚动快门失真,并且是用于执行该功能的一种装置。滚动快门校正模块324不要求来自 原始捕获相机的有关如何捕捉视频,或在拍摄期间如何移动相机的任何信息。当并非帧全 部部分由捕捉该视频的相机同时录制时,滚动快门发生。尽管这能是在单个图像捕获使用 情形下故意生成的效果,但在视频中通常是不期望的。滚动快门将导致若干不同效果,包括 晃动、倾斜、漏光和局部曝光。通常滚动快门效果由于在帧捕捉期间,在帧内对象快速移动 而发生,使得对象看起来晃动、看起来倾斜等等。
[0097] II.B.ii.a检测滚动快门
[0098] 为检测帧对之间的滚动快门效果,滚动快门校正模块324被配置成将为那一帧对 估计的单应模型Ft(2)应用于那一帧对的跟踪特征。确定多个单应内点,其中,单应内点是对 应的运动Mtil与由单应模型对那一帧对估计的运动匹配的跟踪特征i,以便在像素的阈值 数目内。例如,如果阈值为1. 5像素内,如果该对中的两个帧之间,如由所估计的单应模型 预期的x和y中的跟踪特征运动Mtil在精度的1. 5像素内,跟踪特征i为内点。在该示例 中,特征的权重^将是1/1. 5 = 0. 66667。将以相同的方式确定多个单应混合内点,除代替 单应模型Ft(2),使用单应混合模型Ft(3)外。
[0099] 将跟踪特征内点聚组成网格来确定用于单应内点和单应混合内点的单独的网格 覆盖范围。网格覆盖范围的确定与上述类似,但为下文清楚起见重复。在帧上覆盖网格(例 如,10X10)。基于帧内的坐标位置和单个仓的边界,每一跟踪特征位于一个仓中,因为仓不 重叠。对网格的每一单元(或仓),确定两个得分,单应仓得分和单应混合仓得分。单应仓 得分确定该仓是单应内点还是外点。类似地,单应混合仓得分确定该仓是单应混合内点还 是外点。每一得分基于相对于单应模型或单应混合,作为内点或外点的仓中的跟踪特征的 数目。基于仓中的跟踪特征的权重Wi,尤其基于仓中的跟踪特征的特征加权的中值bj,进一 步加权得分。在一个实施例中,基于下文,确定用于任一情形的仓j的得分:
[0100]
[0101] 其中,a和1^是用于逻辑回归评分函数的缩放因子。网格覆盖范围64是所有仓得 分的平均值,使得:
[0102]
[0103] 确定两个网格覆盖范围,单应网格覆盖范围Gt(2)和单应混合网格覆盖范围Gt(3),分 别基于它们相应的仓得分。
[0104] 通常,单应混合模型比单应模型更好地建模滚动快门。因此,通常,当存在滚动快 门效果时,单应混合具有比单应模型的网格覆盖范围匕 (2)更高的网格覆盖范围Gt(3)。在一个 实施例中,滚动快门校正模块使用滚动快门提增(boost)估计^^来检测滚动快门效果, 其中,提增rset是下述比:
[0105]
[0106] 大于1的提增^~通常表示单应混合模型正检测单应模型未捕获的一些运动(例 如滚动快门)。由此,单应混合模型被认为"提增"单应模型的响应。在一个实施例中,滚动 快门校正模块324被配置成确定响应高于提增阈值(例如1. 1、
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1