用于抖动可视性控制的双端元数据的制作方法

文档序号:11532664阅读:229来源:国知局
用于抖动可视性控制的双端元数据的制造方法与工艺

对相关申请的交叉引用

本申请要求于2014年10月2日提交的美国临时专利申请no.62/059,040的优先权,其全部内容通过引用而并入本文中。本申请还可以涉及于2015年2月23日提交的申请号为pct/us2015/017110的pct申请以及于2015年2月23日提交的申请号为pct/us2015/017110的pct申请,这两个申请的公开内容全部通过引用而并入本文中。

本公开内容涉及视频处理。更具体地,本公开内容涉及通过双端元数据来控制抖动可视性(juddervisibility)的系统和方法。

附图说明

并入本说明书并且构成本说明书一部分的附图示出了本公开内容的一个或更多个实施方式,连同示例实施方式的描述一起用于解释本公开内容的原理和实现。

图1示出了处理24fps到来的素材的一种实施方式的高级框图。

图2示出了没有眼睛运动的世界坐标(即,在跟踪眼睛运动(右半部分)的情况下的固定(左半部分)和视网膜运动)的情况下归因于平滑运动(顶部)的时间采样(底部)的失真。

图3示出了以48fps采样并且显示在48fps保持型显示器上的线段的运动。

图4示出了根据本公开内容的实施方式的用于使用24fps输入和48fps输出进行抖动减小的过程。

图5示出了根据本公开内容的实施方式的作为速度的函数的示例性映射函数。

图6至图14示出了根据本公开内容的实施方式的抖动控制的不同的可能的方法。

图15示出了根据本公开内容的实施方式的抖动控制算法的实施方式。

图16示出了用于本公开内容的方法的硬件实现的实施方式。

图17示出了与抖动控制有关的一些概念。

图18至图19示出了与抖动控制有关的映射的一些示例。

图20示出了输出时间与具有120fps输入的输入时间之间的示例性关系。

图21示出了与抖动控制有关的一些概念。

图22示出了无限帧速率示例的真实时间与显示时间之间的映射。

图23示出了具有平滑追踪对象眼睛跟踪的时间空间轨迹线以及没有平滑追踪对象眼睛跟踪的时间空间轨迹线。

图24示出了本公开内容的抖动控制的实施方式的映射时间与真实时间。

图25示出了根据本公开内容的实施方式的扩展的抖动可视性控制流程图的示例。

图26示出了根据本公开内容的实施方式的用于高帧速率图像的扩展的抖动可视性控制流程图的示例。该步骤通常由图像产生阶段的人类操作者控制(即后期产生)。

图27描述了根据本公开内容的实施方式的用于发送与抖动控制有关关的元数据的方法的示例性图。

图28描述了根据本公开内容的实施方式的用于控制抖动的方法的示例性图。

图29示出了作为视网膜照度的函数的最大频率可视性(临界融合频率,cff)的图。直线行为被称为心理物理学的ferr-porter定律。

图30至图31示出了根据本公开内容的实施方式的用于使用显示面板参数进行抖动控制的示例性方法。

图32示出了根据本公开内容的实施方式的用于使用ferry-porter定律进行抖动控制的示例性方法。

图33示出了空间时间csf函数的等高线图。

图34示出了根据本公开内容的实施方式的用于使用la-st-csf算法进行抖动控制的示例性方法。

图35示出了根据本公开内容的实施方式的用于使用逆色调映射和帧速率转换进行抖动控制的示例性方法。

图36示出了根据本公开内容的实施方式的抖动控制和逆色调映射的总体流程图。

图37示出了用于抖动控制的示例性设备。



技术实现要素:

在本公开内容的第一方面,描述了一种用计算机控制抖动可视性的方法,所述方法包括:由计算机提供至少两个输入视频帧;由例如计算机基于所述至少两个输入视频帧生成抖动元数据;以及由计算机基于所述抖动元数据向所述至少两个输入视频帧施加抖动控制。

在本公开内容的第二方面,描述了一种用计算机控制抖动可视性的方法,所述方法包括:由计算机提供至少两个输入视频帧;由例如计算机基于所述至少两个输入视频帧生成抖动元数据;由计算机提供显示信号元数据;获取输出显示参数;以及由计算机基于所述抖动元数据、所述显示信号元数据和所述输出显示参数向所述至少两个输入视频帧施加抖动控制。

在本公开内容的第三方面,描述了一种用计算机控制运动平滑度的方法,所述方法包括:由计算机提供至少两个输入视频帧;由计算机基于所述至少两个输入视频帧生成运动平滑度映射曲线;由计算机提供显示信号元数据;由计算机基于所述显示信号元数据计算所述至少两个输入视频帧的平均亮度和平均对比度;由计算机基于所述平均亮度和平均对比度计算上述阈值参数;以及由计算机基于所述运动平滑度映射曲线和所述上阈值参数向所述至少两个输入视频帧施加运动平滑度控制。

在本公开内容的第四方面,描述了一种用于抖动控制的方法,所述方法包括:被配置成接收视频帧的显示器;被配置成接收抖动相关数据的抖动控制装置;以及在显示器与抖动控制装置之间的通信装置。

具体实施方式

运动图像中的抖动可被简单地描述为非平滑运动,但是该术语也用于一般性地描述视频记录中典型的24fps的相对低的帧速率的任何结果。在本公开内容中,抖动可以可替选地被称为运动平滑度。与在真实世界中可视的运动相比,由于24fps(或其他类似的低帧频)的帧速率,一些最后所得到的失真可以被分解成四个主要分量:1)非平滑运动(颤动),2)沿着移动边缘闪烁,3)移动对象上的空间模糊,以及4)假的多个边缘。

这样的失真主要归因于相对于图像更新速率(帧速率)的高度运动以及源自空间时间混叠的结果。如本领域技术人员已知的,运动失真的可视性可以由被称为st-csf的空间时间对比敏感度函数(csf)来描述。运动中的对象相对于其周围区域的对比度可影响可视性,原因是对比度是进入st-csf的主要输入变量,其确定阈值和总体可视性。

基于视觉系统的亮度适应也影响这些失真的可视性。对于较高的亮度水平,st-csf的空间和时间带宽增大,结果所有四个分量的可视性也增大。用于电影院的新投影仪设计实现了更高的最大亮度和更高的对比度。有时,增大的最大亮度被用于提高平均亮度水平,并且其它时候它仅被用于增大对象的对比度。这两个改进都有负面的副作用,原因是它们增大了抖动的所有四个分量的可视性。遗憾的是,先前可接受的抖动水平现在可能变得令人讨厌。

换言之,针对100尼特标准动态范围显示或48尼特电影屏幕分级的内容在重新分级为扩展或视觉动态范围显示时显示令人讨厌的抖动,例如800尼特tv显示器或110尼特电影屏幕。原因在于:如心理物理实验所示,较高的亮度和较高的对比度增大抖动感知。

心理物理实验已经使用gabor和定制的对比度-频率测试模式以及真实的图像序列作为刺激研究了不同的因素如何影响运动抖动的感知。结果显示,抖动度可能与包括帧速率、运动速度、亮度、对比度、快门角度等的不同变量具有稳固的关系。存在用于抖动感知的截止帧速率:超过该帧速率,不存在抖动感知,而低于这个速率,当帧速率降低时,抖动感知却增大。因此,在相同的帧速率下,抖动感知随着运动速度、亮度和对比度的增大而增大,并且随着快门角度的增大而减小。

在许多成像应用中,改善运动质量的目标是减小上面列举的所有四个抖动分量,而可视性窗口提供了朝向这样的改进的清晰的路径。减小抖动的一种方法是在捕捉或显示阶段增大帧速率或降低空间和时间分辨率。然而,对于电影院,在某些振幅水平处,实际上期望这些分量中的一些分量,原因是它们有助于电影摄影师和电影行业中的其他专业人员通常期望的“胶片观看”。它们在使电影看起来不同于视频方面是重要的,其由于其相对较高的帧速率而具有更平滑的运动以及尖锐的运动边缘。尽管胶片观看的偏好背后的一些细节是未知的,但是已作出了以下假设:由于与电影从业者通常偏好浅景深用于调焦的事实有关的原因类似的原因,电影从业者偏好运动模糊(归因于lcd显示器工业中经常讨论的保持型模糊和平滑追踪眼睛运动相互作用)。它减少对讲故事而言不必要的可视的细节,这可以被认为是分散注意力的事物。其他理论认为,电影不应该太逼真,原因是这阻碍了观看者的想象力。第三个关键理论是,常看电影的人与胶片观看中的一些抖动分量存在着强的关联,因此胶片观看者偏好不具有更逼真的视频运动品质的电影。作为这些复杂因素的结果,需要不仅简单地消除抖动(比如通过增大捕捉和显示的帧速率,或者通过使用运动内插来增大给定源的帧速率)的方法。这样的方法必须管理抖动;即,尽管对比度和亮度水平增大,但是与传统电影类似,感知上保持期望的分量。这些抖动管理方法是本公开内容的主题。除了将抖动分量水平保持在来自电影院的先前可接受的水平处之外,本公开内容描述了以下系统和方法,所述系统和方法可以允许导演或电影摄影师控制抖动出现的方面,范围从传统观看到更自然的“视频运动”观看,包括全局和局部两者之间的各种状态。

解决运动伪影的另一种方法是通过记录过程的控制。美国电影摄影师协会提供了关于在场景中捕捉运动的准则,如“7秒规则”(对象应该花费7秒来穿过相机框架)。这些规则是针对来自传统投影仪的亮度水平和对比度而开发的。然而,考虑到新的显示技术,任何现有的内容将需要对抖动进行重新评估,并且在真实世界的生产环境中,可能不可以在内容创建期间先验地判断抖动感知的量。许多显示器具有足够高的本地帧速率,使得抖动永远不存在,并且不会自然地获得适当的胶片观看。因此,期望由导演/电影摄影师/后期产生人以及观看者对抖动的感知进行控制的半自动化处理。

掩蔽抖动的常见的后期产生方法如下。

1.降低整体画面亮度水平,直到抖动可接受为止。该方法与显示器中较高的亮度和较高的对比度的需求冲突,并且人为地限制了艺术意图。

2.添加运动模糊以在相机上伪造较长的快门,这根据运动的量和方向涂抹像素。此方法可能对场景中存在的细节产生负面影响,其中所有对象移动将丢失细节。为了避免这个潜在问题,添加了最小量的运动模糊,这可能不适用于未来的显示技术。事实上,隐藏抖动所需的纯模糊的量可能如此之大,以至于它违反物理上似是而非的相机快门,为电影添加了新的底片外观。

3.以较高的帧速率在图像之间内插,或者以较高的帧速率捕捉,其中帧与帧之间的运动减小。这种方法目前是大多数解决方案的优选模式,然而,这种方法也对场景有负面的心理影响,人们说它不再像电影一样“感觉”。该方法对于一些显示技术也可能是不可以的。

本公开内容描述了可以允许导演或电影摄影师控制抖动外观的方面的系统和方法,范围从传统外观到更自然的“视频运动”外观,包括全局和局部两者之间的各种状态。本公开内容可以提供用户可能在特定位置感知多少抖动的编码测量,并且提供仅在目标区域中添加自适应校正的方法。另外,可以对校正进行修改以保留明显的细节和电影“观看”的感知。

在于2015年2月23日提交的申请号为pct/us2015/017110题为“systemsandmethodstocontroljuddervisibility”的pct申请(‘110申请)中描述了控制低帧速率内容的抖动可视性的不同方法,例如通过全局地或局部地用可控抖动可视性使帧速率加倍。另外,提出了几种用于通过以高帧速率捕捉和显示来控制抖动的方法。在此再现来自‘110申请的几个概念以供参考。

1.无改变的帧速率处理

无改变的帧速率处理可以提供减小抖动同时保持帧速率不变的方式。图1示出了处理24fps到来的素材的一种实施方式的高级框图,并且可以是当时间内插不可能时使用的最终输出,原因是显示器被限制为24fps。在较高的输入帧速率下,将增加附加的处理以调整“电影感觉”。想象附加图像属性如特征或对象标识以增强结果。

在图1中,时刻t(110)、t-1(105)和t+1(120)处的输入图像经受时间处理(115)。视频处理(115)包括运动估计(130),其中运动矢量被估计。还针对亮度(121)和对比度(125)计算输入图像(105,110,120)之间的时间差,或者从帧到帧存在的改变量的其他度量。可通过并入更多周围视频帧来改进运动估和其它改变测量。运动估计(130)包括两组运动矢量的估计,这两组运动矢量为一组前向运动矢量和一组后向运动矢量。这些前向集合和后向集合被单独计算,并且使得能够以较高的精度计算运动估计。

运动矢量估计包括矢量方向(140)和矢量量值(135)的确定。矢量的量值(135)、亮度改变图(121)和对比度改变图(125)用于确定归一化的抖动图(145),其中每个像素的抖动值描述抖动的明显程度。该方法的简单实施方式为:使用加权方案如w0*vector_magnitude+w1*luminance_change+w2*contrast_change将每个分量求和为在0到1之间变化的单个数,其中0表示没有明显的抖动,而1对应于抖动的最大量。可以使用其他统计度量来更准确地在相互关联的输入参数之间投票。在一些实施方式中,可以针对全体像素的子集来计算抖动值。场景和显示元数据(150)也可以用于确定抖动映射(145)。例如,可以采用场景的亮度和显示器的尺寸和亮度。如本领域技术人员已知的,屏幕越大,可视的抖动越多。场景和显示元数据(150)可以影响抖动的感知。例如,感知到的抖动随着亮度的增大而增大。整体场景亮度可以在场景元数据(150)中携载并由此被用于确定抖动度。显示元数据(150)可以包括显示器的最大亮度以及显示器的尺寸,这两者都可以影响所感知的抖动。

可基于每像素抖动量(145)来计算要添加的噪声(160)。可基于抖动映射(145)缩放(155)矢量(135)的运动量值。在缩放(155)之后,基于抖动量将噪声(抖动)添加(165)至运动量值。基于抖动映射(145)测量(160)噪声。例如,抖动的量值越大,将被添加的噪声越高。

在抖动(165)之后,使用运动量值和方向来重构运动矢量(170)。此处使用抖动来指示时间偏移。基于这些运动矢量将运动模糊(175)添加至图像。基于噪声的量还添加伪胶片颗粒(180)以与原始图像混合,使得运动模糊看起来像原始捕捉的一部分。可以基于抖动的量来调整噪声幅度、大小或分布。最终的输出图像被获得(185)。在一些实施方式中,对图像的一个或更多个像素或以加权方式执行本文中描述的处理。

2.帧速率调整过程

当替选的帧速率是可能的时,通过以较高的帧速率捕捉或者以较低的帧速率内插以及以较高的帧速率显示,使得能够实现附加处理。这允许呈现具有增强的“电影感觉”,而没有强烈抖动的负面影响。可以在具有令人讨厌的抖动的区域中以较高的帧速率引入非平滑运动,使得感知到的抖动将被减小到可接受的范围但不会被消除,同时以较低的帧速率对没有过度抖动的大部分图像进行更新。因此,当以较高的帧速率被播放时,整个图像序列将保持发自内心的“电影感觉”。换言之,过度抖动在局部区域中被减小,而留下其他区域不变。最终图像的一些区域将基于较高帧速率的画面,而其他区域将基于较低帧速率的画面。

例如,给定24fps的输入,为了抵消由于显示器/投影仪亮度的增大而增大的抖动感,一个选择是增大帧速率。可以通过心理物理实验来模拟所需的帧速率的增大,其可以有效地减小由亮度引起的相同量的增大的抖动。然而,可调节的帧速率范围可以被限制在24fps与48fps之间,因为在48fps处通常没有被感知到的抖动。虽然以48fps以下的任意帧速率内插24fps序列并且以该任意帧速率显示它可能是不切实际的,但是当帧速率转换和显示技术发展时这可能更实用。该解决方案的形式描述可以是:考虑到针对第一显示亮度分级的24fps场景/图像序列,找出最优的第二帧速率,使得在将帧速率从24fps转换为该第二帧速率之后,在具有第二显示亮度的输出显示器上回放的内容将具有与在具有第一显示亮度的显示器上播放原始24fps内容时的感知的抖动相同量的感知的抖动。

更实际地,显示器和投影仪通常可用于48fps、60fps和一些其它标准帧速率。在此情况下,如果适当地进行时间内插,则使用帧速率转换可以消除所有抖动感知,原因是在这样的高帧速率下看不到抖动。

一种可能的方法尝试识别具有过度抖动的区域,并且仅以较高的帧速率更新这些区域,同时保持其它区域以较低的帧速率回放。与将画面的每个部分更新为较高的帧速率的方法相比,该方法显示出改善的结果,原因是:尽管在具有过度抖动的区域中消除了抖动,但是在大多数区域中保持抖动感觉。

可以应用如本文中描述的解决方案以将过度抖动减小到可接受的水平,以当以较高的帧速率回放24fps内容时保持感知的抖动。例如,可以以较高的帧速率引入局部可变的非平滑运动,以引入局部可控的抖动感觉。利用这种能力,在具有过度抖动的区域中可以打开适当量的抖动。也可以在其他区域中打开抖动到在24fps的完全的可能抖动量,并且确保抖动感觉在空间和时间上平稳改变。在下文中用48fps的示例性输出帧速率来说明本文中描述的方法,然而本领域技术人员应当理解的是,其他输出帧速率也是可以的。

可通过根据例如以下文献的边缘抖动来说明人类对来自平滑运动对象的抖动感知:j.larimer等,“judder-inducededgeflickerinmovingobjects”,在sid中,2001年,其公开内容通过引用而整体包括在本文中。

图2示出了与抖动控制有关的一些概念。在图2中,假定线段在屏幕上从左向右移动并且观看者正在利用平滑追踪眼睛运动(spem)跟踪线段。顶行(205,210)示出了实际生活中的线(225,230)的空间时间轨迹,即连续域,而底行(215,220)示出了当顶行(205,210)以24fps被采样并且在保持型显示器上被回放时它的空间时间轨迹。

在图2中,在左侧(205,215)处,空间位置在世界坐标中表示,而在右侧(210,220)处,位置在观察者的视网膜的坐标中用spem表示。中心线(225,230,235,240)示出了当观察者正在跟踪对象时眼睛注视的空间时间轨迹。因此,面板(205)示出了从左向右移动的线段,并且在面板(210)中示出了视网膜坐标中的该移动。当在保持型显示器上对运动的线进行采样和重构时,可以在面板(215)中看到楼梯踏步状轨迹。当在观察者正在跟踪对象时在视网膜坐标中表示该轨迹时,可以在面板(220)中的空间时间轨迹中看到锯齿状边缘。因此,在线段的边缘处,可以看到运动模糊,颜色从背景颜色斜上升到线颜色。同时,也可以看到闪烁,原因是帧速率为24fps,频率方式低于临界融合频率(cff)。闪烁和运动模糊通常在24fps回放中被视为抖动。在面板(220)中,锯齿形状的深度被标记为x(245),其是线段的每帧的位移,即线段的速度。根据心理物理实验,已知感知的抖动量值与运动速度正相关,因此感知的抖动将在x增大时增大,而在x减小时减小。

图3示出了如果线段的运动以48fps被采样并且被显示在48fps的保持型显示器上时所发生的。在图3中,顶行(305,310)示出了在保持型显示器(305)上并且在用spem(310)正观看显示器的观看者的视网膜上的平滑运动的线段的空间时间轨迹。如在(310)中可以看到的,边缘闪烁比图2的(220)中的边缘闪烁小得多,原因是位移是大约一半的值,更重要的是,频率是48fps,其接近cff。在实践中,可以用较少的运动模糊来观察更清晰的图像,并且通常没有边缘闪烁。

因此,如果用帧速率控制(frc)将输入24fps内容内插到48fps内容,其中内插的帧在时间上位于t+0.5处,则将不会感知到抖动。这不一定是有利的,原因是预期目的是减小过度的抖动而不是消除抖动。

图2和图3还示出了用帧速率控制(frc)将24fps处的输入内容内插到48fps内容的结果,其中内插的帧在时间上位于t+0.5处。

在图3中,底行(315,320,325,330)示出了具有以48fps的非平滑运动的从左向右运动的线段的空间时间轨迹。具体地,线段(335)在第一半(316)的小间隙内以及在24fps周期的第二半(317)的大间隙内向左运动。当眼睛正跟踪运动时,中心线(335,340)保持与顶行(305,310)的线(345,350)相同。换言之,(315)也可以被解释为24fps输入内容到48fps内容的内插,其中内插的视频帧在时间上位于t+dt处,其中dt<=0.5。因此,(315)也可以被解释为24fps输入内容到48fps内容的内插,其中内插的帧在时间上位于两个连续视频帧之间的时间dt处,其中dt=x1/(24x)秒。

在图17中还可以更详细地看到第一半部(316)的小间隙和第二半部(317)的大间隙,如x1(1705)和x2(1710),其中x1+x2=x。

再参照图3,当(315)中的空间时间轨迹在观看者的视网膜上表示为(320)中的轨迹时,(320)中的轨迹可以分解为两个分量:24fps分量(325)和48fps分量(330)。分量(325)非常类似于图2的(220)中的轨迹,其将被感知为抖动,而图3中的分量(330)非常类似于(310)中的轨迹,该轨迹示出了无抖动。图3中的(325)与图2中的(220)之间的差异在于:(325)中的位移x(355)小于(220)中的位移x(245),原因是x(355)=x2-x1=x(245)-2*x1。位移x(335)也可以被称为x’。图2和图3不相对于彼此成比例,因此图2和图3中的位移x(355,245)的相对长度可能看起来不同于本文中所陈述的。基于上述分析,较小的位移x(355)对应于较慢的运动速度,因此导致较小的抖动。同时,分量(330)将不具有抖动,原因在于它是48fps,并且与(310)相比具有甚至更小的运动速度。总体上,与(310)相比,视网膜上的空间时间轨迹(320)将显示减小的抖动。

(320)中的位移是(325)中的位移(355)和(330)中的位移的总和。因此,位移(355)将小于(320)中的位移。

位移x(355)是可控的,原因在于它可以在不同的时间位置dt处内插48fps流的中间帧。计算内插位置dt的公式为

如果dt=0(并且x’=x)或者dt=1,则可以获得与图2中的(220)相同的效果。如果dt=0.5(并且x’=0),则可以获得与图3中的(310)相同的效果,其中无抖动。对于0和1之间的其他值(0和x之间的x’值),所感知的抖动度可以在dt=0和dt=0.5的两种情况之间被控制到期望的程度。非平滑运动也可以通过在dt’=1-dt处的内插来获得,其将具有与dt处的内插相同的抖动量。

在一些实施方式中,选择dt<=0.5用于抖动减小,而0.5的另一侧上的值将具有类似的效果。相同的技术可以用于引入对有机高帧速率内容的抖动感知,其中可以以非平滑运动注入抖动。

对于具有24fps输入和48fps输出的抖动减小,可以用图4所示的图来实现算法。可以生成(430)内插位置图m(425),使得对于每个像素(x,y),该像素将在以下时间位置处被内插:dt=m(x,y)。

在本实施方式中,输出的帧速率是输入的帧速率的两倍。为了简化,每个输入帧(405)可以直接拷贝为输出帧(410),并且可以在每对相邻的原始输入视频帧之间(455)内插一个帧以获得输出帧(460)。

可以对帧进行分析(440)以确定其包含多少抖动。在一种实施方式中,可以如在图1中描绘的抖动控制处理中所讨论的那样来执行抖动分析(440)。参照图4,在另一种实施方式中,接下来讨论替选抖动分析技术。

为了获得内插帧,首先使用输入视频帧(405)来估计(415)每个像素的运动矢量场(420)。对于每个像素(x,y),获得前向运动矢量mvf(x,y)和后向运动矢量mvb(x,y)。基于这两个运动矢量,可以通过比较前向运动矢量和后向运动矢量来定义像素(x,y)的时间运动一致性ct(x,y),并且可以通过将前向运动矢量和后向运动矢量与其相邻的像素进行比较来定义空间运动一致性cs(x,y)。另外,可以使用每个像素(x,y)的前向运动矢量mvf(x,y)来找到下一帧中对应的像素(x’,y’),使得可以将像素mvf(x,y)的前向运动矢量与其在下一帧中的对应像素的后向运动矢量即mvb(x′,y′)进行比较,以确定前向运动一致性cf(x,y)。

类似地,可通过将像素的后向运动矢量mvb(x,y)与其在其先前帧中的对应像素(x”,y”)的前向运动矢量即mvf(x″,y″)进行比较来确定后向运动一致性cb(x,y),其中对应像素(x”,y”)由像素(x,y)的后向运动矢量mvb(x,y)来确定。在一种实施方式中,这些运动矢量一致性被定义为运动矢量的总和的量值除以运动矢量的平均量值。例如,

其中|u|是u的量值。在一种实施方式中,可以针对每个像素(x,y)将修改的运动幅度m(x,y)定义为前向运动量值乘以前向运动一致性和后向运动量值乘以后向运动一致性中较大的那一个。该经修改的运动量值进一步乘以时间运动一致性,例如,

s(x,y)=max(|mvf(x,y)|*cf(x,f),|mvb(x,y)|*cb(x,y))*ct(x,y).

将高斯滤波器应用于该修改的运动量值s以获得运动速度s’的平滑映射。实际上,像素(x,y)的映射内插位置m(x,y)将由运动速度s’(x,y)来确定。该映射的内插位置也可以基于抖动分析结果来修改,并且可以通过用户交互来控制。例如,后期产生的用户(435)可以确定场景的哪个部分包括过度的抖动,并且可以调整位移映射,使得结果将包括适当的抖动。

在一种实施方式中,可以基于之前获得的平滑的运动速度s’来计算内插映射m(425)。例如,如图5所示,像素(x,y)的运动速度s’(x,y)与内插位置m(x,y)之间的关系可以是两个速度阈值t1和t2之间的软切换函数,其中最小内插位置为0,最大内插位置为0.25。

在图5中,t1(505)和t2(510)是速度阈值,而m(x,y)=0(515)是最小内插位置,m(x,y)=0.25(520)是最大内插位置。

给定一对原始输入视频帧和内插位置映射m,可以在每个像素(x,y)处应用标准的帧速率转换方法,以获得在相应内插位置m(x,y)处的内插结果。还可以基于运动估计结果来模拟运动模糊,其中在一种实施方式中,运动模糊的量与内插位置成比例,即,内插位置离其最近的原始输入视频帧越远,越多的运动模糊被施加。可以例如通过沿着运动方向应用箱式滤波器或高斯滤波器来获得运动模糊。在另一实施方式中,通过对第一输入帧与内插的帧之间的采样视频帧进行平均来模拟运动模糊。在此情况下,可以首先计算所有采样的内插视频帧,并且基于内插位置映射m对每个像素求平均。

对于上述实施方式的抖动管理方法,存在几种应用场景。首先,作为用于后期产生的工具,工作室可以以48fps直接生成去抖动的输出内容,然后内容将由兼容的投影仪回放。后期产生处理还可以为数字电影投影仪生成具有实时去抖动的元数据。元数据还可以用于指导消费者设备中的frc。元数据可以采用多种形式,包括用于哪个场景需要抖动减小的指示符以及定义如何生成特定场景的内插位置映射的参数映射函数。

本公开内容中描述的方法还可以直接应用于投影仪和消费者设备两者,用于实时全自动抖动减小。本公开内容描述了可以在硬件设备如编码器、解码器、投影仪和消费者设备中实现的算法。

3.高帧速率和抖动控制处理

在与上述方法相关的一些实施方式中,可以跳过48fps或更高的流已经可用的步骤。如上假设,这可以通过内插来完成。替选地,可以通过首先用高帧速率相机捕捉内容来完成。然后,关注变为如何最佳地显示可用图像,使得呈现适当水平的抖动以保持胶片观看。

3.1使用非平滑运动来模拟抖动

主要思想是在高帧速率内容中引入非平滑运动,使得即使内容以高刷新速率被播放,其仍然将显示像抖动的感知。

可以在捕捉端、在后期产生期间或在投影仪/显示端引入非平滑运动。在下面的子部分中,将基于非平滑运动被引入高帧速率系统的位置来描述三种方法。

3.1a

在一些实施方式中,将以非平滑方式(即,在捕捉每一帧之间具有非恒定时间间隔)捕捉运动画面。以该非平滑方式捕捉的运动画面然后可以投影在以恒定的时间间隔投影连续视频帧的投影仪上。因此,所感知的内容将具有引入的非平滑运动,这在高帧速率内容的回放中提供抖动感觉。

例如,使帧索引i为i=0,1,2,...,并且每个帧被捕捉的时间记为t(i)。对于具有恒定时间间隔dt的常规捕捉,捕捉时间t(i)=i*dt,其中dt是两个视频帧之间的时间。例如,当帧速率为120fps时,dt=1/120=8.333ms。对于非平滑捕捉,可以改变视频帧的子集的捕捉时间以在时间上稍早或稍晚地移动捕捉时间(例如,对于120fps捕捉的每个第5帧,使得可以以24hz频率引入某物)。在数学上,可以设置t(i)=i*dt+δ,其中,如果mod(i,n)=0,则δ是非零,否则δ=0。如果对于120fps捕捉将n设置为5,则意味着对于每五个视频帧,在不同的时间戳处捕捉一个视频帧。这在图6中被示出。在该方法中捕捉的视频帧将仍然在显示器侧上在恒定的间隔回放中被显示。在图6中,可以看出,呈现在显示器上的第五(605)和第十(610)图像将在较早的时间处被捕捉。如果假定存在以恒定速度从左(615)向右(620)运动的对象,则在显示器上,然后对象将以恒定速度从帧1运动到帧4,在帧4和帧5之间慢下来,并且从帧5到帧6加速。这种非平滑运动将被感知为类似于抖动的一种运动伪像。

图7示出了具有180度快门捕捉的示例。对于每个第5帧,捕捉时间被移动dt的一半,即,第五帧(705)在第四帧(710)之后被捕捉。类似地,在显示侧上,捕捉的运动画面以恒定的时间间隔dt被投影。

当前的相机可能不支持在捕捉视频时改变捕捉时间。实现这里描述的实施方式的一种方式是使用能够捕捉较高帧速率的摄像机。例如,使用具有240fps和360快门度的相机,可以捕捉如图7所示的序列。

3.1b

类似于上述实施方式,可以改变投影仪系统,使得其将以非恒定时间间隔投影视频帧。图8中示出了示例。考虑到180度快门捕捉角度和显示器的全周期保持时间,可以看出每个帧的实际捕捉和显示如图9。

在该示例中,每个帧的呈现时间戳被改变。然而,该实施方式可能不被某些显示系统支持。如图10所示,该效果可以使用较高帧速率的投影仪/显示器来模拟。

例如,如图11和图12所示,上述两个实施方式可以组合在一起,以具有更加灵活的抖动感知控制。

3.1c

在一些实施方式中,捕捉时间和显示时间不改变,因此以恒定时间间隔捕捉运动画面并且以相同的时间间隔呈现运动画面。而在后处理/产生步骤中操纵所捕捉的运动画面。通常,使用在时间t2(t)处捕捉的帧在时间t处呈现帧。例如,当输入为120fps内容时,可以将时间函数设计为:

本质上,该时间函数将在每五个帧周期中重复第4帧,并丢弃原始的第5帧。该特定实施方式在图13中示出,其中第四(1305)个视频帧和第9(1310)个视频帧也用于第5(1315)个视频帧和第10(1320)个视频帧。

也可以设计其他时间函数t2(t)。不仅可以改变数字5,而且它不需要是整数。当t2(t)不是整数时,在t2(t)处不捕捉帧。在该另一实施方式中,可以使用视图内插技术来生成以下帧,所述帧模拟在时间floor(t)和floor(t)+1处捕捉的两个视频帧之间的帧。

在图14中,第四(1405)和第五(1410)捕捉的视频帧用于生成第五(1415)显示帧。视图内插的可能过程将是:首先找出视频帧之间的运动矢量,并且对内插帧中的每个像素,使用运动矢量来获得两个相邻的视频帧中的对应像素,并且基于那些对应像素以及其相邻像素来获得像素值。

3.2将24hz内容添加至高帧速率

二十四赫兹内容将是为什么我们感知到抖动的本质原因,并且这个特定频率的内容有助于抖动感知在历史中的形成。为了注入抖动,可以将24hz的内容引入到高帧速率内容中。然而,整个内容不应该被完全转换为24fps,否则将失去高帧速率的益处。

3.2a增大24hz噪声/胶片颗粒

虽然感兴趣的内容本身以高帧速率被更新,但是可以在内容的顶部添加低帧速率噪声或胶片颗粒(模拟或实际捕捉的)。可以首先使用降噪方法(1505)来降低原始高帧速率内容中的噪声或胶片颗粒,并且将对移除的噪声或胶片颗粒(1510)进行处理(1515)以生成24hz噪声或具有类似空间特性的胶片颗粒(1520)。然后可以将该24hz再生噪声或胶片颗粒(1520)添加回(1525)到高帧速率内容中。该过程可在图15中看到。

生成24fps噪声和胶片颗粒的一种方式可以是:重复使用一帧的噪声/胶片颗粒,并且对于120fps内容,将所述一帧的噪声/胶片颗粒应用于所有其相邻的五个视频帧中。因此,尽管每第五个视频帧将具有相同的噪声/胶片颗粒,但是内容本身以120fps改变。

3.2b改变原始高帧速率的24hz内容

可以通过重复改变将以24hz示出的视频帧来改变原始高帧速率内容的24hz内容。例如,对于120fps内容,可以根据其帧索引除以五的余数将视频帧分成五个不同的组。因此,每个组实际上是24hz的内容。可以改变一个或更多个组内的视频帧,因此24hz信号将被添加至原始内容中。存在许多改变内容的方式,例如,通过对组的每个帧应用空间滤波器,具有或不具有空间偏移的中心。具体地,可以使用平滑滤波器(高斯、sigma、双边等)或锐化滤波器(如非锐化掩模)来改变该组中的图像,使得其与其他组中的图像相比具有不同的特性。同时,该组中的视频帧可以基于内容本身的一些特性(例如,运动矢量)被抖动或经历非均匀变换。另外,也可以对每组高帧速率内容进行时间滤波,以添加24hz内容。

4.扩展的抖动可视性控制

上面详细描述的方法可以以不同的方式来扩展。

抖动可视性控制的扩展方法的第一示例考虑具有两个连续视频帧之间的对应时间段tin的输入帧速率rin(输入内容的帧速率),其中tin=1/rin,并且输出帧速率是具有对应时间段tout的rout(即,显示帧速率)。在上述示例中,可以应用例如针对rout=2*rin情况的方法。本文中如下扩展的方法可以用于输出帧速率不是输入帧速率的两倍的情况。

例如,第一一般化可以针对情况rout=2*n*rin,其中n=1,2,...,是自然数。在此情况下,可以将基本(base)帧速率(bfr)保持为输入帧速率,并且上面在本公开中描述的方法可以用于通过基于局部改变的位移映射dt(x,y,t)在每两个连续的输入视频帧之间内插帧来使帧速率加倍。输出将具有两倍的帧速率,即2*rin,其可以以显示速率rout显示,每个输出帧被显示n次。

如上所述,图18示出了关于以下特定情况的实施方式的示例,在所述特定情况下,n=2并且rout=4*rin,dt(x,y,t)=0.25*tin=tout。黑线(1805)表示输入视频帧,灰线(1810)是内插的视频帧。每个帧(1805,1810)被显示2tout的持续时间。

对于实施方式,当rout不是rin的偶数,tin不是tout的偶数时,保持原始输入视频帧并在每对连续视频帧之间内插一个视频帧的上述方法需要被修改。例如,可以在与上面使用的时间位置不同的时间位置处,即在原始视频帧之间的一半处显示内插的帧。如在图19中看得见的,例如,当tin=5tout时,原始帧可以被显示等于3tout的持续时间,内插的帧可以被显示等于2tout的持续时间。

在图19中,黑线(1905)表示输入视频帧,显示3tout的持续时间,而灰线(1910)是内插的视频帧,显示2tout的持续时间。

然而,该解决方案可能引入类似于本领域中熟知的3:2下拉的伪影信号,而这可能是不期望的。

为了避免3:2下拉型伪影,可以将基本帧速率改变为接近rin的帧速率。换言之,可以找到自然数k,并且可以使bfr等于rout/(2*k),使得bfr接近rin并且仍然是抖动帧速率。

例如,如果rout=120fps,则k可以被选择为例如k=2或k=3,并且以这种方式,bfr可以等于120/(2*2)=30fps或bfr=120/(2*3)=20fps。为了简单且不失一般性,以k=2和bfr=30fps做出以下示例。如果输入帧速率rin=30fps,则可以应用上述两倍帧速率方法,并且可以以60fp用两倍帧速率获得输出信号。然后可以通过重复每个帧2次在120fps的显示器上显示输出。如果输入帧速率rin是24fps而不是30fps,则可以使用时间内插来获得所有需要的视频帧。假设例如dt=0.25*tbfr=tout,则输出时间与输入时间之间的关系可以在图20中示出,其中黑线(2005)表示输入视频帧,而灰线(2010)是内插的视频帧。

另外,由于上述方法改变了bfr,因此需要相应地改变时间位移dt,以保持相同的抖动感知。

抖动可视性控制的扩展方法的第二示例考虑如图2中描述的线段运动模型。已知视网膜图像(220)将具有抖动效果,并且(220)中的位移x(245)确定感知的抖动的量值。可布置线段来以如下方式运动:使得其在spem下的视网膜图像将具有与(220)相同的形状但具有可控位移x。

如图21所示,(2105),线段(2110)以较慢的速度向右运动时间t=1/bfr,然后向右跳跃距离x(2115)。事实上,一个帧的斜率(2110)以速度t=1/bfr向右运动。如(2120)所示,由于bfr通常足够高,因此跟踪线段的眼睛总体上仍遵循直线。视网膜上的投影轨迹在(2125)中示出,其类似于如图2的(220)的形状但用不同的x。

假定无限帧速率显示和将输入图像序列时间上内插到无限帧速率的可能性,可以获得具有与图2的(205)中的空间时间轨迹相同的空间时间轨迹的图像序列。对于该无限帧速率示例,真实时间与显示时间之间的映射可以表示为图22中的(2205)中所示的灰线(2210)。灰线(2210)可以被称为运动内插斜率。

随后,可以用对应的时间段t以基本帧速率(bfr)对无限帧速率输入进行采样,并且在bfr的保持型显示器上显示无限帧速率输入。真实时间与显示时间之间的映射将被示出为图22中的黑色线段(2215)。在上面的示例中,为了简单起见,没有考虑快门角度的影响。

随后,类似于图21,可以引入非平滑运动。亦即,可在每个时间段t中以较慢的速度回放无限帧速率输入,并且在每个t的末端处,存在向前跳跃以赶上实际的回放时间。然后,如图22所示,映射曲线将变为虚线段(2220)。在此情况下,实际上平滑运动的对象被显示为在时间段t内以较慢的速度运动,然后在下一个时间段的开始处显示为跳跃到新位置。跳跃引入将被感知为抖动的bfr的信号,而由虚线段(2220)的斜率确定的跳跃量将影响所感知的抖动度的量值。换言之,感知抖动度可被控制在两个极端之间,即,完全无抖动与在基本帧速率的正常抖动量之间。

因此,虚线段(2220)的斜率可以用作抖动控制速率(jcr)以控制输出的抖动度。当斜率等于1时,没有跳跃,因此无抖动,而当斜率等于0时,发生最大量的跳跃。该jcr具有与上述示例中的dt相似的效果,其中帧速率被加倍,然而,在本示例中,考虑了无限帧速率。

在若干实施方式中,与基本帧速率(bfr)对应的时间段t是与显示帧速率对应的周期td的倍数。例如,显示帧速率可以为120fps,bfr可以为24fps。图22示出了显示帧速率是bfr的值的五倍的实施方式的映射(2225)。线(2210)的完美采样将导致与图2中(210)中的线(230)类似的映射。

因此,假定显示帧速率足够高,则对象将仍然平滑地运动而没有任何抖动感知。对于实际的空间情况(2305)和视网膜投影情况(2310),如果使用相同的线段运动模型,则时间空间轨迹可以如图23所示。如果具有抖动感知的输入与图22中的线段(2215)类似地被采样,则获得的映射可以由如图22所示的虚线段(2230)来表示。换言之,输入图像序列可以被内插到这些离散时间戳,其中虚线(2230)被投影到竖直的真实时间轴(2235)上。线段运动模型的对应空间时间轨迹在图23中的(2315,2320)中示出。

如果bfr的时间段t是与显示帧速率对应的时间段td的值的数倍,并且抖动控制速率(jcr)表示为r,r是图22中的线(2220)的斜率,则可以将每个显示时间t的采样时间f(t)计算为:

其中,由于我们知道t是td的数倍,因此令t=ktd,我们具有

f(t)=(1-r)·n·k·td+r·m·td,

其中,并且

在实施方式中,当t不是td的值的数倍时,可以选择值,使得t′≈t其中t’是td的倍数,并且随后可以使用上面的等式来计算f(t)。可能的是,在bfr正在改变时,可能需要调整jcr以保持相同量的抖动可视性。

不需要改变bfr的另一种可能的方法可以描述如下。首先考虑无限帧速率显示,因此采样时间将遵循如图22中的倾斜线(2220)。在图24中,针对每个基本时间段t示出了倾斜线(2405)。如水平线(2410)所示,倾斜线(2405)表示无限帧速率情况,然后可以以采样率1/td对无限帧速率序列进行采样。用于倾斜线(2405)的时间映射的公式是

f′(t)=n·t+r·(t-n·t)

其中,于是关于经采样的水平线(2410)的公式为f(t)=f′(td·m),其中并且可以通过对两个等式进行组合来获得下面的公式

f(t)=(1-r)·n·t+r·m·td,

其中,并且

可以看出,如果t是td的值的数倍,即t=ktd,则将获得与关于上面在段落[0105]中描述的情况相同的公式。因此,该等式是进一步推广。

与上述实施方式类似,该jcr或r可以是空间和时间变量函数r(x,y,t),即,抖动控制速率对于不同的空间时间位置可以不同,使得抖动可视性控制可以不同地应用于不同时间处的不同区域。

总而言之,已经扩展了本公开内容中描述的抖动可视性控制方法,以能够考虑到抖动控制速率(jcr)和基本帧速率(bfr)来控制任何输入帧速率rin至任何输出帧速率rout的抖动感知。总体流程图如图25所示。

如在图25中看得见的,可以通过以下操作将上述扩展的抖动可视性方法(2515)应用于输入图像序列(2505):使用抖动控制速率处理(2510)和基本帧速率(2010),从而获得输出图像序列(2520)。

5.关于高帧速率和多帧速率的胶片观看体验

上述的扩展的抖动可视性控制方法可以应用于高帧速率(hfr)图像序列以获得胶片观看体验。高帧速率图像序列通常具有更清晰的图像和更少的运动模糊,并且与传统的24fps图像序列相比,立体高帧速率将具有更好的3d效果。然而,高帧率下的平滑运动有时被批评为“视频外观”,原因是无抖动感知。上述方法可以用于将抖动度引入高帧速率图像序列。引入的抖动度可以帮助增加内容的胶片观看体验。图26示出了用于向hfr输入内容添加胶片观看体验的图。

在此情况下,输入图像序列和输出图像序列将具有相同的帧速率,即rout=rin。例如,输入和输出都可以是48fps、60fps、120fps等。由于输入序列以高帧速率对场景进行采样,因此当其以同一帧速率rin被显示时,在输入序列中不存在抖动感知。为了引入抖动感知,第一步是选择抖动基本帧速率bfr,并且选择适当的抖动控制速率r,使得输入图像序列可以利用如参照图24描述的处理来重新采样,其中t=1/bfr,td=1/rin。如上所述,可以确定抖动控制速率jcr=r,使得当以rout回放时,可以将适当量的抖动度(即胶片观看)添加到输出图像序列中。另外,该r可以是r(x,y,t)的空间和时间变量函数。

因此,可以在后期产生结束时逐像素地控制胶片观看体验(抖动)。不同的像素在不同的时间可以具有不同的jcr。在此情况下,通常jcr函数r(x,y,t)将在镜头内局部平滑。

在简化的实施方式中,可以在后期产生结束时逐帧地控制电影观影体验。不同的视频帧可以具有不同的jcr。在此情况下,jcr函数r(t)将在镜头内局部平滑。

在一些实施方式中,还可以在后期产生结束时逐镜头地控制胶片观看体验(抖动)。不同的镜头可以具有不同的jcr,因此当有需要时,不同量的抖动度将被添加到不同的镜头。

在后期产生结束时,一种实施方式包括使用专业工具来识别需要抖动感知的局部区域。随后可以确定添加适当量的抖动所需的jcr。在下一步骤中,可以在镜头边界内在空间和时间上平滑jcr。

对于混合帧速率内容存在不同的提议,在序列中或甚至在帧内具有多个帧速率,如参考文献[2]、[3]中所述。快速运动视频帧/对象可受益于较高的帧速率,而较慢的运动视频帧/对象可以以较低的帧速率被保持。上述的扩展的抖动可视性控制方法也可应用于具有多个帧速率的这些内容。

在低帧速率视频帧/区域中,可能存在需要被减小的过度抖动,而在高帧速率视频帧/区域处,需要添加抖动感知。上述方法和下列各项可以组合在一起以控制多帧速率内容中的抖动的可视性。

6.双端帧速率转换与抖动控制元数据

可以通过将非平滑运动引入到图像序列中来控制抖动可视性。抖动可视性控制中的重要步骤之一是如上所述将输入视频帧时间上内插到期望的时间位置。这种帧内插是在显示端处的大多数帧速率控制算法中已经存在的能力。然而,当前的frc方法通常仅在规则的时间位置处内插视频帧。例如,24fps到120fps的帧速率转换将在两个输入视频帧之间在等间隔的时间位置处内插四个视频帧。这将消除内容中的任何感知抖动度。本公开内容中描述的方法可以使感知抖动度可控,从完全无抖动到在24fps的最高水平的抖动度。虽然本公开内容的方法可以通过一些基于内容的估计在显示端自动运行,但是以这种方式质量通常是不可控制的,并且将从产生结束起改变导演的意图。

保持导演的意图的一种方式将是通过可以在内容产生端确定并与图像数据一起发送的抖动控制元数据(jcm)来传达信息。然后,该jcm可以引导frc算法来内插输入内容,使得内插的输出序列将具有预期水平的抖动度。描述该方法的示例性图在图27中示出。

在图27中,提供输入图像序列(2705),并且可以基于图像序列(2705)生成抖动元数据(2710)。然后可以使用抖动控制元数据(2715)来基于帧速率控制方法(2720)执行抖动可视性控制。随后,抖动控制参考监视器(2725)可以为抖动元数据生成(2710)提供反馈(2730)。然后元数据和图像被传递到显示端上,以用于抖动可视性控制(2735)并在输出显示器(2740)处被使用。

为了控制显示端上的frc,所需的一个重要元数据是抖动控制速率(jcr),其是图22中的线段(2220)的斜率。jcr可以是0和1之间的值,并且包括0和1。frc可以基于该jcr值来内插输入序列。

例如,当抖动控制速率r=0.5时,24fps到120fps的frc可以内插四个中间位置5*n+i*r,其中i(i=1、2、3、4)是两个连续的输入视频帧之间的内插的帧索引,并且n(n=1、2、...)是输入序列的帧索引。

取决于单独的软件或硬件实现,frc算法可以具有对其可以将帧内插到的时间位置的限制。通常,对于120fps显示器,允许24fps输入,frc可能仅能够内插到5*n+k,其中k(k=1、2、3、4)是整数。在此情况下,i*r将被舍入到其最接近的整数,以利用现有的frc算法。

一个附加元数据将是基本帧速率(bfr),其对应于如上面结合图22所讨论的时间段t。大多数bfr为24fps,但是它也可以为25fps、30fps等。注意,尽管该bfr可以不同于输入内容的帧速率,但是两个帧速率也可以相同。bfr描述了与jcr耦合的输出的预期基本帧速率,或者换言之,这是后期产生端用于在视觉上验证内容的抖动控制/胶片观看体验的帧速率,使jcr的量被施加。例如,对于24fps输入,bfr也可以为30fps,可以在具有30fps的bfr的60fps的显示器上验证结果,每个周期具有两个视频帧。在显示端上使用30fpsbfr可以导致输出而不引入3-2下拉型抖动度,而frc仅能够内插到120fps的等间隔的时间位置。

即使用相同的jcr,不同的bfr也可以产生不同的抖动感知。因此,如果输出使用与对应于bfr元数据的时间段不同的时间段t,则需要相应地改变jcr以确保类似量的抖动感知。

附加元数据将包括用于控制抖动的参考显示器的显示参数。这主要是显示器的最小和最大亮度值。这些元数据的重要性在于,利用不同的参考监视器,但是具有相同的jcr和bfr,可以感知不同水平的抖动度。在显示端,元数据可以与显示器自己的参数组合以确定一组新的bfr和jcr,使得frc输出将不会在产生侧偏离导演的意图。利用该元数据,如图28所示,显示端中的处理将首先包括用于更新另外两个元数据jcr和bfr的块(2805)。

所有抖动控制元数据可以被实现为逐镜头元数据和逐帧元数据两者。只要使用同一显示器获得其他抖动控制元数据,包括显示器的最小和最大亮度的显示参数的元数据就可以实现为轨道级元数据,即,整个轨道可以共享一组单独的显示参数。

对于逐镜头元数据,产生端将确定哪个镜头需要被抖动控制,并且将元数据提供给整个镜头。如果一个镜头需要被抖动控制,则jcr和bfr都被设置为相应的非零值。如果镜头中无抖动控制,则jcr和bfr都被设置为零。

对于逐帧元数据,产生端可具有对需要被抖动控制的视频帧的微调,并且为特定帧范围而不是整个镜头提供元数据。在此情况下,元数据jcr可以在其镜头边界内被平滑,以防止镜头内抖动可视性的突然改变。如何平滑jcr将是产生端中的实施问题。因此,jcr可对于镜头逐帧改变。

即使当jcr改变时,bfr对于整个镜头仍然可以是相同的。该bfr还用作在镜头的第一帧处告知显示端在该镜头中是否存在任何抖动控制的指示。具体地,如果镜头内存在任何抖动控制,则bfr将具有从该镜头的第一帧开始的非零值。如果镜头内不存在抖动控制,则该值为零。这将有助于显示端处的算法基于frc算法的特定frc能力做出不同的决定。当显示端中的现有frc算法在内插视频帧时具有有限的能力时,可能想要应用对整个镜头中的每个帧的抖动控制,以避免抖动可视性的突然跳跃。它被留给显示端来决定:是否遵循jcr值并且舍入到最接近的可用视频帧或者是否应用对整个镜头的某种形式的抖动可视性控制。

关于镜头是否包括任何抖动控制的这种指示也可以使用单独的元数据来实现。此元数据可以是布尔型。

可以考虑能够通过内插4个等间隔的视频帧来进行24fps至120fps转换的frc的示例。在该示例中,可用视频帧处于离散显示时间t处,其中t=0,1,2,...。当用元数据bfr>0和jcr=0在显示端接收到镜头的第一帧时,显示端可以推测在该镜头中存在抖动控制,但不是从第一帧开始的。可以实现两个可能的选择:1.在镜头内的每个时间t处,显示最接近基于每个输入帧的jcr所计算的时间位置f(t)的可用帧,例如,当在一个输入帧5*n中的jcr=0.6时,以下4个视频帧将理想地为5*n+0.6、5*n+1.2、5*n+1.8和5*n+2.4,并且最近的可用视频帧将分别为5*n+1、5*n+1、5*n+2、5*n+2或者2。决定执行对整个镜头的抖动可视性控制。在此情况下,将示出不引入3:2下拉伪像的一个方案

其中,t是离散显示时间。在此情况下,有效的bfr变为30fps,并且显示器实际上显示0011、4455、8899、...的模式。其他抖动可视性控制方案也可以由显示端施加,例如,使用以24fps的bfr和一些某些范围的jcr,模式将变为00011、55566、...或00222、55777、...等,其中每个索引数被选择为所计算的映射f(t)的舍入版本。

在任一情况下,可以针对每个帧实现jcr和bfr。对于元数据,单字节字符可以具有足够高的精度。关于参考显示器元数据,其可以是基于帧的,基于镜头的,或甚至是基于内容的。例如,两个浮点型可以用于表示参考显示器的最小和最大亮度。除此之外,布尔型元数据可以是每个镜头或每个帧可选的,以指示镜头内是否具有抖动控制。

此外,即使在帧内,jcr也可以是空间变化的。它可以实现为基于区域或基于像素的。此空间变化的jcr元数据可能需要被平滑地改变以避免伪像。

7.使用视觉模型通过显示器元数据修改抖动控制元数据的显示器的使用

信号侧显示器元数据和显示器侧参数的组合可以导致对所需抖动的可视性和外观水平以及不期望的失真的更仔细的控制。这由抖动的空间时间分量的可视性取决于如由对比敏感度(即,经由csf模型)描述的信号对比度的事实激发,所述对比敏感度又取决于视觉系统的光自适应水平(如由la-st-csf建模)。例如,随着光自适应亮度增大,对较高时间频率的敏感度增大。事实上,如图29所示,它遵循与光自适应水平的对数的线性关系。图29显示在五个说明性离心率(0°、10°、22°、40°和70°)处的临界闪烁频率(cff)与对数视网膜照度的图。图29取自参考文献[3]。ferry-porter函数(直线,(2905))的拟合可以被注意到具有离心率的斜率的显著增大。信号侧显示器元数据与显示参数的相互作用允许显示器了解正在显示的信号的准确的亮度水平。

图30示出了以下高级描述:如何可以通过显示器元数据(dm)来修改抖动控制算法参数,以及抖动控制算法(3025)可以如何处理包括本质(3005)、元数据(3015,3020)、容器格式化等的整个视频信号(3010)的图像部分(3005)(称为“视频信号本质”)。在图30中,抖动控制算法(3025)由显示参数(3030)和抖动元数据(3015,3020)修改。在一些实施方式中,抖动元数据是显示器元数据(3015)。

如图31中看得见的,显示器信号元数据可以包括输入信号的最小值、中点值和最大值(3110)。显示器的参数可以包括最小和最大亮度(3115)。在处理(3105)中指示对抖动控制算法参数的改变的计算。

在下面描述使用视觉模型的两种实施方式。一种方法是直接使用ferry-porter定律,该定律描述了视觉系统的时间带宽。在图32中描述了该方法。随着显示的信号变得更亮,时间带宽根据ferry-porter定律增大,并且近似假设抖动可视性的所有方面将成比例地增大。因此,计算大约“正好可察觉的差”(jnd)、缩放因子上阈值,并且更高的jnd意味着抖动更可视并且必须相应地按比例缩小。通过改变图22中的抖动映射函数(2210)的斜率来缩小。在图32的图中,这被称为运动内插斜率(3205)。具体地,增大斜率意味着将较低的抖动分量引入到经处理的视频中。jnd也可以被称为“上阈值参数”。

如图32中看得见的,可以在应用基于ferry-porter定律(3220)的模型之前计算平均亮度(3210)和平均对比度(3215)。

使用视觉模型的第二方法是考虑类似于频率响应的整个空间时间对比敏感度函数(st-csf)。另外,如图33所示,可以使用st-csf的光自适应版本(la-st-csf)。如在图33中的模型中看到的,ferryporter定律包含在la-st-csf内,特别是时间频率边界的行为,其可以被看到随着光自适应增大而向上运动到更高的截止频率。图33示出了在六个不同的亮度自适应(la)水平1cd/m2、10cd/m2、34cd/m2、100cd/m2、500cd/m2和1000cd/m2下的新的空间时间csf的等高线图。

la-st-csf算法的使用在图34中示出。图34示出了使用la-st-csf算法来估计抖动的jnd并相应地缩放抖动控制算法的参数的示例性方法。在该实施方式中,每个帧的信号对比度、每个局部区域或每个像素以及所得到的光自适应csf被特别考虑,而不是假设由ferry-porter对所有方面进行缩放将描述可视性。csf给出特定光自适应水平的敏感度,并且由此可以计算阈值的对比度(即,jnd)。可以通过将信号对比度除以作为csf模型的输出的阈值对比度来计算输入的jnd电平。特别地,阈值是敏感度的倒数。

由于抖动的分量的可视性被理解为遵循csf,因此通过抖动控制算法将抖动的出现缩放csf的敏感度的倒数发生作用以调节显示器亮度水平(和所得到的对比度)在宽范围的抖动的出现。该调节可以通过控制运动内插斜率(2210)。

在另一实施方式中,上述方法仅应用于图像内被识别为抖动相关的区域。在该实施方式中,抖动信号对比度基于那些区域的亮度。这通过使用信号侧显示器元数据和显示参数、根据转换之后的区域的直方图来计算。8.使用逆色调映射的显示器中的抖动可视性控制

有时,具有较高动态范围的显示器将具有分级到低动态范围的输入内容,例如,蓝光盘被分级到100尼特。如例如在参考文献[6]中所解释的,当打算在100尼特显示器上显示的蓝光内容被直接输入到更高的动态范围显示器时,可以应用逆色调映射来根据显示器的能力将输入的低动态范围内容转换到适当的动态范围。在一些实施方式中,24fps内容还可以被帧速率转换为显示器的更高帧速率,例如120fps。图35示出了包含逆色调映射和帧速率转换两者的这样的显示系统的流程图。

逆色调映射可以校正静止图像的外观以匹配显示器的动态范围,通常具有增大的整体亮度和对比度。这可以同时增大显示器处的抖动感知。因此,在此可以应用抖动可视性控制,以在帧速率转换的帮助下控制增大的抖动回到原始水平的可视性。

对于抖动可视性控制,在一种实施方式中,可基于显示器帧速率来选择基本帧速率bfr,并且可由本公开内容中的上述方法基于输入内容和逆色调映射输出连同输入的目标显示(通常为100尼特最大亮度)和实际的显示器的动态范围来计算抖动控制速率jcr。图36示出了总体流程图。

在另一实施方式中,抖动控制方法仅应用于在逆色调映射之后用改变的抖动感知识别的图像序列内的局部区域,并且对那些局部空间和时间区域应用抖动可视性控制。

类似地,抖动可视性控制块将依照将改变抖动感知的显示器侧的任何后处理算法,抖动可视性控制块可估计抖动度改变的位置和量,并且试图保持与其目标显示器的输入分级内容中的抖动感知相同量的抖动感知。

图37示出了用于抖动控制的示例性设备。显示器(3705)可以包括被配置成应用本公开内容中描述的任何方法的抖动控制设备(3710)。显示器(3705)可以接收输入帧(3715),而抖动控制设备(3710)可以接收抖动控制数据(3720)如本公开内容中的上述元数据。可以将数据(3725)从抖动控制设备(3710)发送至显示器(3705),反之亦然(3730)。

在本公开内容中,可以逐镜头应用一些方法。如本领域技术人员已知的,存在描述场景切换和相机角度切割(通常在同一场景期间)的更细微水平的区别。镜头是可以包括场景切换和相机角度切换两者的术语。在一些实施方式中,本公开内容的抖动元数据方法基于场景切换,而不是基于相机角度切换。

因此,在本公开内容中,描述了方法,所述方法包括:由计算机提供至少两个图像;由计算机计算抖动映射,其中抖动映射包括所述至少两个图像的至少一个像素的抖动信息;以及基于所述抖动映射对所述至少一个像素进行处理。

至少一个像素的处理可以包括由几个像素形成的图像的区域的处理。处理可以包括:基于包括在抖动映射中的关于该像素的抖动信息,应用不同的视频处理技术和不同的技术,或者可以将具有不同参数的相同技术应用于不同像素。

图16是用于实现图1至图15的实施方式的目标硬件(10)(例如,计算机系统)的示例性实施方式。该目标硬件包括处理器(15)、存储体(20)、本地接口总线(35)和一个或更多个输入/输出设备(40)。处理器可以执行与图1至图15的实现相关的一个或更多个指令,所述一个或更多个指令如由操作系统(25)基于存储在存储器(20)中的一些可执行程序(30)提供。这些指令经由本地接口(35)被携载至处理器(15),所述指令如由特定于本地接口和处理器(15)的一些数据接口协议指定。应当注意的是,本地接口(35)是若干元件(如通常用于在基于处理器的系统的多个元件之间提供地址、控制和/或数据连接的控制器、缓冲器(高速缓冲存储器)、驱动器、中继器和接收器)的符号表示。在一些实施方式中,处理器(15)可以配备有一些本地存储器(高速缓冲存储器),其中所述一些本地存储器(高速缓冲存储器)可以存储要以一些增大的执行速度执行的一些指令。由处理器执行指令可能需要使用一些输入/输出设备(40),所述一些输入/输出设备(40)如用于从存储在硬盘上的文件输入数据,从键盘输入命令,从触摸屏输入数据和/或命令,将数据输出至显示器或者将数据输出至usb闪存驱动器。在一些实施方式中,操作系统(25)通过作为收集执行程序所需的各种数据和指令并将执行程序所需的各种数据和指令提供至微处理器的中心元件来便利这些任务。在一些实施方式中,尽管操作系统可能不存在并且所有任务都处于处理器(15)的直接控制下,但是目标硬件设备(10)的基本架构将保持与图16所示的基本架构相同。在一些实施方式中,可以在并行配置中使用多个处理器用于增大的执行速度。在此情况下,可执行程序可以被具体地定制为并行执行。此外,在一些实施方式中,处理器(15)可以执行图1至图15的实现的一部分,可以使用设置在由目标硬件(10)经由本地接口(35)可访问的输入/输出位置处的专用硬件/固件来实现一些其它部分。目标硬件(10)可以包括多个可执行程序(30),其中每个可执行程可以独立地运行或彼此组合运行。

本公开内容中描述的方法和系统可以在硬件、软件、固件或其任何组合中实现。被描述为块、模块或部件的特征可以一起(例如,在逻辑器件如集成逻辑器件中)或单独(例如,作为单独连接的逻辑器件)实现。本公开内容的方法的软件部分可以包括计算机可读介质,计算机可读介质包括当被执行时至少部分地执行所描述的方法的指令。计算机可读介质可以包括例如随机存取存储器(ram)和/或只读存储器(rom)。指令可以由处理器(例如,数字信号处理器(dsp)、专用集成电路(asic)、现场可编程逻辑阵列(fpga)、图形处理单元(gpu)或通用gpu)执行。

已经描述了本公开内容的多个实施方式。然而,应当理解的是,在不脱离本公开内容的精神和范围的情况下可以进行各种修改。因此,其它实施方式在所附权利要求的范围内。

以上阐述的示例被提供给本领域的普通技术人员作为如何做出和使用本公开内容的实施方式的完整公开内容和描述,但是并不旨在限制一个/多个发明人视为他们的公开内容的范围。

用于执行本文中公开的对本领域技术人员显而易见的方法和系统的上述模式的修改旨在在所附权利要求的范围内。说明书中提及的所有专利和出版物指示本公开内容所属领域的技术人员的技术水平。本公开内容中引用的所有参考文献通过引用而并入本文中,其程度如同每个参考文献单独地通过引用而整体并入本文中一样。

应当理解的是,本公开内容不限于特定的方法或系统,其当然可以变化。还应当理解的是,本文中使用的术语仅用于描述特定实施方式的目的,而不意在进行限制。如在本说明书和所附权利要求中所使用的,除非内容另有明确规定,否则单数形式“一个(a)”、“一个(an)”和“该(the)”包括复数指示物。除非内容另有明确规定,否则术语“多个”包括两个或更多个指示物。除非另有定义,否则本文中使用的所有技术和科学术语具有与本公开内容所属领域的普通技术人员通常理解的含义相同的含义。

以下参考文献列表中所示的本申请中的参考文献通过引用而整体并入本文中。

参考文献

[1]提交于2015年2月23日的序列号为pct/us2015/017110的pct申请。

[2]提交于2012年5月24日的pct序列号pct/us2012/039338,也公开为美国专利公开2014/0098886。

[3]美国专利no.8,363,117。

[4]watson,andrewb.,albertj.ahumadajr和joycee.farrell,“windowofvisibility:apsychophysicaltheoryoffidelityintime-sampledvisualmotiondisplays”,josaa3.3(1986):300-307。

[5]tyler,christopherw.和russelld.hamer,“analysisofvisualmodulationsensitivity.iv.validityoftheferry-porterlaw”,josaa7.4(1990):743-758。

[6]于2013年11月22日提交的序列第61/907,996号美国临时专利申请,也公开为美国专利公开号2015/077329。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1