利用重置列表的历史运动矢量预测制造技术

技术编号:27757008 阅读:11 留言:0更新日期:2021-03-19 13:54
在一些实施方式中,一种方法选择帧中的当前块并且确定当前块是否在帧中的第一组位置中。当当前块在第一组位置中时:方法加载来自第一列表的第一组运动矢量作为历史运动矢量预测值,其中,一个或多个运动矢量来自帧中的第一组位置中的一个或多个块;并且使用第一组运动矢量来对当前块进行转码。当当前块不在第一组位置中时,方法使用来自第二列表的第二组运动矢量。

【技术实现步骤摘要】
【国外来华专利技术】利用重置列表的历史运动矢量预测【相关申请的交叉引用】本公开要求2019年8月29日提交的标题为“HistoricalMotionVectorPredictionwithResetList”的美国非临时申请号16/555,961的优先权,该非临时申请要求2018年8月31日提交的美国临时申请号62/726,121的提交日期的权益,此处为了所有目的以引证的方式将这些申请的内容全文并入。
技术介绍
在视频编码框架中,视频内容经由一组过程来压缩:预测、变换、量化和熵编码。一种预测方法是帧间预测(interprediction),该帧间预测识别相邻视频帧之间的时间冗余(temporalredundancy)。然后,帧间预测旨在去除相邻视频帧之间的时间冗余,以减少在经编码位流(encodedbitstream)中发送的位的数量。例如,当识别时间冗余时,仅需要发送相邻视频帧中的块之间的差异(difference)。为了执行帧间预测,将视频帧划分为块(blocks),并且应用基于运动矢量(MV)的运动补偿(motioncompensation)。运动补偿的一部分是选择运动矢量。运动矢量可以为指示当前块与其在相邻帧中的匹配块之间的偏移(例如在二维像素位置中)的二维值。该值可以包括水平坐标和垂直坐标中的位置偏移(positionoffsets)。运动矢量由转码器经由各种运动搜索算法生成,并发送到解码器,该解码器在解码过程中使用运动矢量。【附图说明】图1描绘了根据一些实施方式的用于执行运动预测的简化系统。图2描绘了根据一些实施方式的具有编码块的帧间编码帧。图3描绘了根据一些实施方式的用于处理当前帧的逐行光栅扫描顺序的示例。图4描绘了根据一些实施方式的当使用历史运动矢量预测时的转码器运动预测块的示例。图5例示了当对当前块C进行编码时的问题的示例。图6描绘了根据一些实施方式的在使用重置列表时对帧进行转码的示例。图7描绘了根据一些实施方式的用于将运动矢量存储在历史运动矢量预测值列表中的过程的简化流程图。图8描绘了根据一些实施方式的用于使用重置列表来将运动矢量存储在历史运动矢量预测值列表中的过程的简化流程图。图9A描绘了波前编码的示例。图9B描绘了根据一些实施方式的使用重置列表的波前编码的示例。图10描绘了根据一些实施方式的转码系统的示例。图11描绘了根据一些实施方式的解码系统的示例。【具体实施方式】本文描述了用于视频编码系统的技术。在以下描述中,为了说明的目的,阐述了大量示例和具体细节,以便提供一些实施方式的彻底理解。由权利要求限定的一些实施方式可以单独地或与下面描述的其它特征组合地包括这些示例中的一些或全部特征,并且还可以包括本文所述的特征和概念的修改和等同物。运动矢量预测的一些方法包括:空间运动矢量预测、时间运动矢量预测和历史运动矢量预测。空间运动矢量预测使用相邻块的运动矢量作为预测值;时间运动矢量预测使用相邻帧中的块的运动矢量作为预测值;并且历史运动矢量预测利用先前编码的运动矢量的列表作为预测值。相邻块的运动矢量(MV)可以彼此相似。转码器可以在运动矢量预测期间使用该特性来进一步减少用于表示经编码位流中的运动矢量的开销(overhead)。转码器可以基于以下公式执行运动矢量预测,但是可以使用其他计算:MV=MV预测值(MVP)+MV差(MVD),其中,MV是运动矢量位置,运动矢量预测值(MVP)是先前编码的运动矢量,并且运动矢量差(MVD)是转码器在经编码位流中发送的残差值。残差值可以是从运动矢量预测值到当前块的运动矢量的变化。转码器可使用对应于残差值的若干位来编码残差值。随着值的幅值上升,对残差值进行编码所需的位数量上升。由于运动矢量差的幅值应当小于原始运动矢量,因此可以减少在对运动矢量进行编码时使用的位数量。即,当转码器发送运动矢量差而不是原始运动矢量时,转码器在经编码位流中使用更少位。一些实施方式通过使用在转码过程期间被称为重置列表(resetlist)的附加列表来增强历史运动矢量预测过程。当对帧中的某些块(例如在各个编码块行(codingblockrow)的开始处的块)进行转码时,转码器可以使用重置列表。转码器可以使用双缓冲器模型来实施该过程。例如,转码器使用重置缓冲器来存储来自在各个编码块行的开始处的块的历史运动矢量预测值。当转码器对在各个编码块行的开始处的块进行编码时,转码器将这些历史运动矢量预测值插入到历史运动矢量预测值缓冲器中。所插入的历史运动矢量预测值可以更类似于在各行的开始处的块的运动矢量,如将在下面更详细地描述的。使用更相似的历史运动矢量预测值可以通过提高运动矢量预测的准确度来增强历史运动矢量预测,尤其是在各个编码块行的开始处。最后,由于历史运动矢量预测更有效,因此可以通过在经编码位流中插入更少的位来提高转码器的压缩性能。系统概述图1描绘了根据一些实施方式的用于执行运动预测的简化系统100。系统100对源视频资产进行转码,该源视频资产可以是任何类型的视频,诸如用于电视节目、影片或视频剪辑。源视频可能需要被转码成一种或多种格式,诸如以一个或多个位率的格式。在一些实施方式中,服务器系统102向客户端104发送经编码位流。例如,服务器系统102可以向客户端104发送视频以供回放。服务器系统102包括将视频转码成经编码位流的转码器106。转码器106可以是配置在中央处理单元(CPU)上的软件视频处理器/转码器、具有图形处理单元(GPU)的硬件加速视频处理器/转码器、现场可编程门阵列(FPGA)和/或在专用集成电路(ASIC)中实施的硬件处理器/转码器。转码可以是从一种数字格式到另一种数字格式的转换。转码可以涉及对源格式进行解码并将源视频编码为另一数字格式,或者将源内容转换为具有特定分辨率、帧速率、位率、编解码器等的视频。而且,编码可以是将模拟源内容转换为数字格式。如所使用的,术语转码可以包括编码。在转码过程期间,转码器运动预测块108对当前帧的当前块执行运动预测。在运动预测期间,当对当前块进行转码时,转码器运动预测块108可以生成和使用重置列表,这将在下面更详细地描述。转码器106通过网络或其它类型的通信介质将所得到的经编码位流发送到解码器112。解码器112接收经编码位流,并且解码器运动预测块110在解码过程期间执行运动预测。在运动预测期间,解码器运动预测块110可以在执行解码时生成和使用历史运动预测的列表,这将在下面更详细地描述。给定编码块(codingblock),则解码器运动预测块110将从列表中选择运动矢量预测值,并且从位流接收运动矢量差。例如,解码器运动预测块110将该差添加到运动矢量预测值以生成当前块的运动矢量。为了确保转码器106和解码器110以一致的方式工作并生成相同的视频,对转码器106和解码器110两者应用过程的以下描述。历史运动矢量预测图2描绘了根据一些实施方式的具有编码块202的帧间编码帧200。各个本文档来自技高网...

【技术保护点】
1.一种方法,包括:/n由计算装置选择帧中的当前块;/n由所述计算装置确定所述当前块是否在所述帧中的第一组位置中;/n当所述当前块在所述第一组位置中时:/n由所述计算装置加载来自第一列表的第一组运动矢量作为历史运动矢量预测值,其中,所述一个或多个运动矢量来自所述帧中的所述第一组位置中的一个或多个块;以及/n由所述计算装置使用所述第一组运动矢量来对所述当前块进行转码;以及/n当所述当前块不在所述第一组位置中时,由所述计算装置使用来自第二列表的第二组运动矢量。/n

【技术特征摘要】
【国外来华专利技术】20180831 US 62/726121;20190829 US 16/5559611.一种方法,包括:
由计算装置选择帧中的当前块;
由所述计算装置确定所述当前块是否在所述帧中的第一组位置中;
当所述当前块在所述第一组位置中时:
由所述计算装置加载来自第一列表的第一组运动矢量作为历史运动矢量预测值,其中,所述一个或多个运动矢量来自所述帧中的所述第一组位置中的一个或多个块;以及
由所述计算装置使用所述第一组运动矢量来对所述当前块进行转码;以及
当所述当前块不在所述第一组位置中时,由所述计算装置使用来自第二列表的第二组运动矢量。


2.根据权利要求1所述的方法,其中,所述帧中的所述第一组位置包括从所述帧的左侧开始的N个块。


3.根据权利要求1所述的方法,其中,所述帧中的所述第一组位置包括从所述帧的左侧开始的最左块。


4.根据权利要求1所述的方法,其中,所述一个或多个块包括在所述当前块的顶部边缘上与所述当前块相邻的块。


5.根据权利要求1所述的方法,其中,加载来自所述第一列表的所述第一组运动矢量作为历史运动矢量预测值包括:
将所述第一组运动矢量加载到所述第二列表中。


6.根据权利要求5所述的方法,其中,当所述当前块在所述第一组位置中时,所述第二列表中的运动矢量用于对所述当前块进行转码。


7.根据权利要求5所述的方法,其中,将所述第一组运动矢量加载到所述第二列表中去除了所述第二列表中的一些现有运动矢量。


8.根据权利要求1所述的方法,其中,所述第二列表存储来自在所述当前块之前顺序地转码的块的历史运动矢量预测值。


9.根据权利要求1所述的方法,其中,当对所述第一组块的外部的块进行转码时,不使用所述第一列表。


10.根据权利要求1所述的方法,还包括:
选择所述历史运动矢量预测值中的一个;
计算所述历史运动矢量预测值中的所述一个与所述当前块的运动矢量之间的差;
将所述差包括在经编码位流中。


11.根据权利要求1所述的方法,还包括以下步骤:
将所述当前块的运动矢量存储在所述第一列表中,其中,所述运动矢量可用作所述第一组位置中的另一块的历史运动矢量预测值。
...

【专利技术属性】
技术研发人员:张文豪傅德良马俊铖刘辰
申请(专利权)人:胡露有限责任公司
类型:发明
国别省市:美国;US

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

1