运动补偿帧速率上调方法和设备技术

技术编号:10090117 阅读:112 留言:0更新日期:2014-05-28 13:07
描述了用一个当前视频帧、至少一个先前视频帧以及一组传输运动矢量进行视频帧内插的方法和设备。根据该组传输运动矢量,创建第一组运动矢量。确定一个中间视频帧,其中该中间视频帧包括大量相互不重叠的块。为每一个非重叠的块分配从第一组运动矢量中选出的至少一个运动矢量,以创建一组分配运动矢量。然后,根据该组分配运动矢量,创建第二组运动矢量。利用第二组运动矢量,生成一个视频帧。

【技术实现步骤摘要】
运动补偿帧速率上调方法和设备本申请是申请日为2005年05月04日、申请号为200580022318.9、专利技术名称为“运动补偿帧速率上调方法和设备”的中国专利申请的分案申请。根据35U.S.C.119要求优先权本专利申请要求享受以下申请的优先权:2004年5月4日提交的、题为“METHODANDAPPARATUSFORMOTIONCOMPENSATEDFRAMERATEUPCONVERSIONFORBLOCK-BASEDLOWBIT-RATEVIDEOAPPLICATION”的临时申请No.60/568,328;2005年3月22日提交的、题为“METHODANDAPPARATUSFORMOTIONCOMPENSATEDFRAMERATEUPCONVERSIONFORBLOCK-BASEDLOWBIT-RATEVIDEO”的临时申请No.60/664,679;这两份申请已转让给本专利技术的受让人,故明确地以引用方式并入本申请。专利
本专利技术的实施例一般涉及视频压缩,尤其涉及基于块的低比特率视频的帧速率上调方法和设备。技术背景由于有限的带宽资源和可用带宽的易变性,低比特率视频压缩在很多多媒体应用(如无线视频流和视频电话)中都非常重要。可以通过降低时间分辨率(temporalresolution)来实现以低比特率进行带宽适应性视频编码。换句话说,可以将时间分辨率减半至15fps来降低传输比特率,以代替压缩并发送一个30帧每秒(fps)的比特流。然而,降低时间分辨率所带来的问题就是引入时域赝像(artifacts),如运动抖动(motionjerkiness),这会严重降低解码后的视频的视觉质量。为了在接收端显示完全的帧速率,需要一种叫做帧速率上调的机制来重新生成漏掉的帧和降低时间赝像。已经提出很多FRUC算法,并可将其分成两类。第一类算法利用接收到的视频帧的联合体对丢失帧进行内插,而不考虑对象的运动。帧重复和帧平均法适于这一类算法。当存在运动时,这些方法的缺点包括:产生运动抖动;出现“叠影”图像;移动对象模糊。第二类算法比第一类算法要先进一些,其利用了传输的运动信息,就是所说的运动补偿(帧)内插(MCI)方法。如现有技术的图1所示,在MCI中,基于重新构造的当前帧102、所存储的前一帧104和一组传输运动矢量106,进行丢失的帧108的内插,所述丢失的帧是要内插的帧。重新构造的当前帧102包括一组非重叠的块150、152、154和156,后者与一组传输运动矢量106相关联,而这组传输运动矢量106指向所存储的前一帧104中的相应块。可以通过对当前帧和前一帧中的相应像素进行线性合并或者通过非线性运算(如中值运算)来构造针对要内插的帧108的内插帧。基于块的MCI会在要内插的帧中引入重叠区域(多个运动轨迹通过这个区域)和漏洞(没有运动轨迹通过这个区域)区域。如图3所示,要内插的帧302包括重叠区域306和漏洞区域304。产生这两类不理想区域的主要原因是:1.运动对象没有遵循严格的平移运动模型。2.由于在译码器端使用的基于块的快速运动搜索算法,MCI中所用的传输运动矢量可能并没有指向实际的运动轨迹。3.当前帧和前一帧中存在隐蔽和非隐蔽背景。重叠区域和漏洞区域的内插是传统的基于块的运动补偿方法中主要的技术难题。已提出中值模糊和空间内插技术来填充这些重叠和漏洞区域。但是,这些方法的缺点是引入了模糊和成块赝像(blockingartifacts)效应,并且还加大了内插运算的复杂性。
技术实现思路
本申请的实施例提供了一个利用当前视频帧、至少一个先前视频帧以及一组传输运动矢量来构造内插视频帧的方法和设备。在一个实施例中,该方法包括的步骤有:对该组传输运动矢量进行平滑处理;针对要内插的视频帧中每个非重叠块的中心点,定位一个运动矢量;针对当前视频帧和前一视频帧中的每个块,定位一个中心点;生成一组输出运动矢量;对该组输出运动矢量进行平滑处理;然后,利用该组输出运动矢量构造内插视频帧。在另一个实施例中,该设备包括存储有指令的计算机可读介质,当一个处理器执行所存储的指令时,使该处理器执行构造内插视频帧的方法。该方法包括的步骤有:对一组传输运动矢量进行平滑处理;对于要内插的视频帧中每个非重叠块的中心点,定位一个运动矢量;对于当前视频帧和前一视频帧中的每个块,定位一个中心点;生成一组输出运动矢量;对该组输出运动矢量进行平滑处理;然后,用该组输出运动矢量构造内插的视频帧。在又一个实施例中,所述设备包括视频帧处理器,其用来接收包含多个视频帧的输入比特流。该视频帧处理器包括:帧缓冲器,该帧缓冲器存储了至少一个先前帧和一个当前帧;运动矢量缓冲器,该运动矢量缓冲器存储了与先前帧相关联的至少一组运动矢量和当前帧对应的多个传输运动矢量;与运动矢量缓冲器和帧缓冲器相连接的第一运动矢量处理器,第一运动矢量处理器接收多个传输运动矢量以及产生首批输出运动矢量;与第一运动矢量处理器相连接的运动估计模块;模式确定模块;一个帧速率上调器。对于本领域技术人员来说,通过下面的详细描述,其它目的、特征和优点是显而易见的。但需要明白的是,下面的详细描述和具体实例虽然给出了示例性的实施例但这些只是说明性的,而不是局限性的。在不脱离本专利技术主旨的基础上,在下面描述的范围内可以做出很多修改,而且,所述描述应该理解为包括所有这类修改。附图说明通过参照附图,本专利技术将变得更加容易理解,其中:图1示出了用运动补偿帧内插值过程来构造针对要内插的帧的内插帧;图2的图形示出了分配给一个视频帧内部的像素的各种类;图3的图形示出了一个要内插的帧中的重叠区域和漏洞区域;图4是FRUC系统的框图;图5是FRUC系统中的运动矢量处理器的框图;图6示出了图4的FRUC系统执行的种子双向运动搜索;以及图7是FRUC系统的操作的流程图。在所有附图中,相同的标记表示相同的部件。具体实施方式本专利技术的实施例利用解码器中的运动估计提供了一种方法,该方法可以避免在内插帧中产生重叠区域和漏洞区域。在一个实施例中,通过把将要进行内插的帧(frame-to-be-interpolated)分割为非重叠块并给每个非重叠块分配一对运动矢量,可以降低在内插帧中存在不理想重叠和漏洞区域的几率。可以用解码器中的运动估计模块对这些运动矢量进行估计。如上所述,运动补偿帧内插算法的性能很大程度上取决于从编码器传输过来的运动矢量的精确性。传输的运动矢量可能由于以下原因并没有描述出与之相关联的运动对象的实际运动轨迹:1.在所有基于块的运动估计算法中使用的对仅仅是平移的严格成形的运动模型的假设不足以描述出自然运动的对象。2.运动估计是对计算要求很高的处理。大部分视频编码器都以降低所得运动矢量的精确性为代价,采用快速运动估计算法来提高运动估计的速度。3.如果在当前或者先前帧中有覆盖或者未覆盖的区域,则运动估计可能会得到不可靠的矢量(即,运动矢量并没有精确描述块的运动)。4.很多运动估计技术通过把差的绝对值之和(SAD)/差的平方之和(SSD)作为失真度量来实现像素匹配方法。但是,SAD/SSD是统计学上的度量,故可能无法表现出在人们视觉感官中的失真。因此,这种运动估计可能无法表现出实际的运动方向。5.很多运动估计算法是从速率最小化角度出发进本文档来自技高网
...
运动补偿帧速率上调方法和设备

【技术保护点】
至少一个处理器,实现利用一个当前的视频帧、至少一个先前的视频帧以及一组传输运动矢量进行视频帧内插的方法,所述方法包括:根据该组传输运动矢量,创建第一组运动矢量;确定一个中间视频帧,所述中间视频帧包括多个非重叠块;为每个非重叠块分配从所述第一组运动矢量中选出的至少一个运动矢量,以创建一组分配运动矢量;根据该组分配运动矢量,创建第二组运动矢量;以及,利用所述第二组运动矢量,生成一个视频帧。

【技术特征摘要】
2004.05.04 US 60/568,328;2005.03.22 US 60/664,6791.一种用于利用一个当前的视频帧、至少一个先前的视频帧以及一组传输运动矢量进行视频帧内插的系统,所述系统包括被配置为进行如下操作的至少一个处理器:通过对该组传输运动矢量执行第一运动矢量平滑操作,创建第一组运动矢量;确定一个中间视频帧,所述中间视频帧包括多个非重叠块;为每个非重叠块分配从所述第一组运动矢量中选出的至少一个运动矢量,以创建一组分配运动矢量,其中,为每个非重叠块分配至少一个运动矢量包括:确定种子运动矢量;以及基于所述种子运动矢量,执行运动矢量搜索;通过对该组分配运动矢量执行第二运动矢量平滑操作,创建第二组运动矢量;以及利用所述第二组运动矢量,生成一个视频帧。2.如权利要求1所述的系统,其中,根据该组传输运动矢量创建第一组运动矢量包括:把该组传输运动矢量划分为第一部分运动矢量和第二部分运动矢量;以及根据所述第二部分运动矢量,修改所述第一部分运动矢量。3.如权利要求1所述的系统,其中,确定种子运动矢量包括:对经过所述非重叠块的中心的运动矢量进行定位。4.如权利要求1所述的系统,其中,基于所述种子运动矢量执行运动矢量搜索包括:执行双向运动矢量搜索。5.如权利要求4所述的系统,其中,执行双向运动矢量搜索包括:在所述至少一个先前视频帧中构造一个先前视频帧搜索块;将第一搜索范围分配给所述当前视频帧的一部分;以及基于第一预定标准,在所述第一搜索范围中搜索与所述先前视频帧搜索块相匹配的第一匹配块。6.如权利要求5所述的系统,其中,执行双向运动矢量搜索包括:在所述当前视频帧中构造一个当前视频帧搜索块;把第二搜索范围分配给所述至少一个先前视频帧的一部分;以及基于第二预定标准,在所述第二搜索范围中搜索与所述当前视频帧搜索块相匹配的第二匹配块。7.如权利要求5所述的系统,其中,执行双向运动矢量搜索包括:基于所述第一匹配块,定位第一运动矢量。8.如权利要求5所述的系统,其中,所述第一预定标准基于失真度。9.如权利要求8所述的系统,其中,所述第一预定标准基于将所述失真度最小化。10.如权利要求8所述的系统,其中,所述失真度基于所述第一匹配块和所述先前视频帧搜索块之间的差的绝对值之和。11.如权利要求8所述的系统,其中,所述失真度基于所述第一匹配块和所述先前视频帧搜索块之间的差的平方之和。12.如权利要求8所述的系统,其中,所述失真度基于一个基于人体视觉系统的度量。13.如权利要求8所述的系统,其中,所述失真度基于统计。14.如权利要求1所述的系统,其中,该组传输运动矢量包括多个当前帧运动矢量和多个先前帧运动矢量。15.一种利用一个当前视频帧、至少一个先前视频帧以及一组传输运动矢量进行视频帧内插的方法,所述方法包括:通过对该组传输运动矢量执行第一运动矢量平滑操作,创建第一组运动矢量;确定一个中间视频帧,所述中间视频帧包含多个非重叠块;为每个非重叠块分配从所述第一组运动矢量中选出的至少一个运动矢量,以创建一组分配运动矢量,其中,为每个非重叠块分配至少一个运动矢量包括:确定种子运动矢量;以及基于所述种子运动矢量,执行运动矢量搜索;通过对该组分配运动矢量执行第二运动矢量平滑操作,创建第二组运动矢量;以及利用所述第二组运动矢量,生成一个视频帧。16.如权利要求15所述的视频帧内插方法,其中,根据该组传输运动矢量创建第一组运动矢量包括:把该组传输运动矢量划分为第一部分运动矢量和第二部分运动矢量;以及根据所述第二部分运动矢量,修改所述第一部分运动矢量。17.如权利要求15所述的视频帧内插方法,其中,确定种子运动矢量包括:对经过所述非重叠块的中心的运动矢量进行定位。18.如权利要求15所的述视频帧内插方法,其中,基于所述种子运动矢量执行运动矢量搜索包括:执行双向运动矢量搜索。19.如权利要求18所述的视频帧内插方法,其中,执行双向运动矢量搜索包括:在所述至少一个先前视频帧中构造一个先前视频帧搜索块;把第一搜索范围分配给所述当前视频帧的一部分;以及基于第一预定标准,在所述第一搜索范围中搜索与所述先前视频帧搜索块相匹配的第一匹配块。20.如权利要求19所述的视频帧内插方法,其中,执行双向运动矢量搜索包括:在所述当前视频帧中构造一个当前视频帧搜索块;把第二搜索范围分配给所述至少一个先前视频帧的一部分;以及基于第二预定标准,在所述第二搜索范围中搜索与所述当前视频帧搜索块相匹配的第二匹配块。21.如权利要求19所述的视频帧内插方法,其中,执行双向运动矢量搜索包括:基于所述第一匹配块,定位第一运动矢量。22.如权利要求19所述的视频帧内插方法,其中,所述第一预定标准基于失真度。23.如权利要求22所述的视频帧内插方法,其中,所述第一预定标准基于将所述失真度最小化。24.如权利要求22所述的视频帧内插方法,其中,所述失真度基于所述第一匹配块和所述先前视频帧搜索块之间的差的绝对值之和。25.如权利要求22所述的视频帧内插方法,其中,所述失真度基于所述第一匹配块和所述先前视频帧搜索块之间的差的平方之和。26.如权利要求22所述的视频帧内插方法,其中,所述失真度基于一个基于人体视觉系统的度量。27.如权利要求22所述的视频帧内插方法,其中,所述失真度基于统计。28.如权利要求15所述的视频帧内插方法,其中,该组传输运动矢量包括多个当前帧运动矢量和多个先前帧运动矢量。29.一种用一个当前视频帧、至少一个先前视频帧以及一组传输运动矢量进行视频帧...

【专利技术属性】
技术研发人员:维贾亚拉克施密·R·拉维德朗史芳
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1