用于双向预测和仿射模式的基于模板匹配的自适应运动矢量分辨率(AMVR)的制作方法

文档序号:35003975发布日期:2023-08-04 02:30阅读:27来源:国知局
用于双向预测和仿射模式的基于模板匹配的自适应运动矢量分辨率(AMVR)的制作方法

本技术描述了总体上涉及视频编解码的实施例。


背景技术:

1、此文所提供的背景技术说明以对本公开的上下文作一般性说明为目的。发明人的某些工作(即已在此背景技术部分中作出描述的工作)以及说明书中关于某些尚未成为申请日之前的现有技术的方面,无论是以明确或隐含的方式均不被视为相对于本公开的现有技术。

2、未压缩的数字图像和/或视频可以包括一系列图片,每个图片具有例如为1920x1080的亮度样本及相关的色度样本的空间维度。该一系列图片可以具有例如每秒60幅图片或60hz的固定的或可变的图片速率(也非正式地称为帧率)。未压缩的图像和/或视频具有特定的比特速率要求。例如,每样本8个比特的1080p60 4:2:0的视频(60hz帧率下的亮度样本分辨率为1920x1080)需要接近1.5gbit/s的带宽。一小时的此类视频需要600gb以上的存储空间。

3、图像和/或视频编码和解码的一个目的可以是通过压缩来减少输入的图像和/或视频信号中的冗余。压缩可以有助于减小上述带宽和/或存储空间需求,在某些情况下可以减小两个数量级或大于两个数量级。尽管本文的描述使用视频编码/解码作为说明性示例,但在不脱离本公开的精神的情况下,同样的技术可以以类似的方式应用于图像编码/解码。可以采用无损压缩和有损压缩,以及它们的组合。无损压缩是指可以从已压缩的原始信号中重建原始信号的精确副本的技术。当使用有损压缩时,已重建的信号可能与原始信号不同,但是原始信号和重建的信号之间的失真足够小,以使已重建的信号可用于预期的应用。在视频的情况下,广泛使用有损压缩。可容忍的失真量取决于应用,例如某些消费者流媒体应用的用户相比电视分配应用的用户来说可以容忍更高的失真。可达到的压缩率可以反映:更高的可容许/接受的失真可以产生更高的压缩率。

4、视频编码器和视频解码器可以利用多种广泛类别的技术,例如包括:运动补偿、变换处理、量化以及熵编码。

5、视频编解码器技术可以包括称为帧内编码的技术。在帧内编码中,在不参考来自先前重建的参考图片的样本或其他数据的情况下表示样本值。在某些视频编解码器中,图片在空间上细分为样本块。当所有的样本块都以帧内模式编码时,该图片可以是帧内图片。帧内图片及其派生方式(例如独立的解码器刷新图片)可以用于重置解码器状态,并且因此可以用作编码视频码流和视频会话中的第一张图片,或者用作静止图像。可以使帧内块的样本进行变换,并且可以在熵编码之前对变换系数进行量化。帧内预测可以是一种使预变换域中的样本值最小化的技术。在某些情况下,变换后的dc值越小,且ac系数越小,则在给定的量化步长尺寸下就需要越少的比特来表示熵编码后的块。

6、诸如在例如mpeg-2代编码技术所应用的,传统帧内编码不使用帧内预测。然而,一些较新的视频压缩技术包括基于例如周围样本数据和/或元数据尝试的技术,该周围样本数据和/或元数据是在数据块的编码/解码期间获得的。此类技术此后称为“帧内预测”技术。注意,至少在某些情况下,帧内预测仅使用来自正在重建的当前图片的参考数据,而不使用来自参考图片的参考数据。

7、帧内预测可以有许多不同的形式。当在给定的视频编码技术中可以使用不止一种这样的技术时,可以以使用特定技术的特定的帧内预测模式对使用中的特定技术进行编码。在某些情况下,帧内预测模式可以具有子模式和/或参数,其中,该子模式和/或参数可以单独编码或包括在限定所使用的预测模式的模式码字中。针对给定的模式、子模式和/或参数组合使用哪个码字可能会对通过帧内预测对编码效率增益产生影响,且用于将码字转换为码流的熵编码技术同样对其也可以产生影响。

8、h.264引入了某种帧内预测模式,并在h.265中对其进行了改进,并在诸如联合探索模型(joint exploration model,jem)、下一代视频编码(versatile video coding,vvc)、基准集(benchmark set,bms)等新的编码技术中进一步进行了改进。可以使用已经可用样本的相邻样本值来形成预测器块。根据方向将相邻样本的样本值复制到预测器块中。对所使用方向的参考可以编码在码流中,或者可以对其本身进行预测。

9、参考图1a,右下方描绘的是从h.265中限定的33种可能的预测器方向(对应于35种帧内模式中的33种角度模式)中获知的9个预测器方向的子集。箭头收敛的点(101)表示正在被预测的样本。箭头表示正在被预测的样本的方向。例如,箭头(102)指示从与水平线成45度角的右上方向的一个或多个样本中预测样本(101)。同样,箭头(103)表示从与水平线成22.5度角的样本(101)的左下方向的一个或多个样本中预测样本(101)。

10、仍参考图1a,在左上角描绘了一个4x4个样本的正方形块(104)(由粗体虚线表示)。正方形块(104)包含16个样本,每个样本使用“s”及其在y维度上的位置(例如,行索引)和其在x维度上的位置(例如,列索引)来标记。例如,样本s21是y维度上(从顶部开始)的第二个样本,以及x维度上(从左侧开始)的第一个样本。类似地,样本s44在y维度和x维度上都是块(104)中的第四个样本。由于块的大小为4x4个样本,因此s44在右下角。图中还示出了参考样本,它们遵循类似的编号方案。参考样本用r及其相对于块(104)的y位置(例如行索引)和x位置(列索引)来标记。在h.264和h.265二者中,预测样本都与正在重建的块相邻,因此,无需使用负值。

11、帧内图片预测可以通过从信号通知的预测方向所指示的相邻样本复制参考样本值来工作。例如,假设已编码视频码流包括信令(signaling),该信令针对该块指示与箭头(102)一致的预测方向,也就是说,样本是从与水平方向成45度角的右上角的预测样本进行预测的。在这种情况下,根据同一个参考样本r05预测样本s41、s32、s23和s14。然后,根据参考样本r08预测样本s44。

12、在某些情况下,尤其是当方向不能被45度整除时,可以例如通过插值来组合多个参考样本的值,以便计算参考样本。

13、随着视频编码技术的发展,可能的方向的数量已经增加。在h.264(2003年)中,可以表示九个不同的方向。这一数字在h.265(2013年)增加到33。目前,jem/vvc/bms可以支持多达65个方向。已经进行了实验以识别最可能的方向,并且熵编码中的某些技术被用来以少量的比特来表示那些可能的方向,对不太可能的方向接受一定的代价。此外,有时可以根据在已经解码的相邻块中使用的相邻方向来预测方向本身。

14、图1b示出了根据jem的65个帧内预测方向的示意图(110),以示出预测方向的数量随着时间的推移而增加。

15、表示已编码视频码流中的方向的帧内预测方向比特的映射可以根据视频编码技术的不同而不同。例如,这种映射的范围可以从简单的直接映射到码字,再到涉及最可能模式的复杂自适应方案,以及类似的技术。但是,在大多数情况下,可能存在某些方向,与某些其他方向相比,在视频内容中统计出现的可能性较小。由于视频压缩的目标是减少冗余,因此,在运作良好的视频编解码技术中,那些不太可能出现的方向相比可能出现的方向将由更多数量的比特表示。

16、可以使用具有运动补偿的帧间图片预测来执行图片和/或视频编码和解码。运动补偿可以是有损压缩技术,并且可以涉及下述技术:来自先前重建的图片或其部分(参考图片)的样本数据的块在沿由运动矢量(此后称为mv)指示的方向进行空间偏移之后,被用于预测新重建的图片或图片部分。在一些情况下,参考图片可以与当前正在重建的图片相同。mv可以具有x和y两个维度,或具有三个维度,第三个维度指示正在使用的参考图片(后者间接地可以是时间维度)。

17、在一些视频压缩技术中,可以根据其他mv来预测适用于样本数据的某个区域的mv,例如根据在空间上与正在重建的区域相邻的样本数据的另一个区域相关的、且解码顺序在该mv之前的那些mv来预测。这样做可以大大减少编码mv所需的数据量,从而消除冗余并增加压缩率。mv预测可以有效地工作,例如,由于在对从相机获得的输入视频信号(称为自然视频)进行编码时,存在以下统计可能性:比单个mv适用的区域更大的区域沿相似的方向移动,因此,在某些情况下,可以使用从相邻区域的mv导出的相似运动矢量来预测该更大的区域。这使得为给定区域找到的mv与根据周围mv所预测的mv相似或相同,进而在熵编码之后,该为给定区域找到的mv可以用比直接编码mv时使用的比特数更少的比特数来表示。在一些情况下,mv预测可以是从原始信号(即样本流)中派生出的信号(即mv)的无损压缩的示例。在其他情况下,例如由于根据多个周围mv计算预测器时出现舍入误差,mv预测本身可能是有损的。

18、h.265/hevc(itu-t rec.h.265,“high efficiency video coding(高效视频编解码)”,2016年12月)中描述了各种mv预测机制。在h.265提供的多种mv预测机制中,参考图2描述的是下文称为“空间合并”的技术。

19、参考图2,当前块(201)包括在运动搜索过程中已由编码器发现的样本,这些样本可根据已在空间上偏移的相同大小的先前块来预测。从与一个或多个参考图片相关联的元数据中导出mv,而非对mv直接编码,例如使用与被标记为a0、a1和b0、b1、b2(分别对应202到206)的五个周围样本中的任一样本相关联的mv,(按解码次序)从最近的参考图片的元数据中导出该mv。在h.265中,mv预测可以使用相邻块也正在使用的相同参考图片的预测器。


技术实现思路

1、本公开的各方面提供了视频编码和解码的方法和装置。在一些示例中,视频解码的装置包括处理电路。该处理电路被配置成从已编码的视频码流中解码当前图片中的当前块的预测信息。预测信息指示当前块是使用双向预测来预测的。处理电路可以通过确定对应于多个运动矢量分辨率(motion vector resolution,mvr)对中的每个mvr对的模板匹配(template matching,tm)代价来对该多个mvr对执行tm。每个mvr对包括:(i)与第一参考图片对应的第一多个mvr中的第一mvr,以及(ii)与第二参考图片对应的第二多个mvr中的第二mvr。每个tm代价可以至少基于当前块的当前模板的一部分以及相应mvr对的双向预测器来确定,其中,双向预测器依赖于与该相应mvr对的第一mvr对应的第一参考图片中的第一参考模板的一部分以及与该相应mvr对的第二mvr对应的第二参考图片中的第二参考模板的一部分。处理电路可以基于所确定的对应tm代价来选择mvr对。处理电路基于所选择的mvr对来重建当前块。

2、在实施例中,处理电路基于所确定的对应tm代价对多个mvr对进行重新排序,并从经重新排序的多个mvr对中选择mvr对。

3、在实施例中,当前块的当前模板的全部包括整个当前模板。对于每个mvr对,第一参考模板的全部包括整个第一参考模板,第二参考模板的全部包括整个第二参考模板。

4、在示例中,针对每个mvr对,处理电路基于具有mvr对中的第一mvr的第一运动矢量(motion vector,mv)确定第一参考模板,并且基于具有mvr对中的第二mvr的第二mv确定第二参考模板。

5、在示例中,针对每个mvr对,对应于相应mvr对的双向预测器是与相应mvr对中的第一mvr对应的第一参考模板和与相应mvr对中的第二mvr对应的第二参考模板的加权平均。

6、在示例中,针对每个mvr对,每个mvr对中的第一mvr和相应mvr对中的第二mvr相同。

7、在示例中,多个mvr对中的一个mvr对的第一mvr与多个mvr对中的该一个mvr对的第二mvr不同。

8、在实施例中,预测信息包括指示对多个mvr对执行tm的标志。

9、在实施例中,预测信息指示当前块是使用仿射自适应运动矢量预测(adaptivemotion vector prediction,amvp)模式来预测的。当前模板包括多个当前子块模板。针对多个mvr对中的每个mvr对,处理电路基于多个当前子块模板和对应的第一mv来分别确定第一参考模板中的多个第一参考子块模板。第一mv可以依赖于相应的当前子块模板的位置和当前块的仿射参数。处理电路基于多个当前子块模板和对应的第二mv来分别确定第二参考模板中的多个第二参考子块模板。第二mv可以依赖于相应的当前子块模板的位置和当前块的仿射参数。双向预测器可以依赖于多个第一参考子块模板和多个第二参考子块模板。

10、在示例中,针对多个mvr对中的每个mvr对,多个第一参考子块模板中每个第一参考子块模板中的多个样本的运动信息相同。

11、在示例中,针对多个mvr对中的每个mvr对,处理电路基于使用光流的预测细化(prediction refinement using optical flow,prof)的模式来确定多个第一参考子块模板,其中,多个第一参考子块模板中的一个第一参考子块模板中的两个样本的运动信息不同。

12、在实施例中,处理电路被配置成从已编码的视频码流中解码当前图片中的当前块的预测信息。预测信息可以指示当前块是在仿射amvp模式下使用双向预测来预测的。处理电路可以通过确定对应于多个mvr对中的每一个mvr对的tm代价来对该多个mvr对执行tm。每个mvr对包括:(i)与第一参考图片对应的第一多个mvr中的第一mvr,以及(ii)与第二参考图片对应的第二多个mvr中的第二mvr。每个tm代价可以至少基于当前块的当前模板的一部分或全部以及相应mvr对的双向预测器来确定。双向预测器可以依赖于与相应mvr对的第一mvr对应的第一参考图片中的第一参考模板的一部分或全部,以及与相应mvr对的第二mvr对应的第二参考图片中的第二参考模板的一部分或全部。处理电路可以通过基于所确定的对应tm代价选择mvr对,以对多个mvr对执行tm。处理电路可以基于所选择的mvr对来重建当前块。

13、在实施例中,处理电路被配置成从已编码的视频码流中解码当前图片中的当前块的预测信息。预测信息可以指示当前块是在amvp模式下使用双向预测来预测的。处理电路可以通过确定对应于多个mvr对中的每个mvr对的tm代价来对该多个mvr对执行tm。每个mvr对包括:(i)与第一参考图片对应的第一多个mvr中的第一mvr,以及(ii)与第二参考图片对应的第二多个mvr中的第二mvr。每个tm代价可以至少基于当前块的当前模板和相应mvr对的双向预测器来确定。双向预测器可以依赖于与相应mvr对的第一mvr对应的第一参考图片中的第一参考模板以及与相应mvr对的第二mvr对应的第二参考图片中的第二参考模板。处理电路可以通过基于所确定的对应tm代价选择mvr对,以对多个mvr对执行tm。处理电路可以基于所选择的mvr对来重建当前块。

14、本公开的方面还提供了一种非暂时性计算机可读存储介质,该存储介质存储可由至少一个处理器执行的程序,以执行视频解码的方法。

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